Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Пособие_Бедарев_Федорова_Федорченко

.pdf
Скачиваний:
92
Добавлен:
09.04.2015
Размер:
1.64 Mб
Скачать

от искомых функций, но и от ее производных, уравнение будет

нелинейным.

Если коэффициенты A, B, С – нулевые, а D ¹ 0 и E ¹ 0, то уравнение имеет первый порядок и называется уравнением переноса (адвекции). Если хотя бы один из коэффициентов A, B, С отличен от нуля, уравнение имеет второй порядок и может быть классифицировано по типам аналогично кривым второго порядка. Классификация уравнений связана с наличием характеристик – особых направлений, вдоль которых исходное уравнение может быть записано в виде полного дифференциала и, следовательно, может быть проинтегрировано. Уравнение характеристик для (3.1) имеет вид

 

dx

=

B ±

B 2 - 4 AC

.

(3.2)

 

 

 

 

 

dt

2 A

 

Количество характеристик зависит от знака

дискриминанта

B2 – 4 AC. Если он положителен, то уравнение (3.1) имеет две вещественные характеристики и называется гиперболическим. В случае нулевого дискриминанта уравнение имеет одну вещественную характеристику и является параболическим. Эллиптические уравнения не имеют вещественных характеристик (дискриминант отрицателен).

Физические процессы, описываемые уравнениями перечисленных типов, корректные постановки начально-краевых задач и свойства решений существенно отличаются друг от друга.

8.3. Приближенные методы. Аппроксимация и устойчивость

Как правило, уравнения в частных производных не могут быть решены аналитически (точно), и для нахождения решений используются приближенные методы, которые можно разделить на три основные группы: методы конечных разностей, методы конечных объемов и методы конечных элементов.

В конечно-разностных методах приближенное решение ищется в узлах специально построенной разностной сетки, покрывающей область решения исходной дифференциальной задачи. Дифференциальная задача с помощью формул приближенного дифференцирования заменяется системой алгебраиче-

90

ских уравнений (разностной схемой), которая далее решается с помощью точных или приближенных методов решения СЛАУ. При этом необходимо использовать такие разностные схемы, которые обеспечивают сходимость получаемого решения разностной задачи к решению исходной дифференциальной при уменьшении шага сетки.

Аппроксимация (от англ. approximation – приближение) характеризует, насколько хорошо разностная задача приближает исходную дифференциальную, и зависит от точности формул разностного дифференцирования и, конечно же, размеров разностной сетки. Для простых задач аппроксимация может быть исследована аналитически с помощью оценки главного члена погрешности разностной схемы при подстановке в нее точного решения. В более сложных случаях аппроксимацию исследуют экспериментально, с помощью оценки поведения погрешности при измельчении сетки.

Устойчивость характеризует способность решения не накапливать ошибку. Другими словами, устойчивость – это непрерывная зависимость решения от входных данных: коэффициентов, правых частей, начальных данных и краевых условий. При этом следует различать устойчивость решения исходной дифференциальной задачи и устойчивость приближенного метода. Аппроксимируем записанную в общем виде дифференциальную задачу с начальными данными и краевыми условиями:

Lu = ϕ ,

u 0 = v0 ,

lu = μ

(3.3)

с помощью конечно-разностной схемы:

Lhuh = ϕ h ,

u 0 h = v0 ,

lhuh = μ h .

(3.4)

Рассмотрим также конечно-разностную задачу с «возмущенными» правыми частями, начальными данными и краевыми условиями:

~

~

,

~0

~

,

~

~

Lhuh

= ϕ h

u

= v0

lhuh

= μ h .

Говорят, что решение разностной задачи (3.4) непрерывно зависит от входных данных задачи, если существуют такие константы M1 > 0, M2 > 0, M3 > 0, не зависящие от t и h, что

 

~

(t)

 

 

M

 

 

~

 

+ M

 

 

~

 

+ M

 

v

~

 

. (3.5)

 

 

 

 

 

 

 

 

 

 

