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

Методы математической физки Меркулов

.pdf
Скачиваний:
131
Добавлен:
28.05.2022
Размер:
865.91 Кб
Скачать

функции на той сетке, на которой она задана:

k

u

max

u

x

; t

j)j

;

k

'

max

'

x

i)j

:

 

kh; = i=0;:::;n; j

(

i

 

 

 

kh = i=0;:::;n j

(

 

 

 

 

j=0;:::;m

 

 

 

 

 

 

 

 

 

 

 

 

Разностная схема называется сходящейся к решению дифференциальной задачи в сеточной норме, если ku u~kh; ! 0 при h ! 0 и ! 0.

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

Разностная схема называется устойчивой по начальным данным и правой части, если норма ее решения не превосходит суммы норм заданных в задаче функций, умноженных на число, не зависящее от шагов сетки:

ku~kh; C(k'kh + kfkh; + kg1k + kg2k ):

(2.26)

Это условие показывает, что при малом изменении исходных данных или при уменьшении шагов сетки решение разностной задачи будет меняться мало. Выполнение этого условия означает непрерывную зависимость решения, полученного с помощью разностной схемы, от входных данных. При решении разностных уравнений, например (2.25), естественно использовать вычислительные средства. А значит, расчеты будут выполняться не точно, а с погрешностью, связанной с конечным представлением чисел (длина разрядной сетки ограничена).

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

Докажем устойчивость явной разностной схемы при условии, что функция u(x; t) удовлетворяет однородным краевым условиям первого рода:

u(0; t) = 0; u(l; t) = 0 (g1(t) = 0; g2(t) = 0):

h2

Утверждение 2.3. Если 2a2 , то явная разностная схема (2.25)

устойчива по начальным данным и правой части, т. е.

ku~kh; C(k'kh + kfkh; );

70

где C не зависит от h и .

Доказательство. Обозначим ku~jkh, kfjkh наибольшие по модулю зна-

чения сеточных функций u~ и f на j-м временном слое:

 

 

uj

max u~j

;

k

fj

kh

= max

f(x

; t )

:

k~

kh = i=0;:::;n j i j

 

 

i=0;:::;n j

i

j

j

 

Из равенств (2.24) следует, что

ju~ij+1j =

 

a2

1

2 a2

u~ij

+

a2

h2 u~ij 1 +

h2

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тогда

 

 

 

 

 

 

 

 

 

j

u~i+1 + f(xi; tj) :

ju~ij+1j

 

a2

 

 

 

 

 

 

 

 

 

 

1

2 a2

 

ku~jkh +

a2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2 ku~jkh +

 

 

h2

h2 ku~jkh + kfjkh:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j+1

 

 

 

 

j+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

справедливо для всех i = 0; :::; n.

 

Так как u~0

 

= u~n

= 0, то неравенство

 

 

 

 

 

 

a2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

a2

 

 

 

 

 

 

a2

 

Пусть 1

2

 

0 (т. е.

 

 

 

), тогда, заменив

 

2

 

на 1

2

 

 

,

h2

 

2a2

h2

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j+1

 

 

 

 

 

 

u~

j

 

h + f

j

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

получим

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u~i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

 

 

 

 

j k

 

 

k

 

 

 

 

 

 

k

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

при всех i = 0; :::; n. Значит,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ku~j+1kh ku~jkh + kfjkh:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Используя оценку ku~jkh ku~j 1kh + kfj 1kh

и т. д., придем к цепочке

неравенств

 

 

 

 

 

uj+1

 

 

 

 

 

 

 

 

uj 1

 

 

 

 

 

 

 

fj 1

 

 

 

 

fj

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

+

 

 

 

 

 

h

 

 

 

 

 

 

 

:::

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u~j 1

 

 

 

 

fj 2

 

 

+

fj 1

 

h

+ fj

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

k

~

 

 

kh

k

~

 

kh

+

 

 

 

k

 

 

 

 

 

kh + k kh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u~0

 

 

h +

 

 

f0

 

 

h + f

1

 

h

+ ::: + fj h

:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

k

 

 

 

 

k

 

 

 

 

k

 

 

 

 

 

k

 

 

 

 

k k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

k

 

 

h;

 

 

 

 

 

 

 

k

 

 

 

 

k

 

 

 

k

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

h

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поскольку

k

fj

k

 

 

k

f

k

 

 

для всех j

= 0; 1; :::; m

 

1 и

k

u~0

k

 

=

k

'

k

 

 

,

получим

 

 

 

 

 

 

 

 

 

ku~j+1kh k'kh + (j + 1)kfkh; ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где (j + 1) T

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(j = 0; :::; m 1). Тогда для всех j = 0; :::; m 1

 

 

 

 

 

 

 

 

ku~j+1kh k'kh + T kfkh; ;

а значит,

ku~kh; k'kh + T kfkh; :

Явная разностная схема будет устойчивой только при выполнении

h2

условия 2a2 . В противном случае явная разностная схема не пригодна

71

для вычислений. В случае a2 = 1 условие устойчивости записывается в

виде h2 .

2

Если в систему разностных уравнений вместо значений сеточной функции u~ji подставить значения точного решения дифференциальной задачи u(xi; tj), то для сохранения равенства в правую часть разностных уравнений необходимо ввести дополнительное слагаемое. Если с уменьшением шагов сетки это слагаемое меняется как O(hk) + O( m), то говорят, что разностная схема аппроксимирует задачу с погрешностью O(hk) + O( m).

Утверждение 2.4. Явная разностная схема (2.25) аппроксимирует

задачу для уравнения теплопроводности (2:20), (2:21) с краевыми условиями u(0; t) = g1(t), u(l; t) = g2(t) с погрешностью O(h2) + O( ).

Доказательство. Запишем разностную схему для указанных краевых условий:

 

u~ij+1 u~ij

= a2

u~ij 1 2~uij + u~ij+1

+ f(xi; tj);

 

 

 

 

 

h2

 

i = 1; :::; n 1;

j = 1; :::; m 1;

u~i0 = '(xi); i = 0; :::; n;

u~0j+1 = g1(tj+1);

u~nj+1 = g2(tj+1); j = 0; :::; m 1:

Функции u(x; t) и u~ji в граничных узлах сетки (при t = 0, x = 0, x = l) удовлетворяют одинаковым условиям. Поэтому погрешность аппроксимации в данной задаче связана только с заменой производных разностными отношениями в уравнении теплопроводности. Из равенств (2.23) следует,

что погрешность аппроксимации для рассматриваемой разностной схемы есть O(h2) + O( ).

Заметим, что разностная схема (2.24) аппроксимирует начально-крае- вую задачу для уравнения теплопроводности (2.20)–(2.22) с краевыми условиями третьего рода с погрешностью O(h) + O( ). Это связано с тем, что появляется погрешность O(h) при аппроксимации производных в граничных условиях.

Докажем теперь сходимость явной разностной схемы (2.25).

h2

Утверждение 2.5. При 2a2 явная разностная схема (2.25) схо-

дится в сеточной норме к решению задачи (2:20), (2:21) с краевыми условиями u(0; t) = g1(t), u(l; t) = g2(t).

Доказательство. Доказательство проведем, используя точность аппроксимации и устойчивость разностной схемы. Обозначим w = u u~ разность между точным и приближенным решениями задачи. Очевидно, что

72

во внутренних узлах сетки функция w будет удовлетворять уравнениям

wij+1 wij

= a2

wij 1 2wij + wij+1

+ O(h2) + O( );

 

 

 

h2

i = 1; :::; n 1;

j = 0; :::; m 1;

на нулевом временном слое – начальному условию

 

wi0 = 0;

i = 0; :::; n;

в граничных узлах (x0; tj+1), (xn; tj+1) – краевым условиям

w0j+1 = 0; wnj+1 = 0; j = 0; :::; m 1:

В данном случае f(x; t) = O(h2)+O( ) и '(x) = 0. Применив утверждение

h2

2.3 к разностной схеме для функции w, при выполнении условия 2a2 получим

kwkh; T kO(h2) + O( )kh; T kO(h2)kh; + kO( )kh; :

Поскольку справедливы оценки kO(h2)kh; M1h2; kO( )kh; M2 (см. 1.9), то

kwkh; M(h2 + );

где M = T max(M1; M2), а значит, kwkh; ! 0 при h ! 0 и ! 0. Сходимость доказана только при условии, что шаги сетки по времени

h2

достаточно малы ( 2a2 ). Если условие устойчивости нарушается, то

явная схема не будет сходиться к решению поставленной задачи. От слоя к слою значения u~ji+1 начинают неограниченно расти. Схема “разваливается”.

Неявная разностная схема. Построим для задачи (2.20)–(2.22) неявную разностную схему. Для внутренних узлов сетки запишем уравнение

теплопроводности,

заменив

@u(xi; tj)

разностным отношением “назад”

 

 

 

 

@t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

uij uij 1

 

 

 

 

@2u(xi; tj)

h2

 

 

 

 

+ O( ), а

 

 

 

, как и для явной схемы, разностным от-

 

 

 

 

 

 

 

 

 

 

 

@x2

 

 

ношением

uij 1 2uij + uij+1

+ O(h2):

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

uij uij 1

+ O( ) = a2

uij 1 2uij + uij+1

+ O(h2) + f(xi; tj);

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

i = 1; :::; n 1;

j = 1; :::; m:

Для слоя (xi; t0) запишем начальное условие:

 

 

 

 

 

 

ui0 = '(xi);

i = 0; :::; n;

 

 

 

 

 

73

 

 

а для граничных узлов – краевые условия:

 

 

 

 

R

 

u1j u0j

+ O(h)

 

S

uj

= g

(t

);

 

 

1

h

1

0

1

j

 

R2

unj unj 1

+ O(h) + S2unj = g2(tj);

h

j = 1; :::; m:

Отбросив в уравнениях неизвестные погрешности O(h), O( ), O(h2) получим систему относительно приближенных значений u~ji искомой функции в узлах сетки:

 

u~ij u~ij 1

 

= a2

u~ij 1 2~uij + u~ij+1

+ f(x

; t );

i = 1; :::; n

 

1;

j = 1; :::; m;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

i

 

j

 

 

 

 

 

 

начальное условие:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u~i0 = ui0 = '(xi);

i = 0; :::; n;

 

 

 

 

 

краевые условия:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

R

 

u~1j u~0j

 

S

 

u~j

= g

(t );

R

 

u~nj u~nj 1

+ S

u~j

= g

(t

);

j = 1; :::; m:

 

 

 

1

 

h

 

1

 

0

 

1

 

j

 

 

2

 

 

 

 

h

 

 

2

n

2

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Построенная разностная схема, как

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и явная, является четырехточечной двух-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

слойной разностной схемой. Ее шаблон

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

изображен на рис. 2.4.

 

 

 

 

 

 

(x i −1, t j )

 

( x i , t j )

 

 

 

(x i +1 ,t j )

 

 

 

 

 

 

Схема называется неявной, посколь-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ку значения функции u~ij в данном случае

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

не могут быть вычислены последователь-

 

 

 

 

 

 

 

 

(x i , t j −1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

но через значения функции на (j 1)-м

 

 

 

 

 

 

 

 

Рис. 2.4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

временном слое. Для их нахождения на

систему уравнений

 

 

 

 

 

 

 

 

каждом временном слое следует решать

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(R1 + S1h)~u0j + R1u~1j = hg1(tj);

 

 

 

 

 

 

 

 

 

 

 

 

>u~j

 

 

(2 +

 

h

 

 

)~uj

+ u~j

=

 

 

h

 

 

u~j 1

 

h2f(xi; tj);

 

i = 1; :::; n 1;

 

1

 

 

 

 

 

2

 

 

 

 

 

 

2

 

 

 

> i

 

 

 

 

 

 

 

 

 

i

 

 

 

i+1

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

> R2u~nj 1 + (R2 + S2h)~unj = hg2(tj):

 

 

 

 

 

 

 

 

 

 

>

>

>

:

Значение u~0i для нулевого временного слоя определяется из начального условия u~0i = '(xi) (i = 0; :::; n).

74

Систему уравнений для j-го временного слоя удобно записать в мат-

ричном виде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

B0

C0

0

0

 

:::

 

 

0

 

 

 

j

 

 

F1

 

 

 

2A1

B1

C1

0

 

:::

 

 

0

 

3 2 u~1j

 

2

3

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u~0

7 =

F0

 

 

0

A2

B2

C2

 

:::

 

 

0

 

 

 

j

F.2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 6 u~.2

 

7

:

 

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

.

7

 

6 .

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 6 .

 

6 .

7

 

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7 6

j

 

7

 

6F

 

7

 

 

6

0

0

:::

An

 

1

Bn

 

1

 

Cn

 

17 6u~n

j

17

 

6

 

n 1

7

 

 

6

 

 

 

 

 

 

 

 

 

 

 

7 6

 

7

 

6

Fn

7

 

 

6

0

0

:::

0

 

An

 

 

Bn

 

7 6 u~

n

7

 

6

 

 

7

 

 

6

 

 

 

 

7 6

 

7

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5 4

 

 

5

 

4

 

 

5

 

 

Здесь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

B0 = R1 + S1h; C0 = R1; F0 = hg1(tj);

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

Ai = 1;

 

Bi = 2 +

 

; Ci = 1; Fi =

 

u~ij 1 h2f(xi; tj);

 

 

a2

a2

 

An = R2; Bn = R2 + S2h;

 

 

 

 

 

 

i = 1; :::; n 1

 

 

 

 

 

 

 

 

 

 

 

Fn = hg(tj):

 

 

 

 

 

 

Кратко эту систему можно записать в виде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

~j

 

~ j

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Au~

= F

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

~j

 

 

 

 

 

 

 

 

 

 

 

 

 

~ j

где A – матрица коэффициентов; u~

 

– вектор значений функции u~; F

вектор значений правой части уравнений для j-го временного слоя. Вектор

~ j

F меняется от слоя к слою. Матрица коэффициентов системы A трехдиагональная. Для строк этой матрицы выполняется условие строгого диагонального преобладания jBij > jAij + jCij (i = 0; :::; n). Это условие обеспечивает однозначную разрешимость системы (см. 1.9). Кроме того, для решения системы уравнений с подобной матрицей коэффициентов можно применить метод Гаусса без перестановки строк и столбцов матрицы. Такой метод решения системы уравнений с трехдиагональной матрицей коэффициентов называется методом прогонки. Сначала выполняется прямой ход метода прогонки: вычисляются прогоночные коэффициенты

 

~

 

C0

 

~

 

F0

 

 

C0

=

B0

; F0

=

B0

;

 

 

Ci

 

 

 

 

 

 

~

 

C~i =

 

 

;

F~i =

 

Fi AiFi 1

;

 

~

 

 

 

 

 

 

 

 

 

~

 

 

Bi AiCi 1

 

 

 

 

Bi AiCi 1

 

i = 1; :::; n 1;

 

 

 

i = 1; :::; n:

 

При этом матрица коэффициентов системы преобразуется к верхней тре-

~

угольной матрице, на главной диагонали которой стоят единицы; Ci – нену-

~

левые элементы матрицы, стоящие выше главной диагонали; Fi – числа, стоящие в правой части системы уравнений.

75

Затем выполняется обратный ход (решается система уравнений с верхней треугольной матрицей коэффициентов):

j

~

 

u~n

= Fn;

 

j

~ ~

j

u~i

= Fi Ci u~i+1; i = n 1; :::; 0:

Метод прогонки можно применять только в том случае, когда в фор-

~ ~

мулах для вычисления прогоночных коэффициентов Ci, Fi знаменатели не обращаются в нуль. Это требование будет выполняться, если для матрицы коэффициентов справедливо условие строгого диагонального преобладания. Таким образом, при применении неявной разностной схемы для нахождения приближенного решения поставленной задачи значения u~ji будут определяться последовательно по временным слоям. Для каждого временного слоя необходимо будет решать систему уравнений с трехдиагональной матрицей коэффициентов.

Преимущество неявной схемы заключается в том, что в отличие от явной разностной схемы построенная неявная схема является безусловно устойчивой, т. е. она устойчива при любых и h. Устойчивость и сходимость неявной разностной схемы рассмотрим для задачи (2.20),(2.21) при условии,что функция u(x; t) удовлетворяет краевым условиям первого рода:

u(0; t) = g1(t); u(l; t) = g2(t):

Неявная разностная схема в этом случае имеет вид

8u~0j = g1(tj);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

> j

 

 

 

h2

j

 

j

 

 

h2

 

j

1

 

2

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>u~

i

1

 

(2 +

 

 

)~u

+ u~

i+1

=

 

 

 

u~

 

 

 

h

f(xi; tj);

 

 

 

2

 

 

2

 

 

 

>

 

 

a

i

 

 

 

a

 

i

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

<

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2.27)

>

j

= g2(tj);

 

 

 

 

 

 

 

 

 

 

i = 1; :::; n 1;

 

>u~

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

:u~i0 = '(xi);

i = 0; :::; n:

 

 

 

 

 

 

 

 

 

 

 

Пусть функция u(x; t) удовлетворяет однородным краевым условиям g1(t) = 0 и g2(t) = 0. Справедливо следующее утверждение.

Утверждение 2.6. Неявная разностная схема (2.27) устойчива по начальным данным и правой части, т. е.

ku~kh; C(k'kh + kfkh; );

где C не зависит от h и .

76

Доказательство. Для всех внутренних узлов j-го временного слоя выполняется равенство

u~ij 1 2 +

 

h2

u~ij + u~ij+1 =

 

h2

 

 

 

 

 

 

 

u~ij 1 h2f(xi; tj)

 

 

2

 

 

или

h2

 

 

 

 

 

h2

 

2 +

=

u~ij 1 + u~ij+1 +

:

 

 

u~ij

 

u~ij 1 + h2f(xi; tj)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тогда справедлива

оценка

 

 

 

 

 

 

 

 

2 +

h2

ju~ijj ju~ij 1j + ju~ij+1j +

h2

 

 

 

 

ju~ij 1j + h2jf(xi; tj)j:

 

 

 

Пусть ku~jkh и kfjkh – наибольшие по модулю значения сеточных функций u~ и f на j-м временном слое, тогда

2 +

h2

ju~ijj 2ku~ijkh +

h2

 

 

ku~ij 1kh + h2kfjkh:

 

 

Функция u~ удовлетворяет однородным краевым условиям u~j0 = u~jn = 0, поэтому последнее неравенство выполняется для всех i = 0; :::; n, и тогда

2 +

h2

ku~jkh 2ku~ijkh +

h2

 

 

 

 

 

 

 

ku~ij 1kh + h2kfjkh:

 

 

Преобразуем это неравенство:

 

 

 

 

 

 

 

 

 

 

 

 

uj

kh

uj 1

kh

+

 

k

fj

kh

:

 

 

k~

k~

 

 

 

 

Последовательно применяя его к (j 1)-му, (j 2)-му и т. д. слоям, получим: ku~jkh ku~j 2kh + kfj 1kh + kfjkh :::

ku~0kh + kf1kh + kf2kh + ::: + kfjkh :

Учитывая равенство ku~0kh = k'kh и оценки kfjkh kfkh; , j T для j = 1; :::; m, получим неравенство

ku~jkh k'kh + T kfkh; ;

которое будет выполняться для всех j = 1; :::; m, а значит,

ku~kh; k'kh + T kfkh; :

Очевидно, что неявная разностная схема аппроксимирует задачу для уравнения теплопроводности с той же погрешностью, что и соответствующая явная схема. Если функция u(x; t) удовлетворяет краевым условиям

77

первого рода u(0; t) = g1(t) и u(l; t) = g2(t), то погрешность аппроксимации разностной схемы (2.27) будет O(h2) + O( ).

Из устойчивости и аппроксимации следует сходимость неявной разностной схемы. Доказательство сходимости абсолютно аналогично доказательству сходимости явной разностной схемы.

Схема Кранка–Николсона. Неявная разностная схема хотя и не имеет ограничения на шаги по времени , но поскольку ее погрешность аппроксимации равна O( ) + O(h2), то разумно выбрать шаги достаточно малыми (порядка O(h2)). Более высокую точность аппроксимации по времени имеет схема Кранка–Николсона. Это шеститочечная двухслойная неявная разностная схема (рис. 2.5).

 

 

 

 

 

 

 

 

 

 

Построим эту схему для уравнения

 

 

 

 

 

 

 

 

 

 

теплопроводности (2.20) при условии, что

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

функция u(x; t) удовлетворяет начально-

 

 

 

 

 

 

 

 

 

 

му условию (2.21) и краевым условиям

 

( x i −1, t j )

 

( x i , t j )

 

(x i +1 , t j )

первого рода u(0; t) = g1(t), u(l; t) = g2(t).

 

 

 

 

 

 

 

 

 

 

Между узлами сетки (xi; tj)

 

 

и (xi; tj+1)

 

 

 

 

 

 

 

 

 

выбирается

точка

 

+

 

 

) (рис. 2.5).

 

( x i −1, t j −1)

 

( x i , t j −1)

 

(x i +1 , t j −1)

(xi; tj

 

 

 

 

 

 

 

 

 

 

Рис. 2.5

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для этой точки записывается уравнение

 

 

 

 

 

 

 

 

 

 

теплопроводности. При этом

@u

заменя-

 

 

 

 

 

 

 

 

 

 

 

@t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

uij uij 1

+O

 

 

2

(см. 1.9),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

j

j

 

 

 

 

 

 

 

 

 

 

 

 

 

j

 

 

ется центральным разностным отношением

2( =2)

 

2

 

 

 

 

 

 

@ u

 

 

 

 

 

 

 

ui 1 2ui + ui+1

 

2

 

а

 

@x

2

в этой точке находится как полусумма

 

2

 

 

 

 

 

 

+ O(h

) и

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

 

 

 

uij 11 2uij 1 + uij+11

+ O(h2). После отбрасывания погрешностей аппрокси-

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

мации производных получается неявная разностная схема Кранка–Никол- сона:

u~ij u~ij 1

=

 

 

u~ij 1 2~uij + u~ij+1 + u~ij 11 2~uij 1 + u~ij+11

 

 

=

 

 

2h2

 

i = 1; :::; n 1; j = 1; :::; m:

+ f(xi; tj 1 + 2);

Начальное условие:

u~0i = '(xi); i = 0; :::; n:

Граничные условия:

u~j0 = g1(tj); u~jn = g2(tj):

Погрешность аппроксимации такой разностной схемы равна O(h2)+O( 2).

78

Иногда значение f(x

; t

+

 

 

) заменяют полусуммой

f(xi; tj) + f(xi; tj 1)

.

2

i

j 1

 

2

 

Тогда для внутренних узлов сетки (xi; tj) схема Кранка–Николсона получается как полусумма неявной схемы, записанной для узлов (xi; tj), и явной схемы, построенной для узлов (xi; tj 1). Погрешность аппроксимации разностной схемы в этом случае также O(h2) + O( 2).

3.УРАВНЕНИЕ КОЛЕБАНИЙ СТРУНЫ. ВОЛНОВОЕ УРАВНЕНИЕ

3.1. Уравнение колебаний струны

Рассмотрим туго натянутую струну, т. е. тонкую упругую (подчиняющуюся закону Гука) гибкую нить. Ось 0x направим вдоль струны. Предположим, что струну вывели из положения равновесия, например оттянули или ударили по ней. Будем считать, что возникающие при этом поперечные колебания струны происходят в одной плоскости 0xu и все точки струны движутся перпендикулярно оси 0x. Обозначим через u(x; t) отклонение точек струны от прямолинейной формы. Функция u(x; t) описывает поперечные колебания струны при t 0. График функции u(x; t) (рис. 3.1) зависит от момента времени t и представляет собой форму колеблющейся струны в данный момент времени t.

 

 

 

 

U

 

 

 

 

 

 

F

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T (X + X , T )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

B

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

α

1

A

 

 

 

α

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T ( X , T)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

X

 

X +

X

 

 

X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.1

 

 

 

 

 

 

 

При фиксированном x функция u(x; t)

описывает закон движения, про-

 

@u(x; t)

 

 

 

 

 

 

 

 

 

 

 

@2u(x; t)

 

изводная

 

– скорость движения, а вторая производная

 

 

@t2

 

@t

 

 

 

 

 

 

 

 

 

 

 

 

ускорение выбранной точки струны.

Для вывода уравнения поперечных колебаний струны сделаем следующие предположения:

1.Будем считать, что струна совершает только малые колебания, т. е.

ееформа незначительно отличается от прямой u = 0. Касательная в каждой точке x, проведенная к графику u(x; t), почти параллельна оси абсцисс. Пусть (x; t) – угол, который образует касательная с осью 0x. Условие ма-

79