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

книги из ГПНТБ / Годунов С.К. Разностные схемы. Введение в теорию учеб. пособие

.pdf
Скачиваний:
36
Добавлен:
25.10.2023
Размер:
14.18 Mб
Скачать

150 ГЛ. 5. СХОДИМОСТЬ, АППРОКСИМАЦИЯ И УСТОЙЧИВОСТЬ

если по-прежнему А = 20

 

и ставится

та же

цель

удовлетворить

условию

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6(1)

 

< 1.

 

 

 

 

 

(3)

 

 

 

 

 

"(О

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Решение этой задачи имеет вид (см. равенство

(12)

из

§ 8

при

b =

1):

 

 

 

 

 

 

 

 

 

 

 

un

= e-Ax"

+ h2 2Ахп -

3

А 2 - А

Х П

+

 

еА'п]

+

О (/г3).

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

Ошибка, таким образом, имеет вид

 

 

 

 

 

 

 

б Ы

-

h2

А2е~Ах«

 

+ ( - 1)»

 

+

О (/г3)

 

Пренебрежем

слагаемым

 

О (/г3 ),

выпишем

отношение

ошибки

6(#п) к точному решению

и(хп)

е

' п и определим шаг h из

условия

(3).

Этот шаг

 

окажется

столь

малым,

что

если

условно принять машинное время расчета по схеме (1) за одну

секунду, то по схеме (2) придется затратить

около

четырех

суток!

 

 

Дело в том, что оценку практической пригодности

той или

иной схемы для решения определенной задачи

следует делать

не только по степени h, входящей в выражение погрешности, но еще и по коэффициенту при этой степени.

Теперь постараемся понять, как можно судить о пригодности

той или иной разностной схемы

Lni№

=

/W из исследования ее

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

будем

считать

оператор

I / i линейным. Напомним (см. §

12),

что

разностная

схема

назы­

вается устойчивой, если при любом /<Л) е

F n она однозначно

раз­

решима, причем решение ы( Л ) е

11к

удовлетворяет

оценке

 

Доказывая в § 12 теорему о том, что из аппроксимации и

устойчивости следует сходимость, мы получили для

погрешности

г№) = [и]п — и(Н)

неравенство

 

 

 

 

 

 

 

 

|2<»lkV

CCxkk,

 

 

 

 

(4)

в котором C{h

представляет

собой оценку

величины

погреш­

ности аппроксимации:

l M « W ( W l k < C i A * .

|| г

Пусть

ошибка аппроксимации

Cxhk мала. Из

оценки

для

т

\\цА

видно, что для малости

величины || [н]Л

— u<f> ||у

надо

 

 

 

 

t

 

§ 17. КОЛИЧЕСТВЕННАЯ ХАРАКТЕРИСТИКА УСТОЙЧИВОСТИ

151

еще, чтобы не был слишком велик коэффициент С, характери­ зующий устойчивость.

Поэтому, если мы хотим выяснить пригодность той или иной разностной схемы для решения интересующей нас задачи, мало знать, что схема устойчива. Нужно еще знать примерно вели­

чину коэффициента

С, суждение о которой можно получить спо­

собами, указанными в §§ 14, 15, экспериментальными

расчетами

или каким-нибудь косвенным образом.

 

Подсчитаем, например, коэффициент С для разностных схем

(1)

и (2) решения

задачи и'-\- Аи = ср (лг), «(0) — а,

о которых

шла

речь в начале

параграфа.

 

Сначала рассмотрим схему

 

 

U n +

l ~ U n

+

Aun

=

c?n,

•0,

1

N - l ,

 

 

 

 

 

 

и0 =

а

 

 

 

 

при нормах

 

 

 

 

 

 

 

 

 

 

 

] » № ) L A

=

max|«„

l/wIF/k = max[|a| ,

т а х | ф „ | ] .

Приведем

ее к

виду

 

 

 

 

 

 

 

 

 

 

 

 

уп+] = Rhyn

+ hpn,

 

 

 

 

 

 

 

 

 

у0

задано,

 

 

 

 

 

 

*

 

 

 

 

 

 

 

 

 

 

положив уп

=

ип, Rn

=

(l

— Ah),

р я = ф„. Положим

\\уп\\ =

Тогда

условия

(17)

из

§

14

выполнены:

 

 

 

 

 

 

 

 

II " < / г ) 1 1 г / л < С 2 т а х | | У п

 

 

 

 

 

 

 

 

 

 

 

 

п

 

 

 

 

 

 

 

 

 

iipj<c2 ||H|F f t ,

 

 

 

 

 

 

 

 

 