uh (t) − uh

 

 

1

 

ϕ h − ϕ h

 

2

 

μ h − μ h

 

3

0 − v

0

 

 

 

 

 

 

 

 

 

 

91

 

 

 

 

 

 

 

 

 

 

Для линейных разностных схем доказано, что устойчивость по начальным данным эквивалентна устойчивости по правой части, т.е. для линейных операторов Lh, lh достаточно показать, что

 

~

(t)

 

M

 

v

~

 

 

 

.

 

 

 

 

 

 

uh (t) − uh

 

 

0 − v 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если независимых переменных несколько (например, x и t), то вводится понятие условной и безусловной устойчивости. Устойчивость называется безусловной, если (3.5) имеет место при произвольном соотношении между шагами разностной сетки τ

иh. Схема будет условно устойчивой, если для выполнения (3.5) шаги по независимым переменным должны подчиняться дополнительным соотношениям.

Втеории разностных схем доказана теорема Лакса о том, что если разностная задача аппроксимирует дифференциальную

иустойчива, то при измельчении сетки решение разностной задачи сходится к решению дифференциальной.

Подробнее о свойствах аппроксимации и устойчивости будет рассказано ниже при рассмотрении примеров уравнений в частных производных.

Тема 9. Уравнения теплопроводности

9.1.Одномерное уравнение теплопроводности

Кпараболическим уравнениям приводят задачи теплопроводности, диффузии примеси и некоторые другие. Рассмотрим уравнения этого типа на примере линейного уравнения теплопроводности с одной пространственной переменной и постоянными коэффициентами:

u = A

2 u + F ( x, t) .

(3.6)

t

x 2

 

Уравнение (3.6) описывает распространение тепла в тонком длинном стержне длины L. Здесь А > 0 – константа (коэффициент теплопроводности), u(x, t) – искомое решение (температура), F(x, t) – правая часть, с помощью которой можно задать источники или стоки тепла.

92

Будем искать решение в области 0 ≤ x L, 0 ≤ t T. Корректная постановка задачи кроме уравнения (3.6) должна содержать начальные данные:

u(x, 0) = u0(x)

(3.7)

и краевые условия. Существует три типа краевых условий, которые называют условиями первого, второго и третьего рода. Условия первого рода означают, что на границах области задана зависимость температуры от времени:

u(0, t) = μ11(t), u(L, t) = μ12(t).

(3.8′)

Условия второго рода задают тепловые потоки (производные от температуры) через границы области:

ux(0, t) = μ21(t), ux(L, t) = μ22(t).

(3.8′′)

И наконец, условия третьего рода задают на границе линейную комбинацию искомой функции и ее производной:

u(0, t) + α1ux(0, t) = μ31(t), u(L, t) + α2ux(L, t) = μ32(t). (3.8′′′)

В курсе дифференциальных уравнений доказано, что уравнение (3.6) с начальными данными (3.7) и краевыми условиями (3.8) имеет единственное решение.

Построим в области решения прямоугольную равномерную разностную сетку. Для этого разобьем отрезок [0, T] на N равных частей: ti = n · τ, а отрезок [0, L] – на M равных частей: xj = jh, h = L/M. Область решения и разностная сетка представлены на рис. 3.1. Вместо точного решения u(x, t) будем искать приближенное решение, заданное в узлах сетки uij = u(xj, ti). На линиях t = 0, x = 0 и x = L решение определено начальными данными (3.7) и краевыми условиями (3.8), во всех остальных узлах сетки решение должно быть найдено из разностных аналогов уравнения (3.6).

93

t

x = xj

ujn

 

t = T

t = tn

0

x

x = L

Рис. 3.1. Расчетная область и сетка для уравнения (3.6)

Аппроксимируем (приблизим) исходную дифференциальную задачу конечно-разностной. Для этого заменим все входящие в уравнение (3.6) и краевые условия (3.8′), (3.8′′) или (3.8′′′) производные их конечно-разностными аналогами:

u

 

 

 

