Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное_пособие_Математические_методы_в_экологии_360.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
2.7 Mб
Скачать

6.2 Обыкновенные ду. Основные методы решения

Обычно рассматривают следующую классификацию основных методов решения.

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

Многоступенчатые методы – не требуют многократных вычислений функции. Для достижения достаточной точности требуются итерации.

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

Кроме того, при использовании этих методов трудно оценивать допускаемую ошибку.

Большинство методов второго класса (многоступенчатые) называются методами прогноза и коррекции.

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

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

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

Теоретически этот метод пригоден для решения любых дифференциальных уравнений. С вычислительной точки зрения он не представляет почти никакого практического интереса. Он нужен как некоторый эталон для сравнения различных практически удобных методов.

Итак, решение с помощью рядов Тейлора.

Напишем разложение функции у(х) в ряд Тейлора в окрестности точки х = хm. Другими словами, предположим, что процесс решения уже доведен до некоторой заданной точки и нас интересует, что произойдет при переходе к следующей точке.

(6.9)

где есть j-я производная функции у(х) в точке х = хm.

Теперь предположим, что мы нашли приближенное решение уравнения для m + 1 точек на оси х, т. е. для х0, х1, х2, ..., xm. (Решение в точке х0 дается начальным условием).

Последовательные значения xi расположены на расстоянии h друг от друга, т. е. xi = x0 + ih.

Можно найти приближенное решение для точки xm + 1, подставив xm+1 = хm + h в формулу (6.9):

(6.10)

Чем больше членов ряда мы возьмем для вычисления, тем точнее будет приближение. В любом случае необходимо вычислять различные производные функции у(х).

Перепишем здесь наше исходное уравнение (6.4)

.

Из (6.4) имеем

.

(6.11)

Дифференцируя (6.4) по х, получаем

(6.12)

так что

(6.13)

Здесь частные производные по х и по у обозначены соответствующими индексами около f:

Все значения функции и ее производных вычисляются при x = xm и y = ym.

Уравнение (6.10) приобретает вид

(6.14)

где O(h3) означает, что порядок следующих членов ряда по h не ниже 3, т. е. если уравнение (6.4) решается с помощью формулы (6.14), ошибка ограничения ~ Кh3, где К – некоторая постоянная.

При решении с помощью рядов Тейлора для вычисления ym+1 нужна информация только об одной (предыдущей) точке xm , ym.

Трудность метода – нахождение fx и fy (иногда это вообще невозможно).

Для получения лучшего приближения надо вычислять :

Следующие производные еще сложнее. Однако теперь имеется возможность сравнивать другие методы с этим.

Одни из них будут согласовываться до членов порядка h, другие – вплоть до членов порядка h4.

МЕТОДЫ Рунге–Кутты

Различные методы этой категории требуют большего или меньшего объема вычислений и, соответственно, обеспечивают большую или меньшую точность.

Отличительные свойства методов Рунге–Кутты:

  1. Эти методы являются одноступенчатыми: для нахождения ym+1 нужна информация только о предыдущей точке xm , ym.

  2. Они согласуются с рядом Тейлора до членов порядка h p, где степень p различна для разных методов и называется порядком метода.

  3. Они не требуют вычисления производных от f(x, y), а требуют только вычисления самой функции.

Именно благодаря третьему свойству методов Рунге–Кутты они более удобны для вычислений, чем ряд Тейлора.

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

Нетрудно убедиться, что рассмотренный нами метод Эйлера (формула (6.8)) согласуется с разложением в ряд Тейлора вплоть до членов порядка h, т. е. он относится к методам Рунге–Кутты первого порядка.

При этом ошибка ограничения равна eT = Kh2.

Метод имеет довольно большую ошибку ограничения и часто оказывается неустойчивым.

Мы рассмотрим два усовершенствованных метода: исправленный метод Эйлера и модифицированный метод Эйлера. Затем покажем, что оба они относятся к семейству методов Рунге–Кутты второго порядка.

Исправленный метод Эйлера

В этом методе находим средний тангенс угла наклона касательной для двух точек: xm , ym и x+ h , . Вторая из них обозначалась в методе Эйлера как xm+1 , ym+1.

Геометрический процесс нахождения точки xm+1 , ym+1 показан на рис. 6.2.

Рис. 6.2. Геометрическое представление исправленного метода Эйлера

Тангенс угла наклона прямой L равен

(6.15)

где

(6.16)

Уравнение прямой L записывается в виде

так что

(6.17)

Соотношения (6.15)–(6.17) описывают исправленный метод Эйлера.

Сравним результат с разложением в ряд Тейлора.

(6.18)

где частные производные вычисляются при x = xm и y = ym.

Подставим в (6.18) x = xm + h и y = ym + h , c использованием (6.16) получим

где функция f и ее производные вычисляются в точке xm , ym.

Подставив результат в (6.15), после преобразований получаем

Подставив этот результат в (6.17), приходим к формуле, которую можно сравнить с разложением в ряд Тейлора:

Из приведенного выражения видно, что исправленный метод Эйлера согласуется с разложением в ряд Тейлора вплоть до членов степени h2, т. е. он является методом Рунге–Кутты второго порядка.