1 Ы К С 2 | | Г "

 

 

 

причем

можно

положить

С 2 = 1 .

 

 

 

Далее,

очевидно,

J R l l =

(1 — Л/г)". Поэтому

можно

жить С =

2 max [1, (1 — Л/г)"]. Отсюда

 

 

 

 

 

 

 

 

 

 

2,

если

Л >

0,

 

 

 

 

 

 

 

2(1 — Ahf,

если

Л < 0 .

 

п\-

(5)

поло­

Покажем, что число С нельзя взять существенно меньшим. Нормы выбраны нами так, что выполнены и условия (&) и (7) из § 15;

ЫН)Ькхты\\Уп\\.

(6)

152

 

ГЛ. 5. СХОДИМОСТЬ,

АППРОКСИМАЦИЯ

И

УСТОЙЧИВОСТЬ

 

а при

<p„ =

0

(р„ =

0)

также

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 Ы 1 > М 2 | | / № > 1 к ,

 

 

 

 

 

(7)

причем

можно

положить

Л 4 1 = М 2 = 1 . Поэтому

постоянная С

обязана

удовлетворять,

как

установлено

в

§

15,

оценке

OMiM2max\\Rnh\\:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

1,

 

если

А > 0,

 

 

 

 

 

 

 

С

>

{

(1 -

Ah)N,

если

 

Л < 0 .

 

 

 

Теперь оценим постоянную С, входящую в определение

устойчивости U ( W | y A < C i / ( f t ) I F

. для

разностной

схемы

(2). За­

пишем

ее в

виде

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

уп+\ = R„yn

+

hpn,

 

я =

0,

1, . . . . 1

 

 

 

 

 

 

Уо

задано,

 

 

 

 

 

 

J

 

 

положив

для

этого

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Уп =

 

 

 

 

 

' 2ф„"

 

 

 

 

 

 

 

 

 

. Un

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 Ah

 

1

 

Уо:

(1 -

Ah)'

 

 

 

 

 

 

 

 

 

 

1

 

0

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выберем

нормы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

II и<« \\Uh =

 

m a x I un

I,

 

 

 

 

 

 

 

 

 

 

 

Фл

 

 

 

 

 

 

 

 

 

 

 

 

 

I I P 11 =

 

а

 

= m a x [ | a I, I p I. m a x | ф „ | ] ,

 

 

 

 

 

 

 

 

Р

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= m a x [ | ^ ) | , | i r « ) | J .

 

 

Тогда

выполнены

условия

(5) — (7),

причем

С2 = М{

= М2 = 1.

Поэтому

в

силу

п. 3

из

§

14 в

качестве

постоянной С

можно

взять число

С = 2С2

max || Rt || =

2 max [ Rh ||,

но в силу

(6")

из § 15

пп

нельзя более чем вдвое уменьшить его: заведомо должно быть

С > МХМ2 max || Rnh || = max || Rnn ||.

§ 17. КОЛИЧЕСТВЕННАЯ ХАРАКТЕРИСТИКА УСТОЙЧИВОСТИ

153

Оценка сверху для величины тах||/?"|| была получена в § 14:

 

 

 

 

 

 

 

- 2 Ah

1

< ( 1

+

2|

A\h)N.

 

 

 

 

 

 

 

 

1

 

0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поэтому можно положить

 

 

 

 

 

 

 

 

 

 

 

C =

2 e 2 ^ l > 2 ( l + 2 |

 

А\п)т.

 

Оценку

снизу

для

т а х | | Я л |

получим

из

условия

| R"h\>[ к \п,

где К—-большее

 

по модулю

из двух собственных чисел матрицы

Rh.

Решая

уравнение

det(Rh

ХЕ) =

0,

найдем

собственные

числа:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Я, = 1

Ah + ^ 1

+

0 ( / г 2 ) = 1

Ah + O (h2),

 

 

= - 1 - Ah - A2h2

+ О (h2) :

- 1 - Ah + О (h2),

так

что

 

max (I

Я, I,

Я2 |) =

1 + \A\h

+

0(h2),

 

 

 

 

 

 

 

 

 

max J Rnh

\ =

 

 

(\+\A\h)m+0(h).

 

Поэтому

найденную

выше

постоянную

С = 2 е 2 |

л 1 заведомо

нельзя заменить числом меньшим, чем (1

 

-\-\A\h)l'h

т. е.

нельзя

существенно

 

умень­

 

 

 

 

 

 

 

 

 

 

 

 

шить.

А = 20

 

 

 

 

 

 

 

 

 

 

 

При

для

первой

 

 

 

 

 

 

схемы С =

2,

а

для

второй

 

 

 

 

 

 

заведомо

С

 

о 20

 

108

 

 

 

 

 

 

 

 

При

Л «

1

или

 

А < 0

в

 

 

 

 

 

 

свойствах устойчивости

обеих

 

 

 

 

 

 

схем

нет

коренного

 

различия:

 

 

 

 

 

 

постоянная С для обеих схем

 

 

 

 

 

 

примерно

одинакова.

 

 

 

 

 

 

 

Рис. 4.

 

Легко

понять

механизм,

в

 

 

 

 

 

силу

которого

при

/1 >

1 по­

 

 

 

 

 

 

стоянная С для второй схемы много больше единицы, в то время

как для

первой С — 2.

 

 

 

 

 

 

Общее решение однородного уравнения ип+\0

А п ) и п =

=

0,

соответствующего

схеме

(1), есть un = aqn,

где q — ко­

рень

характеристического

уравнения

q—(1—Ah)

— 0, q —

=

1—Ah

(рис.

4). Общее решение

однородного

уравнения

 

 

 

 

un+i

+ 2Ahun

u„-i — 0,

 

соответствующего

схеме

(2),

есть

 

 

154 ГЛ. 5. СХОДИМОСТЬ, АППРОКСИМАЦИЯ И УСТОЙЧИВОСТЬ

где q\ и Цч — корни характеристического уравнения

q1 + 2Ahq

1 =

det (Rn

-

qE) = О,

 

 

 

<7r

l-Ah

+ ^

+

o(h2),

 

 

 

 

q2-

1 -

Ah

A2h2

+

о (ft2).

 

 

 

 

 

 

 

 

 

Корень q\ «похож» на корень

q—\Ah,

и

ему

соответ­

ствует решение qf,

похожее на

решение

qn

первого

уравнения.

Но «паразитический» корень q2

= —1 Ah +

О (ft2)

дает

быстро

 

и

возрастающее «паразитическое» ре-

 

' *

шение

q2

(рис. 5), которое

и обус­

 

 

ловливает большое значение

С.

 

 

 

При

отрицательных

А

будет

 

 

q >

1,

qi >

1, |<7г| <

1.

Решения*?"

 

 

 

Рис.

5.

 

 

Рис.

6.

 

 

 

 

и qf,

соответствующие

корням

q и q\, примерно

одинаково

быстро

растут,

а паразитическое

решение q2

затухает,

не

ока­

зывая влияния

на характер устойчивости второй схемы

(рис.6).

Отметим, что большое

значение С при А <С 0 неизбежно

для

любой разностной схемы, приближающей задачу

и'-\-Аи

— 0,

и(0)

=

а. В самом деле,

при малых h решение устойчивой

раз­

ностной

задачи

похоже

на решение дифференциальной

задачи,

к которому оно при ft->0

сходится. Но решение дифференциаль­

ной

задачи

и =

и0е-Ах

таково, что т а х | « ( л : ) |

=

| ы 0 | е - А х ,

т. е.

max|u(x)|

в большое

число е~А

раз превосходит

модуль

0 |

начального значения «о-

 

 

 

 

 

 

 

Мы должны еще отметить, что большой коэффициент С ве­

дет

не только к

необходимости расчетов с мелким

шагом,

но и

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

приходится

вести вычисления.

 

 

 

 

 

 

 

 

§ 18.

П Р И Е М

И С С Л Е Д О В А Н И Я У С Т О Й Ч И В О С Т И

155

В самом деле,

в §

16 мы показали, что ошибки

округления

можно включить в ошибки при задании правых частей, которые

оцениваются величиной Cihh.

Увеличение

этих ошибок вызы­

вает

увеличение коэффициента

С ь

что при большом С в силу

(4)

может катастрофически сказаться на

точности результата.

В заключение этого параграфа

мы хотели бы еще предосте­

речь читателя от ложного впечатления о схемах второго порядка точности, которое могло у него создаться из рассмотренного примера. Мы вовсе не хотим опорочить все такие схемы, опи­ сывая недостатки одной из них. Читателю будет очень полезно провести самостоятельное изучение схемы второго порядка точ­ ности вида

 

Г

+ А

2

 

=

0 '

(

 

 

 

 

 

 

Ы 0 = 1 .

J

 

 

Стремясь добиться, чтобы при А =

1

погрешность

6(1)

была

меньше, чем «(1)

= е~А,

он убедится,

что эта схема

наклады­

вает менее жесткое ограничение на

шаг

h,

чем схема первого

порядка точности

(1).

 

 

 

 

 

 

 

 

Кроме того, советуем прикинуть, с каким шагом надо инте­

грировать задачу

и' -+- и = 0,

м(0) =

 

1, чтобы получить

в и(1)

погрешность не более Ю - 5 . Если читатель проделает эту при­ кидку для рассмотренных в начале параграфа разностных схем

(1) и (2), то увидит, что схема первого порядка точности (1) требует значительно более мелкого шага, чем схема второго по­ рядка точности (2).

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

§ 18. Прием исследования устойчивости нелинейных

задач

Способы исследования устойчивости, изложенные в §§ 14 и 15, были непосредственно приспособлены для разностных урав­ нений с постоянными коэффициентами. Поэтому может пока­

заться, что нельзя использовать приведенный

в этих

парагра­

фах материал для анализа схем интегрирования даже

уравне­

ний - ~ —G(x,

и) с довольно общей функцией

G. Однако это

не так.

 

 

 

 

 

 

 

 

Пусть

интересующая

нас

интегральная

кривая

уравнения

 

 

 

*L

= G(x,u)

 

 

 

(1)

проходит

через

точку с

координатами х =

х0,

и =

«Q .

Вблизи

156

ГЛ. 5. СХОДИМОСТЬ, АППРОКСИМАЦИЯ

И

УСТОЙЧИВОСТЬ

 

этой точки

имеем

 

 

 

 

 

 

 

 

 

G(x,

и) ~

д 0 ( д х ; и )

{и -

и0) + d G { £

и )

(х -x0)

+ G (х0,

иа),

(2)

и поэтому

уравнение (1) с определенной точностью

может

быть

заменено более

простым:

 

 

 

 

 

 

 

 

 

 

 

 

*L-Au-=*<f(x),

 

 

 

 

 

(3)

где

 

 

 

 

дО (х,

и)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ди

 

Х—Ха

 

 

 

 

 

i

\

 

 

 

dG (х, и)

 

И=«о

 

 

 

 

 

^ /

\

I

_ у

) _

9 0

(*<

»)

 

Ф (*) =

G 0,

щ) Н

 

 

 

 

 

 

 

 

X— XQ

 

 

 

 

I X — • XQ

 

Естественно, что схемы, которые мы хотим применять для нахождения нужного решения, должны хорошо интегрировать уравнение (3), аппроксимирующее уравнение (1) вблизи неко­ торой точки, через которую проходит интегральная кривая. Ко­ нечно, для разных точек этой кривой величина коэффициента А, полученного описанным способом линеаризации исходного урав­ нения, будет различной. Поэтому, отбирая ту или иную разност­ ную схему, мы должны будем ее проверить на уравнении (3) не с одним значением А, а с целым набором таких значений, до­ статочно полно описывающим диапазон изменения dG/du вдоль интегральной кривой. В подавляющем большинстве практически встречающихся случаев такого исследования оказывается до­ статочно для выявления всех существенных недостатков и до­ стоинств схемы, относящихся к характеру сходимости получен­ ных по ней приближенных решений.

Такой же метод построения модельных уравнений может быть применен и в случаях систем уравнений и уравнений выс­ ших порядков.

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

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

Г Л А В А 6

У П О Т Р Е Б И Т Е Л Ь Н ЫЕ РАЗНОСТНЫЕ СХЕМЫ

§ 19. Схемы Рунге —Кутта и Адамса

Изложим здесь некоторые употребительные разностные схе­ мы решения задачи Коши для дифференциального уравнения первого порядка

— G (х, и) = О, 0 < * < 1, I

и(0) = а.

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

Выберем на отрезке 0 ^ х ^ 1 сетку точек

0 = х0 < Xi < *2 < • • • < x N - i < xN = \, xn = nh, h = l/N,

и будем составлять разностные схемы для приближенного оты­ скания таблицы [u]h значений решения и(х) на выбранной сетке.

С простейшей употребительной схемой мы уже встречались. Это — схема Эйлера

(

 

 

 

Щ =

а,

 

 

 

 

(2)

 

 

 

 

 

 

 

 

обладающая

первым порядком

аппроксимации

(и точности).

Вычисления

по

этой схеме

имеют

простой

геометрический

смысл. Если ип

уже вычислено, то вычисление

 

 

 

 

 

 

ип+\ = un + hG(xn,

 

ип)

 

 

 

равносильно

сдвигу

из точки

п,

ип)

в

точку

п

«n+i)

на

плоскости Охи

по касательной

к интегральной

кривой

и =

и(х)

дифференциального

уравнения

и' =

G(x,

и), проходящей через

точку п,

ип).

 

 

 

 

 

 

 

 

 

158

ГЛ. 6. УПОТРЕБИТЕЛЬНЫЕ РАЗНОСТНЫЕ СХЕМЫ

Среди схем более высокого порядка аппроксимации наиболее употребительны различные варианты схем Рунге—Кутта и Адамса, которые мы опишем и сопоставим.

1. Схемы Рунге Кутта. Пусть значение ы„ приближенного решения в точке х„ уже найдено и требуется вычислить ип+\ в точке хП+1 = хп-\- h. Задаем целое / и выписываем выражения

 

ki — G (хп,

 

ип),

 

 

 

 

 

 

 

 

k2

— G (хп

+

а/г, ип

+

ahk{),

 

 

 

 

k3

= G (хп

+

р/г,

и п

+ р / г £ 2 ) ,

 

 

 

 

kt

= G (хп

+

yh,

ип

+

yhki.y).

 

 

 

Затем

полагаем

 

 

 

 

 

 

 

 

 

 

 

Lhu™

=

( р

Л

+ . . .

+ptk,)

=

0K n =

0,h

 

...,N-l,

 

 

 

 

 

и0

= а.

 

 

 

 

 

 

 

 

 

 

 

 

 

Коэффициенты а, р, . . . ,

у» Рь Рг>

• • •> Pi подбираем

так,

чтобы

получить при заданном

/ аппроксимацию

возможно

более вы­

сокого порядка. Зная ип,

можно

вычислить

kb

ku

а

затем

 

ип+\

п

+

hipiki

+

...

+

Pikt),

 

 

 

Простейшей схемой Рунге — Кутта является схема Эйлера

( / = 1 ) .

Схема Рунге — Кутта

««+.-«»

_JL{kl

 

+

2k2

+

2k3 + k4)

= 0,

LhuM

h

 

 

 

 

 

 

 

 

 

п = 0,

1

 

N — 1,

(3)

где

 

 

 

 

 

 

 

щ =

a,

 

 

 

 

 

 

 

 

 

ki =

G (хп,

ип),

 

 

 

 

 

 

k2

=

G[xn+^,

2

 

ипЛ-Щ-

 

 

 

 

 

 

 

 

 

 

 

k3

=

 

h_

 

,

k2h\

 

G[xn+^r, 2

. tiы„n -+Г

—)

h

 

 

 

 

 

 

 

h

 

 

k3

=

G (хп +

h,

ип

+

k3h),

 

 

имеет четвертый порядок аппроксимации.

 

 

§ 19. СХЕМЫ РУНГЁ - КУТТА И АДАМСА

159

Схема Рунге — Кутта

f

Un+i

ип

-*. +

25-*»]=0в

- I

 

4

 

 

 

 

(4)

 

я =

0, 1

Л/ — 1,

где

 

 

 

 

 

 

&i = G (хп,

«„),

2 =

С (*„ + а/г,

и„ +

ahkx),

при любом фиксированном а имеет второй порядок аппрокси­ мации.

Мы докажем только утверждение о схеме (4). Доказатель­ ство утверждения о схеме (3) аналогично, но более громоздко.

Решение и(х) уравнения и'— G(x, и) удовлетворяет тождествам *

- ^ - = 0 (х, и О)),

 