n

 

 

u(x j , t n +1 ) − u(x j , t n )

=

 

u j n +1 u j n

 

 

 

 

(x j

, t

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

,

 

 

 

 

 

 

 

 

 

 

τ

 

 

 

 

 

τ

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2u

(x j , t n ) ≈

u(x j +1, t n ) − 2u(x j , t n ) + u(x j −1,t n )

=

x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

n

− 2u j

n

 

n

 

 

 

 

 

 

 

 

 

 

 

=

u j +1

 

 

 

+ u j −1

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

 

i

 

 

 

u n u

n

u

 

n

 

 

 

u n

u n

 

 

 

 

(x , t

 

) =

 

1

 

0

,

x

(x , t

 

)

=

M

M −1

.

 

 

 

 

h

 

 

 

 

x

0

 

 

 

 

 

 

 

 

 

 

 

 

M

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Подставляя эти выражения в уравнение (3.6), получим разностную схему:

un +1

u n

 

un

− 2u n + un

 

 

j

j

= A

j +1

j

j −1

+ F (x j , t n ) .

(3.9)

τ

 

h2

 

 

 

 

 

 

На первом временном слое решение известно: u0j = u(xj, t0) = = u(xj, 0) = u0(xj). Во всех внутренних точках расчетной области оно находится из явных формул, которые легко получаются из схемы (3.9):

94

 

n

 

ni

in

u j n+1 = u j n A

u j+1

− 2u j

+ u j−1

+ F (x j , t n ),

 

h

2

 

 

 

 

 

n = 1, 2, ..., N −1,

j = 0,

1, ..., M −1.

Для нахождения решения в крайних точках отрезка [0, L] необходимо использовать краевые условия. Если заданы краевые условия (3.8′), можно сразу определить значения искомых функций:

un0 = μ11(ti), unM = μ12(ti).

Для условий (3.8′′) получим:

u n+1

= u n +1

hμ

21

(t n +1), u

M

n+1 = un +1

+ hμ

22

(t n+1).

0

1

 

 

M −1

 

 

Для условий (3.8′′′) необходимо выразить искомые величины u(tn+1, x0), u(tn+1, xM) из линейных конечно-разностных соотношений, аппроксимирующих краевые условия:

n 1

hμ

31

(t n+1 ) − α u n+1

n+1

 

α

un+1

+ hμ

 

(t n+1 )

u0 + =

 

1 1

, uM

 

=

2

M −1

 

32

.

 

 

 

 

 

 

 

 

 

 

h − α1

 

 

 

h − α2

 

Исследуем, насколько численное решение, полученное по схеме (3.9), отличается от точного. Для этого разложим точное

решение u(tn, xj±1) = unj±1, u(tn+1, xj) = ujn+1 в ряд Тейлора в окрестности точки (xj, tn):

unj ±1 = u(t n , x j ± h) = u nj ± h(ux )inj +

h2

(uxx )nj

±

h3

(uxxx )nj

+

h4

(uxxxx )nj K,

 

 

 

2

 

6

 

24

 

unj +1 = u(t n + τ , x j ) = u nj +τ (ut )nj + τ 2 (utt )nj + K,

2

и подставим эти выражения в разностную схему (3.9):

u n+1

ui

 

u n

 

− 2u n + u n

j

j

A

j +1

 

j

j −1

F (x j ,t n ) =

 

τ

+ τ 2

h2

 

 

 

 

 

 

 

uinj

+ τ (ut )nj

(utt )nij

+ ... − u nj

=

 

 

 

 

2

 

 

 

 

 

 

 

τ

 

 

 

 

 

 

 

 

 

 

 

 

95

 

 

 

 

h2

 

 

 

 

h3

 

 

 

h4

 

 

 

 

 

 

 

u nj

+ h(ux )nj

+

 

 

 

 

(uxx )inj +

 

 

(uxxx )nj +

 

 

 

(uxxxx )nj

− 2u nj

 

2

 

6

24

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h(u x )nj

+

h

2

 

h

3

 

+

h

4

 

 

 

 

 

u inj

(u xx )nj

(u xxx )nj

 

)nj

