О разностных методах решения нелинейного уравнения

реклама
О разностных методах решения
нелинейного уравнения теплопроводности.
Одномерный случай.
Васильев М.О.
Московский физико-технический институт
22 сентября 2004 г.
1
Введение
В существующих работах [3] к решинию одномерных нелинейных параболических уравнений вида
Ut = (εUx )x
(1)
определенных на области G1 , с зависимостью коэффициента теплопроводности от решения вида
ε = U α, α ≥ 1
(2)
2
подходят посредством построения схемы на фиксированном шаблоне
вида
N
N
N
N
n+1
n
Um+1
− Um
Um
− Um−1
Um
− Um
1
N
= (εN
−
ε
)
(3)
m−1/2
τ
h m+1/2
h
h
3
где N = n + 1 для неявной схемы и N = n для явной. Для явной
схемы это приводит к условию устойчивости h2 ≥ τ (εnm+1/2 + εnm−1/2 ) или
h2
τ ≤ εn
+εn
m+1/2
m−1/2
1
Мы пока сосредоточимся на решении уравнения внутри области, граничные условия заслуживают отдельного рассмотрения
2
Вообще говоря, метод, построенный в нашей работе, не предполагает именно такой зависимости ε от решения, и вполне работоспособен в других ситуациях, где ε не
стремится к бесконечности на расчитываемой области.
3
Здесь и далее: τ - шаг по времени, нижние индексы - номера узлов пространственной сетки или (если не целые) - указывают на то, что соответствующее значение является результатом интерполяции по соседним узлам, верхние индекс - номер
временного слоя.
1
В этой работе наша цель - построить явную мажорантную разностную
схему, не уступающую в точности неявной и не содержащую условия
мажорантности на τ .
2
Естественное продолжение существующей
схемы на случай хаотических сеток
2.1
Построение схемы
Аналогично [1] строим разностную схему на шаблоне, не опирающемся
на фиксированные точки на n-м слое, а опирающемся на произвольные
(пока) точки, отстоящие от расчитываемой на h−1 и h+1 влево и вправо
соответственно. Имеем:
n
n
εn + εn0 U+1
− U0n εn−1 + εn0 U0n − U−1
U0n+1 − U0n
2
=
( +1
−
)
τ
h−1 + h+1
2
h+1
2
h−1
(4)
Поиск условия мажорантности приводит к неравенству вида:
−
h−1 h+1 ε−1 + ε0 ε+1 + ε0
−
+
+
≤0
τ
τ
h−1
h+1
(5)
Достаточным условием для выполнения этого неравенства является
система вида
−
h−1 ε−1 + ε0
+
≤0
τ
h−1
(6)
−
h+1 ε+1 + ε0
+
≤0
τ
h+1
(7)
Или
h2i
− εi ≥ ε0 , i = ±1
τ
Для выполнения этого условия достаточно, чтобы
(8)
h2i
− εi ≥ εmax , i = ±1
(9)
τ
= max(εm ). m = 1..M , где M - общее число расчитываемых
Где εmax
узлов.
Имеем схему вида:
2
L
n+1
xm
l
n
x
j
x
j+1
Переход на n + 1-й слой и возвращение обратно.
(ε−1 + ε0 )/h−1 + (ε+1 + ε0 )/h+1
)+
h−1 + h+1
(ε+1 + ε0 )
(ε−1 + ε0 )
n
n
+ U+1
τ
+U−1
τ
h−1 (h−1 + h+1 )
h+1 (h−1 + h+1 )
U0n+1 = U0n (1 − τ
2.2
(10)
О построении алгоритма
Как видно, условие мажорантности включает в себя кроме hi еще и εi ,
который зависит от Ui . Соответственно, возникает проблема - в расчитывемой точке необходимо уже при построении иметь информацию о точке,
расстояние до которой еще не посчитано.
Решение этой проблемы получается из уравнения (9). Действительно,
находясь в точке с координатой xj мы можем посчитать, куда приходят
из нее кривые
q
x = xj ±
t(εj + εmax )
(11)
при t = τ . 4
Оставшаяся трудность - полученная на предыдущем шаге координата
в общем случае не является координатой узла сетки.
Чтобы обойти эту проблему, поступим так: для двух соседних точек
сетки на n-м слое посчитаем их "отображения на n + 1−й слой", и для
всех точек сетки, оказавшихся между этими "отображениями", посчитаем их праобразы на n−м слое, проинтерполировав линейной интерполяцией коэффициент ε. Соответствующие праобразы, очевидно, попадут на
отрезок между двумя исходными точками. То есть, к примеру, при выn+1
.
числении Um
значение ε−1 будет взято как: ε−1 = εn (xj ) Ll + εn (xj+1 ) L−l
L
p
Будем называть точку с координатой x = xj +
τ (εj + εmax ) "плюсp
τ (εj + εmax ) - "минусотображением"точки xj . Соответственно x = xj −
отображение"
4
3
2.3
Анализ схемы
Таким образом, мы имеем двухпроходный алгоритм, выполняющийся
за O(N ) и разностную схему, аппроксимирующую исходное уравнение
с точностью O(τ, h2 ). Мажорантность схемы так же отслеживается на
каждом шаге.
3
Схема с интегралами
3.1
Построение схемы
Попробуем построить разностную схему опираясь на другую идею.
n+1
В работе [1] была получена разностная схема вида Um
= U1n +U2n , где
U1n и U2n - проинтерполированные по соседним точкам значения функции
U на n-м временном слое в точках пересечения с ним параболок.
n+1
В нашем случае задача осложняется ситуацией, когда в точку Um
приходят не две, а большее количество парабол. Эта ситуация может
иметь место только при решении нелинейного уравнения теплопроводности, и возникает, к примеру в режимах с обострением [4]. Она связана
прежде всего с тем, что коэффициент теплопроводности сильно зависит
от решения.
Применим следующий подход: для каждой точки и каждой параболы,
попавшей в нее, определим праобраз на n-м слое некоторой окрестности
расчитываемой точки. Теперь, вместо суммы по точкам пересечения парабол с n-м слоем, возьмем интеграл от U n по праобразам выбранной
окрестности. Тогда в качестве величин U1 и U2 будут выступать интегралы от U по подобластям n-ого временного слоя, из которых параболы
попадают в окресность расчитываемой точки.
3.2
Проверка аппроксимации
Итак, аккуратный метод нахождения решения уравнения
Ut = (εUx )x
(12)
выглядит следующим образом:
n+1
Um
=
где
5
U1,m + U2,m
2
(13)
5
Здесь и далее: xm±1/2 = (xm±1 + xm )/2, G - часть области интегрирования, на
4
T1,m (x)
1
0
x
T2,m (x)
1
0
x
области интегрирования.
T1,m (x)U n (x)dx
R
T1,m (x)dx
p
G
1, x + 2τ εn (x) ∈ xm−1/2 , xm+1/2
T1,m (x) =
0, иначе
R
T2,m (x)U n (x)dx
U2,m = G R
T1,m (x)dx
p
G
1, x − 2τ εn (x) ∈ xm−1/2 , xm+1/2
T2,m (x) =
0, иначе
U1,m =
R
G
(14)
(15)
(16)
(17)
То есть U1,mp- это усреднение U n (x) по всем таким x, из которых
параболка x + 2τ ε(x) попадет в окресность расчитываемой точки xm .
n
А Up
2,m - это усреднение U (x) по всем таким x, из которых параболка
x − 2τ ε(x) попадет в окресность расчитываемой точки xm .
формально уравнение (13) можно переписать в виде6
n
n+1
n
U1,m + U2,m − 2Um
Um
− Um
=
(18)
τ
2τ
Теперь разложим функцию U n (x) в ряд Тейлора в окрестности точки
xm .
(x − xm )2 00
n
n
0
U (x) = Um + (x − xm )U +
U + O((x − xm )3 )
(19)
2
которой все рассматриваемые нами в дальнейшем отрезки интегрирования (отрезки,
на которых Ti,m 6= 0) не выходят за пределы области интегрирования.
Вообще говоря, здесь есть некоторая тонкость - мы предполагаем, что находимся
достаточно далеко от границы еще и в том смысле, что за время τ граничные условия
меняются достаточно слабо и не оказывают существенного воздействия нарасчитываемую область.
6
n
мы просто вычли Um
справа и слева и поделили на τ
5
xm-1/2 xm
~
~
h+,m,1<0
h~+,m,1<0
xm+1/2
l +,m,1
~
x~+,m,1 x~+,m,1
x-+,m,1
~
x~+,m,2
x~+,m,2
x-+,m,2
Обозначения.
Введем обозначения:
p
2τ εn (x)
p
x− (x) = x − 2τ εn (x)
x+ (x) = x +
(20)
(21)
−1
обратные функции x−1
+ и x− , вообще говоря, многозначны. Разобьем
−1
эти функции на однозначные ветви x−1
+,i и x−,i , каждая из которых определена на некотором отрезке. Продолжим эти ветви за области их определения теми значениями, которые они принимают в граничных точках
областей определения.
Так же обозначим
−1
x̃±,m,i = min(x−1
(22)
±,i (xm−1/2 ), x±,i (xm+1/2 )) =
q
q
2τ εn (x−1
= min(xm−1/2 ∓ 2τ εn (x−1
±,i (xm−1/2 )), xm+1/2 ∓
±,i (xm+1/2 )))
−1
(23)
x̃˜±,m,i = max(x−1
±,i (xm−1/2 ), x±,i (xm+1/2 )) =
q
q
= max(xm−1/2 ∓ 2τ εn (x−1
2τ εn (x−1
±,i (xm−1/2 )), xm+1/2 ∓
±,i (xm+1/2 )))
q
x̃±,m,i + x̃˜±,m,i
(x
)
=
x
∓
x̄±,m,i =
= x−1
2τ εn (x̄±,m,i )
(24)
m
±,i m
2
h̃±,m,i = x̃±,m,i − xm
(25)
˜
h̃±,m,i = x̃˜±,m,i − xm
(26)
l±,m,i = x̃˜±,m,i − x̃±,m,i
(27)
обратим внимание, что:
6
(x̃˜±,m,i − xm )2 − (x̃±,m,i − xm )2 =

−1
2τ (εn (x−1

±,i (xm−1/2 )) − εn (x±,i (xm+1/2 ))) + O(h̃h),


x−1 (x
−1
±,i m−1/2 ) > x±,i (xm+1/2 )
=
−1

2τ (εn (x−1

±,i (xm+1/2 )) − εn (x±,i (xm−1/2 ))) + O(h̃h),

 −1
x±,i (xm−1/2 ) < x−1
±,i (xm+1/2 )
= 2τ εnx (x̃˜±,m,i − x̃±,m,i )l±,m,i + O(Hh)
Тогда выражения (14) и (16) примут вид
U1,m =
P R x̃˜+,m,i
U2,m =
P R x̃˜−,m,i
i
i
x̃+,m,i
x̃−,m,i
=
(28)
7
n
Um
+ (x − xm )U 0 +
P
i l+,m,i
n
Um
+ (x − xm )U 0 +
P
i l−,m,i
(x−xm )2 00
U
2
+ Odx
(x−xm )2 00
U
2
+ Odx
(29)
(30)
Преобразуем полученные выражения
(x̃˜+,m,i − xm )2 − (x̃+,m,i − xm )2
P
+U i
+
2 i l+,m,i
P
(x̃˜+,m,i − xm )3 − (x̃+,m,i − xm )3
00
P
+U ( i
6 i l+,m,i
P
(x̃˜−,m,i − xm )2 − (x̃−,m,i − xm )2
n
0
P
+
= Um + U i
2 i l−,m,i
P
(x̃˜−,m,i − xm )3 − (x̃−,m,i − xm )3
00
P
+U ( i
6 i l−,m,i
U1,m =
U2,m
Далее
n
Um
0
P
7
(31)
(32)
мы перешли от интегралов к суммам, используя функции T . Фактически, эти
суммы представляют собой ни что иное, как интегралы лишь по областям, где соответствующая Ti,m = 1.
7
U1,m =
n
Um
+U
P
)l+,m,i
i (τ εnxP
+ O(Hh)
i l+,m,i
)+
˜
+ h̃2+,m,i + h̃+,m,i h̃+,m,i )
P
=
6 i l+,m,i
P
)l−,m,i + O(Hh)
n
0
i (τ εnxP
)+
= Um + U
i l−,m,i
P
˜2
˜
2
i l−,m,i (h̃−,m,i + h̃−,m,i + h̃−,m,i h̃−,m,i )
00
P
+U (
6 i l−,m,i
00
+U (
U2,m
0
P
˜2
i l+,m,i (h̃+,m,i
Теперь, в силу определений (20) и (21), имеем:
q
2τ εn (x−1
x−1
(x)
=
x
∓
±,i )
±,i
(33)
(34)
Тогда, с точностью до величин порядка O(h̃3 ), имеем:
˜2
˜
2
h̃
±,m,i + h̃±,m,i + h̃±,m,i h̃±,m,i
q
τ
q
= 6τ εn (x−1
2τ εn (x−1
±,i ) −
±,i (xm ))(1 +
−1
dε
)(±hm∓1
2τ εn (x±,i (xm )) dx
=
∓ hm ))
dε
≈ 6τ εn (x−1
±,i ) + O((h̃ + τ dx )∆h)
(35)
где ∆h - изменение шага h на одном шаге сетки.
Теперь, подставив в (18), получим:
n+1
n
Um
− Um
= U 0 (εnx + O(h̃/τ )) +
τ
P
dε
l+,m,i (6τ εn (x−1
+,i (xm )) + O(h̃ + τ dx )∆h)
00
P
+U ( i
)+
12τ i l+,m,i
P
dε
l−,m,i (6τ εn (x−1
+,i (xm )) + O(h̃ + τ dx )∆h))
00
P
+U ( i
)=
12τ i l−,m,i
dε
= U 0 (εnx + O(h̃)) + U 00 (ε̄ + O(h̃/τ + )∆h)
(36)
dx
то есть разностную аппроксимацию исходного уравнения (1).
4
Сравнение с существующими схемами
Сравним результаты, полученные с использованием рассмотренного метода , решения полученного прогонкой и решения, полученного по явной
8
схеме с аналитическим решением. Мы будем работать с аналитическим
решением вида
U = (αλ(λt − x))1/α
(37)
В качестве одного из методов, с которым будет проводиться сравнение
возьмем рассмотренный в [3] метод прогонки. Он работает на шаблоне
n+1
Um
−
τ
n
Um
=
εnm+1/2
n+1
n+1
Um+1
−Um
hm+1/2
− εnm−1/2
hm
n+1
n+1
Um
−Um−1
hm−1/2
(38)
Как показывает численный эксперимент, у этого метода возникают
существенные проблемы при аппроксимации быстро распространяющихся тепловых волн. И это не удивительно, ведь он использует в качестве
коэффициента теплопроводности значения на n-м временном слое. В результате область тепловой волны, отличающаяся от всего остального
(невозмущенного) пространства, не может распространяться со скоростью большей, чем λmax ≈ h/τ + h1 /τ (h - шаг сетки, h1 - характерное
расстояние, на которое распростроняется тепло за один шаг по времени
по среде с фоновым коэффициентом теплопроводности). Действительно,
так как коэффициент теплопроводности фоновой среды на много порядков меньше, чем в возмущенной области, а в схеме в качестве коэффициента теплопроводности в m-й точке берутся εnm+1/2 и εnm−1/2 , получается,
что при малом шаге сетки на границе теплового фронта берется приблизительно вдвое меньшее значение ε, чем следовало бы.
9
T=2.750000e+01
10
Integralchiki
Javnaja shema
Analiticheskoe
Progonka-new
9
8
7
6
5
4
3
2
1
0
0
50
100
150
200
250
300
350
400
t = 27.5, λ = 5, α = 3.5, τ = 0.1 - малая скорость распространения волны
T=3.300000e+00
20
Integralchiki
Javnaja shema
Analiticheskoe
Progonka-new
18
16
14
12
10
8
6
4
2
0
0
50
100
150
200
250
300
350
400
t = 3.4, λ = 50, α = 3.5, τ = 0.1 - большая скорость распространения
10
волны
T=2.300000e+00
30
Integralchiki
Javnaja shema
Analiticheskoe
Progonka-new
25
20
15
10
5
0
0
50
100
150
200
250
300
350
400
t = 2.3, λ = 100, α = 3.5, τ = 0.1 - большая скорость распространения
волны
Вывод - построеный метод хорошо аппроксимирует решение для случая больших скоростей распространения фронта, в то время как при
малых скоростях классические схемы дают заметно лучшие результаты.
Список литературы
[1] Холодов А.С. О посторении разностных схем с положительной аппроксимацией для уравнений параболического типа. // ЖВМ и МФ.
1984. Т. 24. N 9 С. 1172-1188
[2] Саульев В.К. Интегрирование параболических уравнений методом
сеток. М.: Физматгиз, 1960.
[3] Федоренко Р.П. Введение в вычислительную физику
[4] Самарский А.А., Галактионов В.А., Курдюмов С.П., Михайлов А.П.
Режимы с обострением в задачах для квазилинейных параболических уравнений. - М.: Наука. 1987
11
Скачать