Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Семейство методов Рунге-Кутта



Исправленный метод Эйлера (13) и другие методы, основанные на пошаговом представлении решения y (x) задачи Коши (1),(2) рядом Тейлора, требуют последовательного дифференцирования уравнения (1) для получения тейлоровских коэффициентов (которыми являются производные различных порядков от решения y (x)). Это приводит к необходимости вычисления на каждом шаге частных производных от неявной функции f (x, y). Это является одним из недостатков таких методов.

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

Пусть известно разложение по формуле Тейлора для искомого решения y (xi+ 1) в окрестности точки xi:

(14)

Перепишем это выражение в виде:

(15)

Полином в правой части формулы (15) представляет собой фрагмент исходного ряда Тейлора (14), содержащий значения производных y ¢(xi), y ¢¢(xi),…, y ( k )(xi) искомого решения в точке xi.

Идея Рунге метода Рунге – Кутта [2, стр.116] состоит в том, чтобы, используя метод неопределённых коэффициентов, аппроксимировать (с тем же порядком точности ) данный полином:

(16)

некоторой функцией j (x, y, h), не содержащей частных производных от функции
f (x, y). В результате чего формулу (15) можно будет переписать в виде:

(17)

Метод Рунге-Кутта первого порядка.

Если искомое решение y (xi+ 1) представить рядом Тейлора первого порядка по h т.е. с точностью до слагаемых линейных по h:

,

то в соответствии с идеей метода Рунге-Кутта в качестве функции j (xi, yi, h), аппроксимирующей с порядком точности фрагмент ряда Тейлора следует выбрать функцию j (xi, yi, h) = f (xi, yi).

Таким образом, при представлении решения y (xi+ 1) рядом Тейлора первого порядка (случай k = 1) определяющее метод Рунге-Кутта выражение (17) превращается в формулу Эйлера:

И, следовательно, можно считать, что метод Эйлера является простейшим примером метода Рунге-Кутта первого порядка.

Метод Рунге-Кутта второго порядка.

Метод Рунге-Кутта второго порядка соответствует случаю, когда искомое решение y (xi+ 1) представляется рядом Тейлора с точностью до слагаемых второго порядка по h:

(18)

В этом случае соотношение (17), определяющее метод Рунге-Кутта, имеет вид:

(19)

Поэтому в соответствии с идеей метода Рунге-Кутта параметры функции j (x, y, h) подбирают, из условия, что она должна аппроксимировать с точностью до слагаемых линейных по h полином:

(20)

Для того, чтобы определить вид функции j (x, y, h), аппроксимирующей полином (20), перепишем аппроксимируемый полином в несколько ином виде.

Если для аппроксимации производной , входящей в правую часть выражения (20) использовать разностное отношение общего вида:

где l, g и d - некоторые пока неизвестные параметры, то аппроксимируемый полином (20) можно переписать в виде:

(21)

Отсюда ясно, что функцию j (xi, yi, h) аппроксимирующую полином (21) можно взять в виде выражения:

j (xi, yi, h) = b f (xi, y (xi)) + a f (xi +g h, y (xi) + d h). (22)

Здесь b, a, g и d - неизвестные параметры, значения которых нужно определить.

В результате с учётом вида функции j (xi, yi, h), определяемой выражением (22), формула (18), определяющая метод Рунге-Кутта второго порядка, может быть переписана в виде:

y (xi+ 1) = y (xi) + h ×( b f (xi, y (xi)) + a f (xi +g h, y (xi) + d h) + ) (23)

Поскольку функция j (xi, yi, h) (22) должна аппроксимировать полином (20), содержащий линейные слагаемые по h, то функцию f ( xi +g h, y (xi) + d h ) из выражения (22) раскладывают в ряд Тейлора с точностью до линейных по h слагаемых:

f (xi +g h, y (xi) + d h) = f (xi, y (xi) ) + g h f¢x (x, y (x)) + d h f¢y (x, y (x)) + (24)*

(* Схема разложения функции двух переменных в ряд Тейлора [3, стр. 266] приведена для справок в приложении к данной лекции).

Подставляя разложение (24) в формулу (23) получим следующую формулу для выражения метода Рунге-Кутта второго порядка:

y (xi+ 1) = y (xi) + h (b + a) f (xi, y (xi)) + a h 2(g x (x, y (x)) + d f¢y (x, y (x)) ) + (25)

Далее неизвестные параметры b, a, g и d, в формуле (25), определяют так, чтобы представляемое формулой (25) разложение решения y (xi+ 1) с тем же порядком аппроксимировало разложение (18) решения y (xi+ 1) в ряд Тейлора:

(26)

Приравнивая в формулах (25) и (26) коэффициенты в главных порядках по h найдём, что параметры b, a, g и d, определяющие функцию j (xi, yi, h) (22) должны удовлетворять следующей совокупности условий:

(b + a) = 1; a g = ; a d = f (xi, y (xi)); Û (27)

Полученная система уравнений (27) содержит три уравнения относительно четырёх параметров b, a, g и d. Это свидетельствует о наличии одного свободного параметра, через который можно выразить остальные параметры.

Выражая из (27) параметры b, g и d через параметр a получим:

b = 1 - a, g = 1/2 a и d = f (xi, y (xi)) (28)

В результате подстановки этих значений параметров в формулу (23) приходим к однопараметрическому семейству методов Рунге - Кутта второго порядка.

(29)

где a (0 < a £ 1) является параметром семейства методов решения задачи Коши.

Схема реализации методов Рунге-Кутта второго порядка.

При реализации вычислительного процесса на ЭВМ любой метод из семейства методов Рунге-Кутта второго порядка (29) реализуют по следующей схеме.

1. На каждом шаге, т.е. при каждом i = 0,1, 2, …, вычисляют значения функций: h i 1 = f (xi, y (xi)), h i 2 = . 2. Затем находят шаговую поправку D y (xi) = h [(1 - a) h i 1 + a) h i 2], прибавление которой к результату предыдущего шага даёт приближённое значение решения y (x) в точке xi +1 = xi + h: y (xi +1) = y (xi) + D yi. Методы такой структуры называют двухэтапным по количеству вычислений значений функции (т.е. правой части дифференциального уравнения (1)) на одном шаге.     (30)

Частные случаи методов Рунге-Кутта второго порядка.

Выделим из семейства методов (29) два наиболее простых частных случая, соответствующих значениям a = 1 и a = 1/2.

1.) При a = 1 семейство методов Рунге-Кутта (29) приобретает наиболее простой вид, который называется методом средней точки:

(31)

Поясним на рис. 1 графически смысл метода средней точки.

Рисунок 1 – Геометрическая иллюстрация метода Рунге-Кутта второго порядка

Сначала через точку xi проводим касательную, наклон которой определяем из исходного уравнения:

y (x) = y (xi) + f (xi, y (xi))(x - xi) (32)

Далее делаем половинный шаг по схеме ломанных, т.е. находим значение данной касательной (32) в точке xi+h/ 2:

y (xi+h/ 2) = y (xi) + f (xi, y (xi)) (33)

Затем из дифференциального уравнения (1) определяем наклон интегральной кривой y ¢(x) в данной точке (xi+h/ 2, y (xi+h/ 2)), т.е. находим чему был бы равен наклон интегральной кривой y ¢(x), если бы она проходила через точку (xi+h/ 2, y (xi+h/ 2)):

y ¢(xi+h/ 2) = f (xi+h/ 2, y (xi) + f (xi, y (xi))) (34)

По этому наклону (34) и определяем окончательно приращение искомого решения y (xi) на целом шаге h:

y (xi +1) - y (xi) = h y ¢(xi+h/ 2) = h f (xi+h/ 2, y (xi) + f (xi, y (xi))) (35)

2.) При a = 1/2 формула (29) превращается в рассмотренный ранее метод Хьюна:

, (i = 0,1, …, n),

Замечания.

1. Выбрать параметр a так чтобы схема (29) давала бы аппроксимацию третьего порядка невозможно.

2. Приведём без доказательства теорему о сходимости и точности методов Рунге-Кутта второго порядка.

Теорема. Если функция f (x, y (x)) непрерывна и ограничена вместе со своими вторыми производными, то решение, полученное по схеме (29), равномерно сходится к точному решению с погрешностью , т.е. данный метод Рунге-Кутта имеет второй порядок точности.





Дата публикования: 2015-09-17; Прочитано: 1506 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.013 с)...