K

 

 

 

 

 

 

(u xxxx

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

6

 

24

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F ( x j , t n ) = (ut )nj A(u xx )nj F ( x j , t n ) +

 

 

 

 

 

 

 

+ τ (utt )ijn A

h 2

(u xxxx )nj .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Первые три члена являются невязкой уравнения (3.6) в точке (t n, xj) и равны 0, поскольку u(x, t) – точное решение уравнения. Главный член погрешности схемы равен

τ (utt )nj

A

h 2

(uxxxx )nj , т.е. схема имеет первый порядок аппрок-

 

2

12

 

симации по времени и второй порядок – по пространству. Исследуем второе важное свойство разностной схемы – ус-

тойчивость. Существуют различные методы исследования устойчивости: принцип максимума, метод разделения переменных (Фурье), метод операторных неравенств и др.

Известен точный метод решения уравнений в частных производных – метод разделения переменных, согласно которому решение можно представить в виде ряда Фурье с бесконечным числом слагаемых. Коэффициенты ряда получены путем разложения в ряд Фурье начальных данных. В случае конечноразностной задачи число членов ряда не бесконечно, а зависит от числа узлов разностной сетки. Для линейных задач можно ограничиться рассмотрением частного решения в виде одной

гармоники unj = ρ neijϕ . Коэффициент ρ определяет скорость роста этой гармоники при переходе с n-го временного слоя на

96

(n + 1)-й слой. Чтобы ошибка не нарастала с течением времени, необходимо, чтобы ½ρ½ £ 1.

Подставим гармонику в разностную схему (3.9):

Поскольку

ρ -1

τ

= 2 A h2

 

ρ n eijϕ

ρ -1

 

 

eiϕ

- 2 + e

iϕ

 

 

 

 

 

 

 

 

 

= A

 

 

 

 

 

 

ρ n eijϕ .

 

 

 

 

τ

 

 

 

 

 

h2

 

 

 

 

 

 

eiϕ = cos(ϕ ) + i ×sin(ϕ ), то

 

 

 

 

 

 

 

 

=

A(cos(ϕ) + i ×sin(ϕ) - 2 + cos(ϕ) - i ×sin(ϕ))

=

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

(cos(ϕ) -1) = -

4 A

 

 

2

 

ϕ

ρ =1 -

4 Aτ

 

2

ϕ

 

 

 

 

sin

 

 

;

 

sin

 

 

.

h2

 

h2

 

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

Обозначим γ =

Aτ

– число Куранта. Для того, чтобы прибли-

h2

 

 

женное решение на временном слое (n + 1) не превосходило решение на предыдущем слое, для всех ϕ должно выполняться ус-

ловие

 

ρ

 

£ 1. Это означает

1 - 4γ sin

2

ϕ

 

£1,

откуда следуют

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

два неравенства:

1) 1 - 4γ sin

2

 

ϕ

£1

2) 1 - 4γ sin

2 ϕ

³ -1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

 

- 4γ sin

2

ϕ

 

 

- 4γ sin

2

ϕ

 

 

 

 

 

 

 

£ 0

 

 

³ -2

 

 

 

 

 

2

 

 

 

 

 

 

2

 

 

 

4γ sin

2

 

ϕ

 

 

γ sin

2

ϕ

 

1

 

 

 

 

 

 

 

³ 0

 

 

 

 

£

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

2

 

 

 

 

2

 

 

 

Выполняется для любого ϕ

Выполняется при γ ≤

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

Таким образом, исследование устойчивости явной схемы для уравнения теплопроводности, выполненное на простейших решениях в виде единичной гармоники, показывает, что решения будут устойчивы, если

γ = A

τ

 

£

1

.

(3.10)

h2

 

 

2

 

 

97

 

 

 

 

