Учебник · Глава 12
Решение обыкновенных дифференциальных уравнений первого порядка.
6. Решение уравнений методом Рунге-Кутта.
|
Рассмотрим методику решения дифференциальных уравнений методом Рунге-Кутта на конкретном примере.
Пусть задано дифференциальное уравнение с начальным условием:
| |
 |
(12.12) |
Требуется определить значение функции u в точке
Значение шага по времени возьмём равным 0,1.
Видно, что решением уравнения (12.12) является функция ,
значение которой в искомой точке составляет:
Выполним решение уравнения (12.12), используя метод Рунге-Кутта с различными порядками точности,
и сравним полученные результаты с истинным решением (следует отметить, что для данного уравнения явный
и неявный методы Эйлера неприменимы, так как соответствующие им разностные схемы для уравнения (12.12)
будут неустойчивы).
Рассмотрим методику решения уравнения (12.12) методом Рунге-Кутта
2-го порядка с использованием первого набора параметров:
Видно, что ошибка появляется в третьей цифре после запятой.
Рассмотрим методику решения уравнения (12.12) методом Рунге-Кутта 2-го порядка с использованием второго набора параметров:
Видно, что ошибка, как и в предыдущем случае, появляется в третьей цифре после запятой.
Рассмотрим методику решения уравнения (12.12) методом Рунге-Кутта 3-го порядка:
Видно, что ошибка появляется в пятой цифре после запятой. Это наглядно доказывает, что метод Рунге-Кутта
3-го порядка более точен, чем метод Рунге-Кутта 2-го порядка.
Рассмотрим методику решения уравнения (12.12) методом Рунге-Кутта 4-го порядка:
Видно, что ошибка появляется в седьмой цифре после запятой. Это наглядно доказывает, что метод Рунге-Кутта 4-го порядка более точен, чем методы Рунге-Кутта 2-го и 3-го порядка.
|