Турчак Л.И. Основы численных методов. Под ред. В.В.Щенникова (1987) (1095857), страница 38
Текст из файла (страница 38)
Например, рассмотрим задачу Коши для уравнения второго порядка 2У(~~хг ~(х У, ~УЯх), У(х,) = у„У' (х,) = з,. Введем вторую неизвестную функпию Я(х)= У'(х). Тогда сформулированная задача Коши заменяется следующей: дЯ/дх= ~(х, У, У), аУЯх = г, У(х,) = у„~(х,) = В заключение еще раз отметим особенность одношаговых методов, состоящую в том, что для получения решения в каждом новом расчетном узле достаточно иметь значение сеточной функции лишь в предыдущем узле.
Зто позволяет непосредственно начать счет при 1=0 по известным начальным значениям. Кроме того, указанная особенность допускает изменение шага в любой точке в процессе счета, что позволяет строить численные алгоритмы с автоматическим выбором шага. 3. Многошаговые методы. Другой путь построения разностных схем основан на том, что для вычисления зна 5 2. ЗАДАЧА КОШИ Й пре- В этом чения уу+, используются результаты не одного, а дыдущих шагов, т. е.
значения у;,+,, ц;,+2, ..., у;. случае получается Й-шаговый метод. Многошаговые методы могут быть построены ющпм образом. Запишем исходное уравнение (7.9) следу- в виде ИУ(х) = ~(х, У)с~х. (7.27) Проинтегрируем оое части этого уравнения по х на отрезке [х„х,+,~. Интеграл от левой части легко вычисляется: х Н1' (х) = У (х.;х1) — )')х;) ж у;.„— у;, (7.28) Для вычисления интеграла от правой части уравнения (7.27) строится сначала интерполяционный многочлен Р,,(х) степени Л вЂ” 1 для аппроксимации функции 7'(х, У) на отрезке (х;, х;,1 по значениям ~(х; у.у„у;,+,), 1(х;,+„у;,+2), ..., ~(х„у,), После этого можно написать хам+1 ~2+1 ))х,У)ххах ) Р,,(х)Ух, (7.29) Приравнивая выражения, полученные в (7.28) и (7.29), можно получить формулу для определения неизвестного значения сеточной функции у;+, в узле х)+,.
х +2 у,.„= у, -)- ~ Рг,(х)хх. (7.30) На основе этой формулы можно строить различные многошаговые методы любого порядка точности. Порядок точности зависит от степени интерполяционного много- члена Р,, (х), для построения которого используются значения сеточной функции у;, у; „..., у; ),+„вычисленные на Й предыдущих шагах. Широко распространенным семейством многошаговых методов являются методы Адамса. Простейший из них, получающийся при й = 1, совпадает с рассмотренным ранее методом Эйлера первого порядка точности. В практических расчетах чаще всего используется вариант метода Адамса, имеющий четвертый порядок точности и использующий на каждом шаге результаты предыдущих 224 ГЛ.
7. ОБЪ|КНОВЕННЫБ ДИ»» ФЕРЕНЦИАЛЬНЫН УРАВНЕНИЯ четырех. Именно его и называют обычно методом Адамса. Рассмотрим этот метод. Пусть найдены значения у, „у» „у» „у» в четырех последовательных узлах (1=4). При этом имеются также вычисленные ранее значения правой части В качестве инте рполяцнонного многочле на Р,(х) можно взять многочлен Ньютона (см.
гл. 2, ~ 3). В случае постоянного шага Й конечные разности для правой части в узле х» имеют вид л1,=~; — ~» „ »-» г» г» 2)» — ! + г»-2» ЛЪ = Ь вЂ” 31», + 31, — 1,, Тогда разностная схема четвертого порядка метода Адамса запишется в виде г»2 5)»з ч»,4 у»+1 — у| + Ьг' + АЛЬ)' + ~~ Л г| + 8 Л )' (7 31) Сравнивая метод Адамса с методом Рунге — Кутта той же точности, отмечаем его экономичность, поскольку он требует вычисления лишь одного значения правон части на каждом шаге (метод Рунге — Кутта — четырех). Но метод Адамса неудобен тем, что невозможно начать счет по одному лишь известному значению у,. Расчет может оыть начат лишь с узла х,.
Значения у», у., у„ неооходимые для вычисления уз, нужно получить каким- либо другим спосооом (например, методом Рунге — Кутта), что существенно усложняет алгоритм. Кроме того, метод Адамса не позволяет (оез усложненпя формул) изменить шаг Ь в процессе счета; этого недостатка лишены одношаговые методы. Рассмотрим еще одно семейство мпогошаговых методев, которые используют неявные схемы,— методы прогноза и коррекгггги (они называются также методами предиктор-корректор).
Суть этих методов состоит в следующем. На каждом шаге вводятся два этапа, использующих многошаговые методы; 1) с помощью явного метода (предиктора) по известным значениям функции в предыдущих узлах находится начальное приближение у,:+1 — у(»+)» в новом узле; 2) используя неявный метод (корректор), в результате итераций находятся приближения (1) (2) у»+1» у»+1з ° 5 2. ЗАдлчА кОши 225 Один из вариантов метода прогноза и коррекции может быть получен на основе метода Адамса четвертого порядка. Приведем окончательный вид разностных соотношений: на этапе предиктора У~+' У'+ '4 (55Д вЂ” 59~; 1+ 37~;-, — 9~„-,); (7Л2) Ь на этапе корректора У'+1 = У'+ 24 (9~;~-1+ 197; — 5~; 1+ ~; ~).
(7.33) Явная схема (7.32) используется на каждом шаге один раз, а с помощью неявной схемы (7.33) строится итерационный процесс вычисления у;~,, поскольку это значение входит в правую часть выражения ~;+, =~(х,+„у;+,). Заметим, что в этих формулах, как и в случае метода Адамса, при вычислении у,+~ необходимы зпачения сеточнои функции в четырех предыдущих узлах; у;, у; „ у; „у,, Следовательно, расчет по этому методу может быть начат только с значения у,.
Необходимые при этом у„у„у, находятся по методу Рунге — Кутта, у, задается начальным условием. Это характерная осооенность многошаговых методов. Блок-схема решения задачи Коши с помощью рассмотренного метода прогноза и коррекции представлена на рис. 41. 4, Повышение точности результатов.
Точность численного решения можно повысить различными путями. В частности, этого можно достичь, применяя разностные схемы повышенного порядка точности. Однако такие схемы целесоооразно строить лишь для уравнений с постоянными коэффициентами, поскольку в случае переменных коэффициентов схемы высоких порядков приводят к трудоемким алгоритмам. Точность можно повысить также путем уменьшения значения шага Ь. Но и этот путь ограничен требованием экономичности, поскольку получение решения с необходимой точностью. может потребовать огромного объема вычислений.
На практике часто для повышения точности численного решения без существенного увеличения машинного времени используется метод Рунге. Оп состоит в том, что проводятся повторные расчеты по одной разностной схеме с различными шагами. Уточненное решение в совпадаю- 15 Л. и. турчак 226 Гл.
7. ОБыкнОВенные лпФФеРенцилльньте уРАВнения Рис. 41. Блок-схема метода предиктор-корректор щих при разных расчетах узлах строится с помощью проведенной серии расчетов. Предположим, что проведены две серии расчетов по схеме порядка й соответственно с шагами Ь и Ы2. В результате расчетов получены множества значений сеточной функции уь и уи~2. Тогда в соответствии с методом Рунге Э уточненное значение рл сеточной функции в узлах сетки я 3. кР лнвые 3 Ал лчи 227 с шагом Й вычисляется по формуле ой Ь/2 ~Й + О (ц11+1) 2А — 1 Порядок точности этого решения равен А + 1, хотя используемая разностная схема имеет порядок точности 1с, Таким образом, решение задачи на двух сетках позволяет на порядок повысить точность результатов.
Для схемы Эйлера первого порядка точности (к = 1) формула Рунге принимает вид пу, = 2д~,~, — дл + О (Ь'). Аналогично можно записать формулу для уточнения решения, полученного по методу Рунге — Кутта при 1 = 4. 5 3. Краевые задачи У" + р(х) У'+ д(х) У = ~(х). (7.34) Краевая задача состоит в отыскании решения У = У(х) уравнения (7.34) на отрезке [а, Ь1, удовлетворянмцего на концах отрезка условиям У(а) = А, У(Ь) = В. (7.35) Граничные условия могут быть заданы не только в частном виде (7.35), но и в более общем виде: а,У(а)+ ~Г'(а) = А, (7.36) а,У(Ь)+ ~,У'(Ь) = В.
Методы решения краевых задач довольно разнообразные — зто и точные аналитические методы, и приближенные, и численные (см. 3 1, и, 2). Аналитические методы 15* 1. Предварительные замечания. В ~ 2 рассматривались задачи с начальными условиями, т. е. с условиями в одной (начальной) точке: при х = х„~ =О и т. п. На ирак- тике приходится часто решать другого типа задачи, когда условия задаются при двух значениях независимой переменной (на концах рассматриваемого отрезка). Такие задачи, называемые крпевымш, получаются при решении уравнений высших порядков или систем уравнений. Рассмотрим, например, линейное дифференциальное уравнение второго порядка 228 ГЛ.
1. ОБЫКНОВЕННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ изучаются в курсе дифференциальных уравнений. Онп имеются лишь для решения узкого класса уравнений. В частности, хорошо развит этот аппарат для решения линейных дифференциальных уравнений второго порядка с постоянными коэффициентами, которые широко используются в исследовании различных физических процессов (например, в теории колебаний, динамике твердого тела и т. п.).