При использовании этого метода функцию f(x, y) приходится вычислять дважды – в точке xm , ym и в точке xm + h , ym + h .

Для сравнения – использование разложения в ряд Тейлора при достижении той же точности требует вычисления трех разных функций: f, fx и fy.

Модифицированный метод Эйлера

В исправленном методе Эйлера усреднялись наклоны касательных.

Можно пойти по другому пути и усреднять точки в следующем смысле.

На рис. 6.3 первоначальное построение проведено, как и прежде на рис. 6.2. (Прямая L1 с тангенсом угла наклона f(xm,ym)).

Однако теперь берем точку, лежащую на пересечении L1 и ординаты x = xm+ h/2 (точка Р).

Рис. 6.3. Геометрическое представление модифицированного метода Эйлера

Найдем тангенс угла наклона касательной в точке P

(6.19)

где

.

Уравнение прямой L0 можно записать в виде

y = ym + (xxm)Ф(xm, ym, h),

где Ф задается формулой (6.19).

Поэтому можем записать

ym+1 = ym + hФ(xm, ym, h) .

(6.20)

Соотношения (6.19) – (6.20) описывают модифицированный метод Эйлера. Иногда его называют исправленным методом ломаных.

Этот метод тоже согласуется с разложением в ряд Тейлора вплоть до членов степени h2, поэтому он тоже является методом Рунге–Кутты второго порядка.

Cравнение обоих рассмотренных методов

Оба метода описываются формулами вида

ym+1 = ym + hФ(xm, ym, h).

(6.21)

В обоих случаях Ф имеет вид

где = f(xm,ym).

В частности, для исправленного метода Эйлера

a1 = a2 = 1/2; b1 = b2 = 1 .

Для модифицированного метода Эйлера

a1 = 0; a2 = 1; b1 = b2 = 1/2.

Можно показать, что методы объединяются, если положить для обоих методов

a2 = w 0; a1 = 1 – w; b1 = b2 = 1/(2w).

Ошибка ограничения равна eT = Kh3.

Было показано, что наименьший верхний предел |K| достигается при w = 2/3.

Методы Рунге–Кутты

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

Этот метод применяется настолько широко, что в литературе его часто называют «методом Рунге–Кутты» без всяких указаний на тип или порядок.

Итак, дано

(6.22)

с начальным условием Нужно найти решение уравнения (6.22) на отрезке [a, b].

Выбираем малый шаг h и на отрезке [a, b] строим систему равноотстоящих точек

.

Этот классический метод Рунге – Кутты описывается системой следующих пяти соотношений:

(6.23)

Этому процессу можно дать геометрическую интерпретацию (рис. 6.4).

В точке (хi, уi) вычисляется тангенс угла наклона k1; используя его, мы идем на половину шага вперед и находим тангенс угла наклона здесь.

Используя новый тангенс угла наклона k2, мы опять начинаем из (хi, уi), идем вперед на половину шага и опять берем пробу тангенса угла наклона.

Взяв этот последний тангенс угла наклона k3, мы опять начинаем из (хi, уi), но делаем теперь полный шаг вперед, где смотрим тангенс угла наклона k4.

Четыре тангенса углов наклона усредняем с весами 1/6, 2/6, 2/6, 1/6 и, беря этот средний тангенс угла наклона, делаем окончательный шаг от (хi, уi) к (хi+1, уi+1).

Рис. 6.4. Иллюстрация к методу Рунге–Кутты 4-го порядка

Ошибка ограничения для этого метода равна eT = Kh5, так что формулы (6.23) описывают метод четвертого порядка.

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

Можно показать, что классическая формула Рунге–Кутты оказывается обобщением формулы Симпсона для интегрирования функции одной переменной, причем обобщение состоит в том, что формула не ограничена теперь функциями только от х.

Пример

= y; y(0) = 1.

Для этого уравнения из (6.23) получаем

В результате получаем для yi+1

Сумма в скобках представляет собой теперь пять первых членов разложения функции eh в ряд Тейлора.

Анализ ошибок, возникающих при использовании методов Рунге–Кутты

Как отмечалось ранее, ошибка ограничения при использовании методов Рунге–Кутты p-го порядка равна Кh p+1, где К – некоторая постоянная.

Один из серьезных недостатков методов Рунге–Кутты – отсутствие простых способов оценить их ошибку. Без некоторой оценки ошибки ограничения трудно правильно выбрать величину шага интегрирования h.

Г рубое оценочное правило предложено Коллатцом. Если отношение

становится велико (больше нескольких сотых), то шаг интегрирования необходимо уменьшить.

Б олее точная оценка ошибки ограничения в формуле (6.23) имеет вид

Методы Рунге–Кутты. «Подводные камни»

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

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

Пример

Дано уравнение

.

Точное решение: y = e-10x.

Все методы Рунге–Кутты второго порядка дадут приближенную формулу при вычислении решения для больших х следующего вида:

ym+1 = (1 – 10h + 50h2)m.

При h > 0,2 сумма, стоящая в скобках, становится больше 1.

Следовательно, при возрастании m y неограниченно возрастает. С другой стороны, точное решение убывает, стремясь к нулю.

Это явление называется частичной неустойчивостью по Майерсу. Ее характерная особенность – зависимость от h.