ВУЗ:
Составители:
73
Вместо функций U, f,
ϕ(
x),
ψ(
t) будем рассматривать сеточные функции,
значения которых в узлах (x
i
, t
j
) соответственно равны
j
i
j
i
j
i
j
i
fu
ψϕ
,,,
.
Применим следующий шаблон в виде правого нижнего уголка (рис.23).
Тогда
τ
j
i
j
i
uu
t
U −
≈
∂
∂
+1
,
h
uu
x
U
j
i
j
i 1−
−
≈
∂
∂
,
где
τ
– шаг по оси t, h – шаг вдоль оси x.
Тогда линейное уравнение переноса будет аппроксимировано с использо-
ванием односторонних разностей:
),(
1
1
ji
j
i
j
i
j
i
j
i
txf
h
uu
a
uu
=
−
+
−
−
+
τ
. (3.14)
Решая разностное уравнение относительно единственного неизвестного
значения
1+j
i
u на j+1- ом слое, получаем следующую разностную схему:
),(
1
1
ji
j
i
j
i
j
i
j
i
yxfuu
h
dta
u
h
dta
u ⋅++
⋅
−
⋅
=
−
+
τ
.
Обозначив
h
a
τ
λ
⋅
= и приведя подобные, получим:
),()1(
1
1
ji
j
i
j
i
j
i
yxfuuu ⋅+⋅−+⋅=
−
+
τλλ
, (3.15)
i=1…n, j=0…m-1.
Схема (3.15) является явной, поскольку значение сеточной функции в узле
(j+1) верхнего слоя выражаются явно с помощью соотношения (3.15) через
ранее найденные её значения на предыдущем слое j.
Рис. 23. Правый нижний уголок
74
Для начала счёта по схеме (3.15) необходимы её значения на слое j=0. Они
определяются начальным условием (3.10), которое записывается для сеточ-
ной функции в следующем виде:
)(
0
ii
xu
ϕ
=
, i=0,1,…,n. (3.16)
Граничное условие (3.11) записывается для сеточной функции следующим
образом:
)(
0 j
jj
tu
ψ
=
, j=1,2,…,m. (3.17)
Таким образом, решение исходной дифференциальной задачи (3.9) - (3.11)
сводится к решению разностной задачи (3.15) - (3.17). Найденные значения
сеточной функции
j
i
u принимаются в качестве значений искомой функции U
в узлах сетки.
Алгоритм решения исходной задачи (3.9)—(3.11) с применением рассмот-
ренной разностной схемы представлен на рис. 25.
В соответствии с этим алгоритмом в памяти ЭВМ хранится весь двумер-
ный массив значений сеточной функции
j
i
u , и он целиком выводится на пе-
чать по окончании счета.
С целью экономии памяти (и если эти результаты не понадобятся для
дальнейшей обработки) можно хранить лишь значения сеточной функции на
двух соседних слоях
j
i
u ,
1+j
i
u .
Укажем теперь некоторые свойства данной разностной схемы. Она ап-
проксимирует исходную задачу с первым порядком точности. Схема устой-
чива при выполнении условия:
α
τ
/0 h
≤
<
. (3.18)
Эти свойства схемы установлены в предположении, что решение U(x, t),
начальное и граничное значения φ(х) и
)(t
ψ
дважды непрерывно дифферен-
цируемы, а правая часть f(x, t) уравнения переноса имеет непрерывные пер-
вые производные.
Поскольку схема (3.15) устойчива и аппроксимирует исходную задачу, то
сеточное решение сходится к точному с первым порядком точности при
0→h
,
0→
τ
. Отметим, что при а<0 условие (3.18) не выполняется, и схема
(3.15) не сходится.
Можно построить сходящуюся схему и для случая a < 0. В качестве шаб-
лона для построения разностной схемы для уравнения (3.9) примем левый
нижний уголок (рис. 24а).
Разностное уравнение в этом случае примет вид:
j
i
j
i
j
i
j
i
j
i
f
h
uu
a
uu
=
−
+
−
+
+
1
1
τ
. (3.19)
Вместо функций U, f, ϕ(x), ψ(t) будем рассматривать сеточные функции, Для начала счёта по схеме (3.15) необходимы её значения на слое j=0. Они значения которых в узлах (xi, tj) соответственно равны u ij , f i j , ϕ i j ,ψ i j . определяются начальным условием (3.10), которое записывается для сеточ- ной функции в следующем виде: Применим следующий шаблон в виде правого нижнего уголка (рис.23). u i0 = ϕ ( xi ) , i=0,1, ,n. (3.16) Граничное условие (3.11) записывается для сеточной функции следующим образом: u0j = ψ j (t j ) , j=1,2, ,m. (3.17) Таким образом, решение исходной дифференциальной задачи (3.9) - (3.11) сводится к решению разностной задачи (3.15) - (3.17). Найденные значения j Рис. 23. Правый нижний уголок сеточной функции u i принимаются в качестве значений искомой функции U в узлах сетки. ∂U uij +1 − uij Тогда ≈ , Алгоритм решения исходной задачи (3.9)(3.11) с применением рассмот- ∂t τ ренной разностной схемы представлен на рис. 25. ∂U u ij − u ij−1 В соответствии с этим алгоритмом в памяти ЭВМ хранится весь двумер- ≈ , j ∂x h ный массив значений сеточной функции ui , и он целиком выводится на пе- где τ шаг по оси t, h шаг вдоль оси x. чать по окончании счета. Тогда линейное уравнение переноса будет аппроксимировано с использо- С целью экономии памяти (и если эти результаты не понадобятся для дальнейшей обработки) можно хранить лишь значения сеточной функции на ванием односторонних разностей: j j +1 двух соседних слоях ui , ui . uij +1 − uij u j − uij−1 +a i = f ( xi , t j ) . (3.14) Укажем теперь некоторые свойства данной разностной схемы. Она ап- τ h проксимирует исходную задачу с первым порядком точности. Схема устой- Решая разностное уравнение относительно единственного неизвестного чива при выполнении условия: j +1 0 < τ ≤ h /α . (3.18) значения u i на j+1- ом слое, получаем следующую разностную схему: Эти свойства схемы установлены в предположении, что решение U(x, t), a ⋅ dt j a ⋅ dt j начальное и граничное значения φ(х) и ψ (t ) дважды непрерывно дифферен- uij +1 = ui −1 − ui + uij + τ ⋅ f ( xi , y j ) . цируемы, а правая часть f(x, t) уравнения переноса имеет непрерывные пер- h h вые производные. a ⋅τ Поскольку схема (3.15) устойчива и аппроксимирует исходную задачу, то Обозначив λ= и приведя подобные, получим: h сеточное решение сходится к точному с первым порядком точности при h → 0 , τ → 0 . Отметим, что при а<0 условие (3.18) не выполняется, и схема uij +1 = λ ⋅ uij−1 + (1 − λ ) ⋅ uij + τ ⋅ f ( xi , y j ) , (3.15) (3.15) не сходится. i=1 n, j=0 m-1. Можно построить сходящуюся схему и для случая a < 0. В качестве шаб- лона для построения разностной схемы для уравнения (3.9) примем левый Схема (3.15) является явной, поскольку значение сеточной функции в узле нижний уголок (рис. 24а). (j+1) верхнего слоя выражаются явно с помощью соотношения (3.15) через Разностное уравнение в этом случае примет вид: ранее найденные её значения на предыдущем слое j. u ij +1 − u ij u j − u ij + a i +1 = fi j . (3.19) τ h 73 74
Страницы
- « первая
- ‹ предыдущая
- …
- 35
- 36
- 37
- 38
- 39
- …
- следующая ›
- последняя »