Н.С. Бахвалов, Н.П. Жидков, Г.М. Кобельков - Численные методы (djvu) (1160088), страница 67
Текст из файла (страница 67)
При желании можно получить график решения или его изображение на экране. В результате этого для многих категорий на. учных работников суще<твенно уменьшился интерес к изучению частных способов интегрирования обыкновенных дифференциальных у'равнений в явном ниде. 11. Решение задачи Копзи с помощью формулы Тейлора Эта глава посвящена описвнизо оснонных ыетодов решения задачи Коши для обыкновенных дифферезщиальных уравнений, исследованию свойств этих методов и оценке их погрешности. Обратим внимание на то обстоятельство, что, как и в других зщучаях, первоначальный анализ практической пригодности методов и злбрвсьзвазше непригодных методов часто удастся произвести, изучая прогтейшие задачи, где точное и приближенное решения задачи выпигмвщотси в явном виде.
5 1. Решение задачи Коши с помощью формулы Тейлора Один нз прозтейпзих по своему описанию мнгодов регпепия зцлачзз Коши основан на использовании формулы Тейлора. Пусть требуется найти па отрезке [:го,:со+ Х) решение дифференциального уравнения Р' = /(т,, Р) при вазальном условии Р(хо) = Ро; /(зс, Р). - функция, аналитическая в точке (:со,рз). Дифферонцззрузз (!) по:с, имеем соотношения Рн = /. (з, Р) + /з(зд Р)1/, Р = /ь (х, Р) -~- 2/ о(х, Р)з/ Е / [и, Р)Р -~- /о(к, Р)Р", ПоДставлЯЯ з; = хо и Р = Ро в (1) н в погледние соотношениа, последо- вательно получаем значения Р'(хо), РЯ(:со), Рю(то), ".; Таким образом, можно написагь приближенное равенство зхы(яо) Р(х) = ~ ., (:с — з'а)'.
=о (2) Если значение [х — яо[ больше радиуса сходимости ряда (т — яо)з Р('1(хо) то погрешность (2) не стремится к нулю при н — з оо и предлагаемый Метод неприменим. Иногда целесообразно поступить следующим образом. Разобьем отрезок [ко,хо+Х) ва отрезки [х; з,х ), 1 = 1,...,дг. Будем погледовательно получать приближения Р; к значениям решения Р(хз), у = 1,...,йз, по следующему правилу. Пусть значение Р; уже найдено, вычисляем значеНна в точке хз пРоизвоДных Р. РешениЯ исхоДного ДиффеРенпиального Глава й Числгяаыг1 методы решении за,вачи Коши уравнения, проходищего черш точку (хп р ).
на отршке (г.,:с э1] полагаем Р,' У(х) = х1(х) = ~,,"ч (' —" )' (3) з-.:с и сгютветсгвенно берем у, ы = ху(.т ы). (4) Рассмотрим глу <ай, когда:с 41 — х =. 6. Еали бы значение й, савла дало со значением точнов> зна наин у(:с ), то погрешность от заьгепы руэг на хг(хгш) имела бы поркдок 0(6а г). поскольку мы вносим погрешпшпь на 0(6 ') отрезках, то можно ожидатгч что при уменыпенив гпага сетки будет выполииться соотношение шах ]р1 — у(х )] = 0(6и). описи В ряде случаев такого рода рассуждении приводят к пеправильгюму заключению о наличии факта сходимости приближенного решении к точному, в то время как в действительности этого пот.
Поэтому стропа обоснование сходимостн методов при умегп,шенин ша~а, а также получс ние оценки погрешности имеет ие только теоретическое, но и важнейшее практическое значение. При использовании щого метода нужно вычислять значении функции и всех ее производных уых .-„нри т < и, т.е. вычистить п(п г 1)/2 значений различных функций. Эго требует написании бсльп1ого числа блоков вычисления производных, что противоречит основной тенденции упрощении отионгений между пользователем к ЭВМ. В настоящее врем» иа некоторых ЭВМ име;ются пакеты программ, которью по заданной программе вычислении значений функции строит программу вычислении зигчений ее производных.
Таким обршом„при наличии таких пакетов программ, казалось бы, отпадает приведешюе выше возражение о сложности испояьзовш~ии описанною ранее метода. Однако этот метод примениотся редко. Как правило, программы, создаваемые с помощью таких пакетов. при 'ой же точности ршультазв требуют существенно болыпих затрат машинного времени, чем программы, основанные на рассмагриваемых далее более простых методах типа Рунге-Кутта и Адамса. В то же время описанный выше алгоритм может бьггь полезен.
Например, при расчетах траекторий движении небесных тел нриходитси многократно интегрировать системы дифферепцишгьиых уравнений вполне определенного вида при различных начальных условивх н различных зпачеииих параметров в правых частях.
То обстоительство, что все время решается одна и та же система,вифферешгиальных уравнений, дшп следующее преимущещво: конкретные формулы дли производных правых частей системы имегот много общего; одновременное вычисление всех этих производных требует относительва малого числа арифметических операций, и рассматриваемый метод иногда оказывается эффективнее других методов численного интегрирования. звз ] 2. Методы Рунге — Катте 3 2. Методы Рунге — Кутта В частном случае и = 1 формула (1.3] иллгет вид рзэл = рх -~- Ь/(х„рэ), Ь = хл ы — х,.
га р(:+ Ь) = ( ) + / р'( + 1) 11. е (2) Прн замене ннтеграла в правой части на величину М/(х) погрешность имеет порядок 0(]лэ), т.е. р(х + Ь] = р(х] т Ьр'(х) + 0(Ь ). Поскольку 1/(х) = /(х, р(х)), олснлга имеем р(х, 4- Ь) = р(х) + Ь/(х, р(х)) Е 0(]лэ). Отбрасывая член глорндка О(Ьэ) и сблпначая х =:с,:с Е Ь = х н ы получим расчетную форллулу Эйлера (1). Длв пгшучеллня более точной расчетной форллулы нужна топлое аппроксшяиравать интеграл в правой части (2). Воспользовавшись кввдратурной г]юрмулой трапеции, получим р( . + Ь) = р(х) ф — (р'(х) + р'(х + Ь)) + 0(Ь ), иначе р(з:+Ь) = р(х) +-(/(х, р(х))+ Цз;+ Ь, р(х+Ь))) +0(Ьз), (3) Ь 2 оютветствующая расчетная формула Ь< р ел = р. + — (/(х, р.)+ /(х ем р ел)) + О(Ь') 21 (4) назывзнлгл исламов фармрлоа Лг]амса старова порядка шочноса1а. В некоторых случаях, в частности, когда / линойна по р, эта уравнение может быть разрешено оююснттльпа р ть Обычно же это уравнение неразр(.
ппмю нано оттюсительно р „,, поэтому произведем дальнейшее преобразование алгоритма. Заменим р(х+ Ь) в правой чвсгн (3) на некоторую неличину р" = р(х + Ь) + О(Ьэ). (а) Тогда правая часть изменится на величину Ь Ь вЂ” (/(х Е Ь, и") — /(х+ <л, р(х -~-<л))) =- — /э(х -~- Ь, р) (р — р(х.1- ]л)), этот мелод называется мелног]ам Эзш<н.
Можно построить другой класс расчетных г]юрмул, к которому принадлежит лгетод Эйлера. Укажелл сначала простейшие методы этого класса, получаемые нз наглядных соображений. Пусть нзвешно значение р(х) и требуется вычислить значение р(х + Ь). Рассмотрим равенства Глава В. Численные методы решения задачи Коши Условию (б) удовлетворяет рпзультат вычислений по формуле Эйлера р* =- р(х) + Ц(х, р(х)). Последние ссютношения определяют пару расчетных формул р* 1 — — р + 11)(хзз р»), Лг, рузи =- р, -~- ~ 7(хзз Р;) -1- 7(хз+ и Р,*„,)).
(6) При малых Л выражение в правой ча«ти (4) удовлетворяет 1«щовню сжи- маемосгн (2 7.1), поэюму уравнение (4) также можно решать методом простой итерации: р = р -1- — фхз, р;)-~-Ях ъп р 1)). 21 Ещ1и р 1 вычисляется по методу Эйлера: е р, 1= у,рЛПхзз р,), о то р 1, получаемое на первом шаге итерации, совпадает с р.+1, получа- 1 емом по формуле (6). Дальнейшие гггерацив не приводят к повышеншо порядка точности по Л; в то же время иногда главный член погрешности уменьшавтся при переходе от р, к р,.
Если такое уменьшение 1 2 погрешности компенсирует нозраствнне вычиглительных затрат на шые, зп оно целесообразно. Можно прсдложнзь зеореп«чески обоснованный критерий, позволяющий ерн малых Л выбврать кам«дый раз наиболее целесообразное число нзерэцвй. Однако его использованве требует очень бовьшою объема дополнительных вычвсмпзвй. Поэтому выбор ме»кду числом взераций, равным 1 нлн 2, обычно осущыивмяется на основе лредшесп«ующего опыта, вычнс»п«тельного экспернмы«та или прес»о «волевым» обрезов. Построим другую пару формул с погрешностью на шаге звкого же порядха.
Интеграл в правой части (2) заменим по формуле прямоуголь- ников: р(х + Л) = р(х) + Лр' (х + — + О(Лз), 21 или, что все равно, р(в+ Л) = р(х)+ЛУ (х+ —, р х+ — ) РО(Л). 2' «, 2)) где р находится мезццу р" и р(хРЛ). Вслед«жене предположения (5) этв велнчвна имеет порядок О(йз). Таким обрезом, при условии (б) имеет меггго соотношение Л р(. +Л) =р(т) р-(изб р(х))+((х+Л, р')) +О(Лз). 12.М д 1'у — Ку Если 66 р* = р ( х ь — ) + 0(/Р), та, «ак и в предшествующем случае, имеем р(х, + 6) = р(х) + 61 (х + —, у* ! + О(6' ). 2' разультиг вычисленяй по формуле Эйлера (х, р(х)). Этим соотношениям соответствует В качестве р* л!ажно взять 6 шагом р р(х) + 2 г 2 ' пара расчетных формул 6 Рг +-((х Уг) 6 рг 26~(хг-~- —, р !гг).
Рг.~-!/2 3!1-Ы = Полученные методы относятся к семейству методов Рунге Кутта, имегощих следующий вид. В процессе вычислений фиксированы некотгь рые числа аг,...,ае, рг,...,р, 161, 0<у<1<щ последовательно получаем 61 (6) = 62(х, р), 62(6) = 61 (Х+ а26 11 '2 лг!61(6)) 62(11) = М(к+ се)! у+()2Р1(6) + "'+ бее-!62-!(6)) и полагаем р(х + 6) = з(6) = р(х) + ) р!61(1!).