main (1160440), страница 21
Текст из файла (страница 21)
Обозначим = ( , ).§3. Многошаговые разностные методы123Определение. Линейным -шаговым разностным методом решения задачи (1) называется разностная схема вида∑︁=0− =∑︁ − ,(2)=0где ∈ N, > 0 – шаг сетки , , ∈ R, = 0, , причем 0 ̸= 0, ̸= 0.Замечание. Уравнение (2) следует рассматривать как рекуррентное соотношение, выражающее новое значение = ( ) через найденные ранее значения −1 , −2 , . . .
, − .Уравнение (2) определено для = , + 1, . . . и требует для начала расчета задания начальных значений 0 , 1 , . . . , −1 . Значение 0 = (0) определяется исходной задачей (1), а величины 1 , . . . , −1 можно вычислить с помощью других методов, например,с помощью рассмотренного выше метода Рунге–Кутта. В дальнейшем мы будем предполагать, что величины 0 , 1 , . . .
, −1 уже заданы.Если в разностной схеме (2) 0 = 0, то рассматриваемый метод называется явным, иискомое значение выражается явным образом через предыдущие:=1=1∑︁∑︁ 0 = − −− .Если 0 ̸= 0, то метод называется неявным, и для нахождения приходится решатьнелинейное уравнение0 − 0 ( , ) = (−1 , . . . , − ),где (−1 , . . . , − ) =∑︁( − −=1− ).Обычно это уравнение решают итерационным методом Ньютона, выбирая начальное приближение равным −1 (этот метод мы рассматривали в §3 главы 3).Заметим, что коэффициенты уравнения (2) определены с точностью до множителя.
Дляопределенности будем считать, что выполнено условие∑︁ = 1.=0Это означает, что правая часть разностного уравнения (2) аппроксимирует правую частьдифференциального уравнения (1).Определение. Погрешностью аппроксимации разностной схемы (2) на решении исходной задачи (1) называется сеточная функция = −∑︁=0− +∑︁ (− , − ),=0заданная на сетке , где = ( ) — решение исходной задачи (1).(3)124Глава 5.
Методы решения ОДУ и систем ОДУВыясним вопрос о порядке погрешности аппроксимации при → 0 в зависимости отвыбора коэффициентов , , = 0, . Будем предполагать в дальнейшем, что все рассматриваемые функции обладают необходимой гладкостью. Разложим − по формулеТейлора в точке :− = ( − ) =∑︁(− )!=0(︀)︀() ( ) + O +1 .Разложим правую часть исходного дифференциального уравнения в этой же точке:′− = ( − ) = ( − ) =−1∑︁(− )!=0(︀ )︀(+1) ( ) + O .Подставим эти разложения в выражение (3) и получим−1∑︁∑︁∑︁(︀ )︀ ∑︁ (− ) ()(− ) (+1) = − ( ) +( ) + O .!!=0=0=0=0Передвинем на единицу индекс суммирования во втором слагаемом, а также домножими поделим на выражение, стоящее под знаком суммирования: = − ∑︁∑︁ (− )=0 =0() ( ) +! ∑︁∑︁=1 =0 (︀ )︀(− )−1 () ( ) + O .( − 1)!Объединив две суммы под общим знаком суммирования (для этого необходимо выписатьотдельно нулевое слагаемое первой суммы), получим)︃(︃ ∑︁∑︁∑︁∑︁ (− )(︀ )︀(− )−1 ()() = −( ) + ( ) + ( ) + O .−!!=0=1=1=1После очевидных преобразований получаем: = −∑︁=0( ) + ∑︁∑︁(− )−1=1 =0!(︀ )︀() ( )( + ) + O .Отсюда видно, что погрешность аппроксимации (3) имеет порядок , если выполненыследующие условия:∑︁ = 0,=0∑︁ −1 ( + ) = 0, = 1, 2, .
. . , .=0Вместе с условием нормировки∑︁ = 1=0эти условия образуют систему из ( + 2)-ух линейных алгебраических уравнений относительно 2( + 1) неизвестных 0 , 1 , . . . , , 0 , 1 , . . . , .§3. Многошаговые разностные методы125Полученную систему можно несколько упросить. Рассмотрим последние условия при = 1:∑︁( + ) = 0,=0∑︁ = −=0то есть∑︁ = −1,=0∑︁ = −1.=0Окончательно получаем следующую систему уравнений:⎧∑︀⎪⎪ = −1,⎨=1∑︀⎪⎪ −1 ( + ) = 0,⎩(4) = 2, ,=0в которой коэффициенты 0 , 0 вычисляются по формулам0 = −∑︁ ,0 = 1 −=1∑︁ .=1Таким образом, мы уменьшили число уравнений в системе до и число неизвестных до2. Чтобы система не была переопределенной (в таких системах число уравнений большечисла неизвестных) необходимо выполнение условия 6 2.Таким образом наибольший возможный порядок аппроксимации неявных -шаговыхразностных методов равен 2, явных — (2 − 1), так как в явных методах 0 = 0, и числонеизвестных в системе (4) меньше на единицу по сравнению с системой, записанной длянеявного метода.Замечание 1.
Если убрать последние уравнений системы (4), = (︀1, ( −)︀ 1), то полу−чим условия, обеспечивающие порядок погрешность аппроксимации O .Замечание 2. В практике вычислений наибольшее распространение получили методыАдамса, которые представляют собой частный случай многошаговых методов (2), когдапроизводная ′ () в исходном уравнении аппроксимируется по двум крайним точкам 0 и , то есть 0 = 1, 1 = −1, = 0, = 2, : − −1 ∑︁= − .=0Замечание 3. Разностные схемы вида (2), обладающие наивысшими порядками аппроксимации на решении исходного уравнения, неустойчивы и не могут быть использованына практике.
Максимальный порядок аппроксимации устойчивого неявного -шаговогометода не превосходит ( + 1), если нечетно, и не превосходит ( + 2), если четно.Порядок аппроксимации устойчивых явных схем не превосходит . Подробнее понятиеустойчивости -шагового разностного метода мы рассмотрим в следующем параграфе.В завершение рассмотрим достоинства и недостатки многошаговых разностных методов по сравнению с методом Рунге–Кутта.Достоинства:126Глава 5.
Методы решения ОДУ и систем ОДУ1. Формулы многошаговых методов значительно проще.2. Многошаговые методы позволяют достигать большей точности.Недостатки:1. В многошаговых методах необходимо хранить в памяти большее число элементов —значения нескольких предыдущих шагов вместо одного.2. Многошаговые методы требуют наличия «разгонного этапа», то есть значений нескольких первых шагов, которые нельзя вычислить по многошаговым формулам.
Как мыуже упоминали, эти значения обычно вычисляют с помощью метода Рунге–Кутта.§4Понятие устойчивости разностного методаИзвестно, что на практике вычисления проводятся приближенно, то есть при задании исходных данных и в процессе самих вычислений допускаются погрешности. Численный метод называется устойчивым, если погрешности, допущенные на каком-то этапе вычислений, не оказывают существенного влияния на результат. Разумеется, такого описательногоопределения недостаточно для исследования устойчивости конкретных алгоритмов.
Существуют математически строгие и более узкие определения устойчивости, некоторые изних будут приведены в следующих параграфах. Сейчас ограничимся тем, что рассмотримнесколько характерных примеров.Явление неустойчивости часто возникает в процессе решения разностных уравнений.Так, если решать уравнение+1 = ,где ∈ Z+ , ∈ C — некоторая константа, а 0 — задано, то при || > 1 погрешность будет возрастать при переходе от шага к шагу ( + 1). Действительно, пусть вместо врезультате ошибок округления получено значение̃︀ = + .Тогда при вычислении +1 получим значение̃︀+1 = ̃︀ = + = +1 + ,то есть погрешность +1 = на новом шаге увеличится. В этом случае метод неустойчив,и при проведении расчетов на ЭВМ при достаточно большом может произойти переполнение разрядной сетки.
Если же || 6 1, то погрешность, допущенная на каком-либо шагевычислений, будет не возрастать на следующих шагах.Процесс численного решения задачи Коши для обыкновенных дифференциальных уравнений также может оказаться неустойчивым. Поясним это на примере простого уравнения⎧⎨ ()+ () = 0, = > 0, > 0,(1)⎩(0) = .0Его решение (() = 0 − ) монотонно убывает с ростом . В частности, для решения этогоуравнения справедливо следующее неравенство:|()| 6 |0 |, > 0,(2)означающее непрерывную зависимость (иначе говоря, устойчивость) решения уравнения (1)от начальных данных.§4. Понятие устойчивости разностного метода127Естественно требовать, чтобы и для разностных схем, аппроксимирующих уравнение (1),выполнялись оценки, аналогичные (2).
Однако такие оценки для разностных схем выполняются далеко не всегда.Пример 1. Рассмотрим, например, явную разностную схему Эйлера для решения задачи (1):+1 − + = 0,где > 0, ∈ Z+ , 0 = 0 , и перепишем ее в виде+1 = , ∈ Z+ ,|+1 | 6 | |, ∈ Z+где = 1 − .Тогда оценка2будет выполняться тогда и только тогда, когда || 6 1, то есть при 6 . В этом случае2схема называется устойчивой, а само неравенство 6 называется условием устойчивости.Если оно нарушено, то || > 1, и погрешности, допущенные в процессе вычислений, будутвозрастать с ростом .Определение. Разностная схема называется абсолютно устойчивой, если эта схемаустойчива при любых допустимых значениях своих параметров (то есть при значениях,при которых разностная схема определена).Пример 2.
Приведем пример абсолютно устойчивой разностной схемы. Для уравнения′ () = (, ()),(3)для некоторой функции (, ), рассмотрим неявную схему Эйлера+1 − = (+1 , +1 ),где ∈ Z+ , 0 = 0 .Схема называется неявной потому, что для нахождения +1 приходится решать уравнение+1 − (+1 , +1 ) = .Это уравнение можно решить, например, с помощью метода Ньютона, описанного в §3главы 3.
Для уравнения (1) неявная схема Эйлера принимает вид+1 − + +1 = 0,откуда получаем+1 = , = (1 + )−1 ,причем || < 1 при любых > 0.Приведенные выше примеры являются типичными, потому что, как правило, явныесхемы устойчивы лишь при достаточно малых шагах , а среди неявных схем существуютабсолютно устойчивые.128Глава 5. Методы решения ОДУ и систем ОДУОбщий -шаговый линейный разностный методПерейдем теперь от частных примеров к общему -шаговому методу∑︁=0− =∑︁ − ,(4)=0где > 0, 0 , 1 , . . .