Преимуществом явной схемы является то, что решение может быть найдено по явным алгебраическим формулам. Однако, как показали расчеты, приближенное решение, полученное с помощью явной схемы, может быть неустойчивым. Неустойчивость приводит к быстрому (экспоненциальному) росту погрешностей, вносимых в численное решение за счет ошибок округления.

Чтобы понять, как неустойчивость проявляется в расчетах, решим численно уравнение (3.6) при A = 1, F(x, t) = 0 c нулевыми краевыми условиями первого рода

 

 

 

u(0, t) = u(1, t) = 0

 

 

 

(3.11)

и с начальными данными в виде гауссоиды, центрированной от-

носительно точки x = 1/2:

 

 

 

 

 

 

 

ϕ(x,0) = e− 20( x −0.5) 2

e−20( x −1.5)2

e− 20( x + 0.5) 2 .

 

(3.12′)

Задача имеет точное решение

 

 

 

 

 

 

 

 

20( x −0.5) 2

 

20( x −1.5)

2

20( x + 0.5) 2

 

 

 

1

1+80t

1+80t

1+80t

 

 

u(x,t) =

1 + 80t e

 

e

 

e

 

 

, (3.12′′)

 

 

 

 

 

 

 

 

 

 

график которого приведен на рис. 3.2. Как показывает рисунок,

точное решение со временем монотонно убывает.

 

 

1

 

 

 

 

 

 

 

 

 

0.8

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0.01

 

0.6

 

 

 

 

 

 

0.05

 

 

 

 

 

 

 

 

0.1

 

 

0.4

 

 

 

 

 

 

0.2

 

 

 

 

 

 

 

 

 

 

 

0.2

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

0

 

0.2

0.4

0.6

 

0.8

 

1

Рис. 3.2. Точное решение (3.12′′) на различные моменты времени

98

Воспользуемся для решения явной схемой (3.9) на сетке h = 0.1, τ = 0.02. Легко проверить, что в этом случае условие ус-

тойчивости (3.10) нарушается: A

τ

=

0.02

= 2 >

1

, и следует

h2

 

2

 

0.01

 

ожидать, что решение будет неустойчиво. Действительно, расчеты показывают, что уже через несколько временных шагов численное решение становится немонотонным, и в дальнейшем его график приобретает характерный «пилообразный» вид. Амплитуда «осцилляций» быстро растет, и за несколько временных шагов решение «разваливается», что приводит к характерной ошибке: «Переполнение арифметического устройства». Это означает, что расчет следует вести с маленьким шагом по временной переменной, что существенно ограничивает применение явных схем для решения уравнения теплопроводности. Действительно, пусть h = 10–2 , A = 1, тогда согласно (3.10) для получе-

ния устойчивого решения необходимо

соблюдать

условие

τ < 5×10–5 . Если решение надо получить

на момент

времени

T = 1, то для этого необходимо сделать N = 2×104 временных шагов. Если же решение надо получить на более подробной сетке по пространственной переменной, например h = 10–3 , то число временных шагов возрастет до N = 2×106, и использование явной

схемы сделает решение задачи нереализуемым.

 

 

 

 

Построим для решения задачи (3.6) – (3.8)

неявную разно-

стную схему:

 

 

 

 

 

 

 

 

 

 

 

n +1

n

 

n+1

n+1

n+1

 

 

 

 

 

 

u j

- u j

= A

u j +1

- 2u j

+ u j −1

+ F (x j

, t

n

) .

(3.13)

 

τ

 

h2

 

 

 

 

 

 

 

 

 

 

 

Основное отличие от (3.9) состоит в использовании «неявных», т.е. взятых с верхнего (n + 1)-го слоя, значений искомой функции u для аппроксимации второй производной по пространственной переменной. Эта схема также имеет погрешность порядка τ1 + h2 и устойчива при любом соотношении шагов τ, h. Такие схемы называют абсолютно устойчивыми. На практике это означает, что расчет можно вести с произвольным временным шагом.

Схемы (3.9) и (3.13) являются представителями семейства

99