d2u

d _,

 

dx2

dx

Поэтому из формулы

Тейлора

и (хп +

//) — « (хп)

 

А

 

. dG , dG _ dx du

•• и' (хп) + j и" (хп) + О 2 )

для решения

и (х)

следует равенство

 

и (xn

+ i)

и (хп)

(5)

 

 

 

 

 

 

 

 

 

 

 

 

 

«=" (*«)

 

 

Но,

разлагая

по А функцию двух

переменных

по формуле

Тейлора

и

удер­

живая члены

первой степени,

получим

 

 

 

 

 

 

 

2 а -

1

 

 

 

2 а - 1 G +

4-G(х

+

ah, и +

аАО)

 

 

 

 

 

х = х п

 

 

 

 

-лп

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

"="

(хп)

 

2а -

1

G

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

«=« (*„)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+ О 2).

(6)

 

 

 

 

 

 

 

 

 

 

" = и

(*п)

 

 

Поэтому при подстановке в левую часть

равенства (4) вместо ип и

un+i

соответственно

значений и(х„)

и

и(хп + ,)

решения

и(х)

получится

выраже­

ние,

совпадающее с

левой частью

равенства (5)

с точностью до О (Л2 ).

Сле­

довательно, это выражение имеет второй порядок относительно А. Поскольку

значение

и0 — а задано

точно, этим завершается' доказательство того, что

схема (4)

имеет второй

порядок аппроксимации.

Соседние файлы в папке книги из ГПНТБ