Метод Рунге – Кутта
Численное решение обыкновенных дифференциальных уравнений
Постановка задачи
Пусть дано дифференциальное уравнение первого порядка:
. (1)
Основная задача, связанная с этим уравнением, известна как задача Коши: найти решение уравнения (1) в виде функции у(х),удовлетворяющей начальному условию
(2)
Геометрически это означает, что требуется найти интегральную кривую у = у(х), проходящую через заданную точку M0 (x0, у0), при выполнении равенства (1). Существование и единственность решения задачи Коши для уравнения (1) обеспечиваются следующей теоремой.
Теорема Пикара. Если функция f(x, у) определена и непрерывна в некоторой плоской области G, определяемой неравенствами ׀х-х0׀ ≤ а, ׀y-y0׀ ≤ b, и удовлетворяет в этой области условию Липшица по у: существует такое положительное число М, что для любых точек (х; у1) G и (х; у2) G: |f(x,y1) - f(x,y2)| ≤ M·|y1-y2|, то на некотором отрезке |х - х0| ≤ h существует, и притом только одно, решение у = у(х) уравнения (1), удовлетворяющее начальному условию у0= у(x0).
Число М называется константой Липшица.
Если f(х, у) имеет ограниченную в G производную по у, то . Величина h вычисляется по формуле , где .
Существует несколько классов дифференциальных уравнений первого порядка, для которых решение может быть найдено аналитически (уравнения с разделяющимися переменными, однородные, линейные, в полных дифференциалах). Даже для таких уравнений решение не всегда удается довести до вида у = у(х), где у(x) — функция, с которой удобно работать дальше. Многие же дифференциальные уравнения, к которым приводят математические модели реальных процессов, не относятся к указанным классам и аналитически решены быть не могут. Тем более это утверждение справедливо для систем дифференциальных уравнений и для уравнений старших порядков. По этой причине разработаны многочисленные методы приближенного решения дифференциальных уравнений. В зависимости от формы представления решения, эти методы подразделяются на три основные группы:
- аналитические методы, применение которых дает приближенное решение дифференциального уравнения в виде формулы;
- графические методы, дающие приближенное решение в виде графика;
- численные методы, когда искомая функция получается в виде таблицы.
Метод Эйлера
В основе метода ломаных Эйлера лежит идея графического построения решения дифференциального уравнения, однако этот метод дает одновременно и способ нахождения искомой функции в численной (табличной) форме.
Пусть дано уравнение (1) с начальным условием (2) (т.е. поставлена задача Коши). Вначале найдем простейшим способом приближенное значение решения в некоторой точке х1 = x0 + h, где h достаточно малый шаг. Уравнение (1) совместно с начальным условием (2) задают направление касательной к искомой интегральной кривой в точке М0(х0,y0). Двигаясь вдоль этой касательной, получим приближенное значение решения в точке х1:
y1 = y0 + hf (x0, y0). (3)
Располагая приближенным решением в точке М1(х1, у1), можно повторить описанную выше процедуру: построить прямую, проходящую через эту точку под углом, определяемым условием tgβ = f(x1, y1), и по ней найти приближенное значение решения в точке х2 = x1 + h. Эта прямая не есть касательная к реальной интегральной кривой, поскольку точка М1 нам недоступна. Однако если h достаточно мало, то получаемые приближения будут близки к точным значениям решения.
Продолжая этот процесс, построим систему равноотстоящих точек xi = х0 + ih, где (i = 0,1,2,..., n). Получение таблицы значений искомой функции у(х) по методу Эйлера заключается в циклическом применении пары формул:
(4)
,
Геометрическая иллюстрация метода Эйлера приведена на рисунке. Вместо интегральной кривой в реальности получается совокупность прямых (так называемая ломаная Эйлера).
Методы численного интегрирования дифференциальных уравнений, в которых решение получается от одного узла к другому, называются пошаговыми. Метод Эйлера — простейший представитель семейства пошаговых методов.
Оценка погрешности метода при таком элементарном рассмотрении невозможна даже на первом шаге. Кроме того, особенностью любого пошагового метода является то, что, начиная со второго шага, исходное значение уi в формуле (4) само является приближенным, т.е. погрешность на каждом следующем шаге систематически возрастает.
Наиболее используемым эмпирическим методом оценки точности как метода Эйлера, так и других пошаговых методов приближенного численного интегрирования обыкновенных дифференциальных уравнений является способ двойного прохождения заданного отрезка — с шагом h и с шагом h/2. Совпадение соответствующих десятичных знаков в полученных двумя способами результатах дает эмпирические основание считать их верными (хотя полной уверенности в этом быть не может).
Метод Рунге – Кутта
Основная идея этого метода такова: вместо использования в рабочих формулах частных производных функции f(х, у) использовать лишь саму эту функцию, но на каждом шаге вычислять ее значения в нескольких точках.
Проиллюстрируем это на примере одного из возможных методов второго порядка. Для метода Эйлера путем простейшей правосторонней аппроксимации производной имеем: .
В это выражение входят значения функции в двух точках. Если взять в правой части уравнения (1) значение f(х, у) в точке с номером i, то придем к методу Эйлера. Однако можно рассудить и иначе: раз для аппроксимации производной взяты две точки, то лучшей аппроксимацией правой части уравнения будет полусумма . Тогда для нахождения уi+1 получим равенство . Поскольку оно представляет собой уравнение для уi+1, то решать его можно методом итераций, причем в качестве первого приближения взять то значение yi+l, которое определяется методом Эйлера. В итоге получим расчетные формулы нового метода, обеспечивающего пошаговое интегрирование дифференциального уравнения (1).
(5)
где (6)
Формула (5) - лишь одна из множества возможных формул Рунге - Кутта 2-го порядка. Разные формулы Рунге - Кутта одного и того же порядка будут давать при использовании различные числовые значения, но все они одного порядка точности. Чем выше порядок формул Рунге - Кутта, тем более точные значения они дают. На практике соблюдается некоторый компромисс между высоким порядком формул и их громоздкостью, с одной стороны, и объемом вычислений по ним для достижения заданной точности, с другой. Ниже приведена одна из самых популярных формул 4-го порядка, часто называемая просто, без уточнений, формулой Рунге - Кутта:
(7)
где
(8)
причем вначале последовательно вычисляются r1, r2, r3, r4, а лишь затем yi+1 - по формуле (7).
Общий недостаток методов Рунге-Кутта — отсутствие простых способов оценки погрешности метода. Погрешность на одном шаге оценить сравнительно нетрудно, гораздо труднее оценить накопление погрешностей на протяжении многих шагов. Широко используемый на практике для этих методов полуэмпирический способ контроля точности — двойной счет. Допустим, что — точное решение уравнения при х = х0 + nh. Тогда для рассмотренного выше метода 4-го порядка , где верхний индекс означает шаг, с которым вычислено приближенное значение. Точно так же при решении с шагом :
.
Отсюда получаем: .
Следовательно, ошибка при вычислении с шагом есть
(9)
Из формулы (9), в частности, следует, что при достаточно малом h и малых погрешностях вычислений решение уравнения (1), полученное методом Рунге-Кутта 4-го порядка по формулам (7) – (8), будет близким к точному.
<== предыдущая лекция | | | следующая лекция ==> |
Формулы прямоугольников | | | Классификация типов иммунологических реакций. |
Дата добавления: 2020-12-11; просмотров: 168;