Моделирование объектов и процессов в металлургии
..pdfТо же самое делаем для отрезка [xi, xi+1]. Получаем wi+12 ≈ ai+1 ui+1h−ui .
Подставим полученные выражения в уравнение (4.5), получим разностное уравнение, содержащее значения искомой функции в точках xi, xi±1:
1 |
|
u |
i+1 |
−u |
i |
|
u |
i |
−u |
i−1 |
|
|
|
|
ai+1 |
|
|
− ai |
|
|
|
− diui + ϕi = 0 . |
(4.8) |
||||
h |
|
h |
|
|
|
h |
|
||||||
|
|
|
|
|
|
|
|
|
|
Полученное уравнение по своему построению является разностным аналогом основного дифференциального уравнения (4.2). Записывая уравнение (4.8) во всех точках сетки, в которых оно определено, т.е. при i=1, 2, …, N–1, получим систему из N–1 линейных алгебраических уравнений с N+1 неизвестными u0, u1, …, uN. Два недостающих уравнения получим путем аппроксимации граничных условий (4.3). Одним из уравнений является условие u (N )= µ2 , второе получаем также интегроинтерполяционным ме-
тодом. Для этого проинтегрируем основное уравнение (4.2) по отрезку [0, x0,5], где x0,5=0,5h:
|
x1 |
x1 |
|
|
w1 |
− w0 − ∫2 |
q(x)u (x)dx + ∫2 |
f (x)dx = 0 . |
(4.9) |
2 |
x0 |
x0 |
|
|
Считая, что
wi−12 ≈ ai ui −hui−1 ,
при i=1 получим
w1 ≈ a1 u1 −u0 .
2 h
Выражение для w0 следует из граничного условия при x=0: w0 = −µ1 +βu0 .
71
elib.pstu.ru
Полагаем, что
x1 |
x1 |
∫2 q(x)u (x)dx = u0 ∫2 q(x)dx ,
x0 |
x0 |
а
x1
d0 = 0,51 h ∫2 q(x)dx ,
x0
x1
ϕ0 = 0,51 h ∫2 f (x)dx .
x0
Подставим полученные выражения в (4.9), получим разностное уравнение
a |
u1 −u0 |
−βu |
0 |
+µ |
1 |
−0,5hu |
0 |
d |
0 |
+ 0,5h |
|
|
|||||||||||
1 |
h |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
или
−a1 u1 −h u0 +u0 (β+ 0,5hd0 )= µ1 + 0,5hϕ0 .
Из этой записи видно, что полученное уравнение является разностным аналогом граничного условия.
Решение дискретной задачи будем обозначать yi = y (xi ). Запишем получившуюся разностную схему для задачи (4.2)–(4.3):
1 |
y |
i |
+1 |
− y |
i |
|
|
y |
i |
− y |
i−1 |
|
|
|
|
|
|
|
|
|
|
|||
|
ai+1 |
|
|
− ai |
|
|
|
|
− di yi + ϕi = 0,i =1,2,L, N −1, |
|||||||||||||||
h |
|
|
|
h |
|
|
|
|
h |
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
−a |
|
|
u1 −u0 |
+u |
0 |
(β+ 0,5hd |
0 |
)= µ |
1 |
+ 0,5hϕ, y |
N |
= µ |
2 |
. (4.10) |
|||||||||
|
|
|
|
|||||||||||||||||||||
|
|
1 |
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72
elib.pstu.ru
Аппроксимация, устойчивость и сходимость разностной схемы
Краевая задача
|
|
|
|
|
|
|
(k(x)u′(x))′ − q(x)u (x)+ f (x)= 0; 0 < x < l , |
(4.11) |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
−k (0)u′(0)+βu (0) = µ1; u (l )= µ2 , |
|
|
(4.12) |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k(x)≥C1>0, β≥0, |
|
|
|
|
|
|||||
для которой методом баланса построена разностная схема |
|
||||||||||||||||||||||||
|
1 |
|
y |
i+1 |
− y |
i |
|
|
y |
i |
− y |
i−1 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
ai+1 |
|
|
− ai |
|
|
− di yi + ϕi |
= 0, i =1, |
2, |
L, N −1(4.13) |
||||||||||||||
|
|
|
|
h |
|
|
|
h |
|
||||||||||||||||
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
−a |
1 |
u1 −u0 |
+u |
0 |
(β+ |
0,5hd |
0 |
)= µ |
1 |
+ |
0,5hϕ, y |
N |
= µ |
2 |
. |
(4.14) |
||||||
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
h |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Обозначим
Lu (x)= (k (x)u′(x))′ − q(x)u (x)+ f (x)
и
|
1 |
|
y |
i+1 |
− y |
i |
|
y |
i |
− y |
i−1 |
|
|
Lh yi = |
|
ai+1 |
|
|
− ai |
|
|
|
− d i yi + ϕi . |
||||
|
|
h |
|
|
|
h |
|
||||||
|
h |
|
|
|
|
|
|
|
|
Разностную задачу запишем как |
|
Lh yh (x)= ϕh (x), x ωh , |
(4.15) |
lh yh (x)=χh (x), x γh , |
(4.16) |
где yh (x) – решение приближенной разностной задачи, |
ϕh (x)S и |
χh (x) – функции, полученные в результате замены входных дан-
ных задачи (1) и (2), ωh – множество внутренних узлов, |
γh – мно- |
жество граничных узлов. |
|
Обозначим через zh погрешности сетки (4.15), (4.16): |
|
zh = yh −uh . |
(4.17) |
|
73 |
elib.pstu.ru
Разница между точным и приближенным решениями в узлах сетки называется погрешностью. Подставим (4.17) в разностную схему (4.15), (4.16). Предполагая, что Lh и lh – линейные операторы, получим для zh задачу (4.18), (4.19):
Lh zh (x)= ψh (x), x ωh , |
(4.18) |
lh zh (x) = νh (x), x γh , |
(4.19) |
где ψh (x) и νh (x) – погрешности аппроксимации решения u(x) раз-
ностной схемой основного уравнения и дополнительных условий. Будем говорить, что Lh аппроксимирует L с порядком m>0 в
точке x, если
ψ(x)= Lhu (x)− Lu (x)= O( |
|
h |
|
m ). |
(4.20) |
|
|
Схема (4.15)–(4.16) аппроксимирует задачу (4.11)–(4.12)
и имеет m-й порядок аппроксимации, если
|
ψh |
|
|
|
(2h) = O( |
|
h |
|
m ), |
|
|
|
νh |
|
|
|
(3h) = O( |
|
h |
|
m ); |
(4.21) |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
сходится, если при сгущении узлов сетки значение погрешности стремится к нулю и имеет m-й порядок точности, если
yh −uh |
|
|
|
(1h) = O( |
|
h |
|
m ); |
(4.22) |
|
|
|
|
||||||
|
|
|
|
|
устойчива, если решение yh равномерно по h, непрерывно зависит от входных данных, т.е. малому изменению входных данных соответствует малое изменение решения. Устойчивость характеризует чувствительность разностной схемы к различного рода погрешностям, она является внутренним свойством разностной задачи, и это свойство не связывается непосредственно с исходной дифференциальной задачей (в отличие от сходимости). Устойчивость бывает условной и безусловной в зависимости от того, накладываются или нет ограничения на соотношения между шагами по разным переменным.
Если решение исходной дифференциальной задачи (4.11–4.12) существует, а разностная схема (4.15–4.16) устойчива и аппрокси-
74
elib.pstu.ru
мирует задачу (4.11–4.12) на данном решении, то разностное решение сходится к точному, при этом порядок сходимости совпадает с порядком аппроксимации.
Метод конечного объема является основным методом построения дискретных аналогов непрерывных физических задач.
Этапы проведения дискретизации
Этапы проведения дискретизации исходной дифференциальной задачи:
•выбрать сетку, задав значения шага;
•построить разностную схему;
•определить погрешность, с которой разностная схема аппроксимирует исходную задачу;
•проверить устойчивость разностной схемы;
•сделать вывод о сходимости решения разностной задачи к решению исходной задачи.
Методы решения сеточных уравнений
Все методы решения разностных задач делятся на прямые и итерационные.
К прямым методам относят метод прогонки, метод полной редукции, метод разделения переменных и пр. К итерационным относят метод простой итерации, метод Чебышева, метод Зейделя, метод верхней релаксации, треугольный метод, попеременнотреугольный метод и пр.
Подробнее остановимся на методе прогонки, который представляет вариант метода последовательного исключения неизвестных.
Метод прогонки
Для краевой задачи (4.11–4.12) методом баланса построена разностная схема (4.13–4.14).
Запишем разностную задачу в виде
a j y j−1 −c j y j +b j y j+1 = − f j , j =1, 2, L, N −1, |
(4.23) |
75
elib.pstu.ru
y0 = ϰ 1 y1 +µ1 , yN = ϰ 2 yN −1 +µ2 . |
(4.24) |
Для нахождения решения задачи (4.23–4.24) используем представление
y j = α j+1 y j+1 +β j+1, j = 0, 1, L, N −1 , |
(4.25) |
где αj+1, βj+1 – неизвестные коэффициенты, называемые прогоночными коэффициентами.
Отсюда найдем
y j−1 =αj y j +βj =αj (αj+1y j+1 +βj+1 )+βj = (4.26) =αjαj+1y j+1 +αjβj+1 +βj , j =1, 2, L, N −1.
Подставим выражения (4.25) и (4.26) в уравнение (4.23):
a jα jα j+1 y j+1 + a jα jβ j+1 + a jβ j −c jα j+1 y j+1 −c jβ j+1 + b j y j+1 + f j =
= y j+1 α j+1 (a jα j −c j )+b j + β j+1 (a jα j −c j )+ a jβ j + f j = 0.
Это уравнение выполнено, если коэффициенты αj+1, βj+1 выбрать таким образом, чтобы выражения в квадратных скобках обращались в ноль.
То есть
α j+1 |
= |
b j |
, β j+1 = |
a jβ j + f j |
, j =1, 2, L, N −1. (4.27) |
|
c j −α j a j |
c j −α j a j |
|||||
|
|
|
|
Для решения уравнений (4.27) необходимо задать начальные значения α1, β1, которые определяются из требования эквивалентности уравнения y0 = α1 y1 +β1 начальному условию (4.24). Тогда
α1 = ϰ1,β1 = µ1 |
(4.28) |
Вычисление коэффициентов αj+1, βj+1 по формулам (4.27), (4.28) называется прямой прогонкой.
После того как прогоночные коэффициенты найдены, решение системы находится по рекуррентной формуле (4.25), начиная с j=N–1. Для начала счета по этой формуле требуется знать yN, которое определяем из уравнений
76
elib.pstu.ru
yN −1 = αN yN +βN , yN = ϰ 2 yN −1 +µ2 ,
(4.29)
Нахождение yj по формулам (4.25), (4.29) называется обратной прогонкой.
Разностные схемы для уравнения теплопроводности
В области {0 < x <1,0 < t ≤T} требуется найти решение уравнения
∂u |
= |
∂2u |
+ f (x,t), |
∂t |
|
∂2 x |
|
удовлетворяющее начальному условию u (x,0)= u0 (x)
и граничным условиям
u (0,t)= µ1 (t),u (l,t)= µ 2 (t).
(4.30)
(4.31)
(4.32)
Решение задачи (4.30)–(4.32) существует и единственно, обладает необходимым числом производных по x и по t и непрерывно зависит от начальных и граничных данных.
Для построения разностной сетки необходимо прежде всего ввести сетку в области изменения независимых переменных и задать шаблон.
Шаблон – определенное количество соседних точек, участвующих в построении разностной задачи.
Введем сетку по переменному x
ωh ={xi = ih; i = 0, 1, L, N; hN =1}
исетку по переменному t с шагом τ, которую обозначим
ωτ ={tn = nτ; n = 0, 1, L, K; Kτ =T} .
77
elib.pstu.ru
Точки (xi ,tn ), i = 0, 1, L, N; n = 0, 1, L, |
K образуют узлы |
пространственно-временной сетки ωh,τ = ωh ωτ . |
|
Слоем называется множество всех узлов сетки ωh,τ , имеющих |
|
одну и ту же временную координату. |
|
Для функции y(x,t), определенной на сетке |
ωh,τ , введем обо- |
значения |
|
yi = y (xi ,tn ). |
|
Иногда для упрощения записи индексы i и n будем опускать. |
Чтобы аппроксимировать уравнение (4.30) в точке (xi ,tn ), введем
четырехточечный шаблон, |
состоящий из узлов (xi±1,tn ), (xi ,tn ), |
(xi ,tn+1 ). Производную ∂u |
заменим в точке (xi ,tn ) разностным |
∂t
отношением
ytn,i = yin+1τ− yin ,
апроизводную ∂2u – второй разностной производной
∂2 x
y n |
= |
yin+1 − 2 yin + yin−1 |
. |
xx,i |
|
h2 |
|
Правую часть f (x,t) заменим приближенной сеточной функцией ϕin , в качестве которой можно взять одно из следующих выражений
f (xi ,tn ), |
1 |
xi∫+0,5 |
f (x,tn )dx, |
1 |
tn∫+1 dt xi∫+0,5 |
f (x,t )dx . |
h |
hτ |
|||||
|
|
xi−0,5 |
|
|
tn xi−0,5 |
|
В результате получим разностное уравнение
yin+1 − yin |
= |
yin+1 − 2 yin + yin−1 |
+ ϕin , |
|
τ |
h2 |
|||
|
|
78
elib.pstu.ru
которое аппроксимирует исходное дифференциальное уравнение в точке (xi ,tn ) с первым порядком по τ и вторым порядком по h при
условии, что разность ϕin |
− f (xi ,tn ) имеет тот же порядок малости. |
||||
Тогда разностная схема будет иметь вид |
|||||
|
yin+1 − yin |
= |
yin+1 − 2 yin + yin−1 |
+ ϕin , |
|
|
|
h2 |
|||
|
τ |
|
|
|
|
i =1, 2, |
L, N −1, |
|
|||
n = 0, 1, |
L, K −1, |
|
|||
hN =1, |
|
|
|
|
|
|
Kτ =1, |
|
|
|
(4.33) |
|
y0n = µ1 (tn ), |
||||
|
|
||||
|
yNn = µ2 (tn ), |
|
|||
n = 0, 1, |
L, K, |
|
yi0 = u0 (xi ), i = 0, 1, L, N
Разностная схема (4.33) представляет собой систему линейных алгебраических уравнений, с числом уравнений равных числу неизвестных. Решение подобных систем находят по слоям. Решение на нулевом слое задано начальными условиями
yi0 = u0 (xi ),
i = 0, 1, L, N.
Если решение yit , i = 0, 1, L, N на слое n уже найдено, то решение yin+1 на слое n+1 находится по явной формуле
yin+1 = yin + τ(yxxn ,i + ϕin ),
i =1, 2, L, N −1 ,
79
elib.pstu.ru
а значения y0n+1 = µ1 (tn+1 ), yNn+1 = µ2 (tn+1 ) доопределяются из гра-
ничных условий. По этой причине схема (4.33) называется явной разностной схемой.
Погрешность разностной схемы (4.33) определяется как разность между решением разностной задачи (4.33) и исходной (4.30) – (4.32)
|
|
|
|
zin |
= yin −u (xi ,tn ) . |
(4.34) |
|||
Подставляя (4.34) в (4.33), получим уравнение для погрешности |
|||||||||
|
|
|
zin+1 − zin |
= |
zin+1 − 2zin + zin−1 |
+ ψin , |
|||
|
|
|
|
|
|||||
|
|
|
|
τ |
|
|
|
h2 |
|
|
|
|
|
|
i =1, 2, |
L, N −1 , |
|
||
|
|
|
|
|
n = 0, 1, |
L, K −1, |
|
||
|
|
|
|
|
hN =1, |
|
|
||
|
|
|
|
|
Kτ =T , |
|
|
||
|
|
|
|
|
z0n = zNn |
= 0, |
(4.35) |
||
|
|
|
|
|
n =1, 2, |
L, K, |
|
||
|
|
|
|
|
zi0 = 0, |
|
|
||
|
|
|
|
|
i = 0, 1, |
L, N |
|
||
где ψn = −u n |
+u n |
+ ϕn |
– погрешность аппроксимации разностной |
||||||
i |
t,i |
xx,i |
i |
|
|
|
|
|
схемы (4.33) на решение задачи (4.30) – (4.32). Явную схему (4.33) можно применять лишь при условии τ ≤ 0,5h2 . Для объяснения используют метод гармоник.
Чисто неявной разностной схемой для уравнения теплопроводности называется разностная схема, использующая шаблон (xi±1,tn ), (xi ,tn ), (xi ,tn+1 ) и имеющая вид
80
elib.pstu.ru