EssayAI
Блог
Блог
Математика и алгоритмы

Метод Рунге-Кутты 4 порядка: численное решение ОДУ

11 апреля 2026Время чтения: 8 минут
#метод Рунге-Кутты#задача Коши#численное решение ОДУ#метод Эйлера#погрешность
Метод Рунге-Кутты 4 порядка: численное решение ОДУ

Метод Рунге-Кутты 4 порядка (часто пишут РК4 или RK4) - самый популярный одношаговый метод численного решения задачи Коши для обыкновенного дифференциального уравнения. На каждом шаге он вычисляет четыре пробных наклона k1,k2,k3,k4k_1, k_2, k_3, k_4 и берёт их взвешенное среднее, добиваясь глобальной погрешности O(h4)O(h^4) при четырёх вычислениях правой части. Этот баланс точности и стоимости и сделал метод Рунге-Кутты 4 порядка стандартом «по умолчанию» в инженерных расчётах и учебных задачах.

Постановка задачи Коши

Решаем задачу Коши для уравнения первого порядка: дано y=f(x,y)y' = f(x, y) и начальное условие y(x0)=y0y(x_0) = y_0. Аналитическая первообразная часто недоступна (правая часть нелинейна по yy, как у y=x2+y2y' = x^2 + y^2), поэтому решение строят численно - по точкам. Вводят равномерную сетку с шагом hh: узлы xn=x0+nhx_n = x_0 + n h, и ищут приближения yny(xn)y_n \approx y(x_n). Любой одношаговый метод даёт правило перехода yn+1=yn+Φ(xn,yn,h)y_{n+1} = y_n + \Phi(x_n, y_n, h), где Φ\Phi - приращение, оценивающее, насколько вырастет решение за шаг. Весь вопрос в том, как точно оценить это приращение.

Самая грубая оценка - метод Эйлера: yn+1=yn+hf(xn,yn)y_{n+1} = y_n + h\, f(x_n, y_n). Он берёт наклон только в начале отрезка и продлевает его на весь шаг, накапливая глобальную погрешность O(h)O(h). Метод Рунге-Кутты 4 порядка устраняет эту грубость, опрашивая наклон в четырёх точках отрезка.

Tool: один шаг метода Рунге-Кутты 4 порядка

Считать k1,k2,k3,k4k_1, k_2, k_3, k_4 вручную для y=x2+y2y' = x^2 + y^2 при h=0,1h = 0{,}1 - занятие, в котором легко ошибиться арифметически: на каждом шаге четыре подстановки в правую часть и аккуратное взвешивание. Ниже - мини-форма: выбираешь уравнение из списка (или вписываешь своё), задаёшь x0x_0, y0y_0, шаг hh и число шагов - получаешь пошаговый расчёт всех четырёх коэффициентов и таблицу значений yny_n.

Формулы коэффициентов k1–k4

Суть метода Рунге-Кутты 4 порядка - оценить наклон решения в четырёх точках отрезка [xn,xn+1][x_n, x_{n+1}] и усреднить их по правилу Симпсона. Коэффициенты вычисляются последовательно, каждый следующий использует предыдущий:

k1=f(xn,yn),k_1 = f(x_n,\, y_n), k2=f ⁣(xn+h2,  yn+h2k1),k_2 = f\!\left(x_n + \tfrac{h}{2},\; y_n + \tfrac{h}{2} k_1\right), k3=f ⁣(xn+h2,  yn+h2k2),k_3 = f\!\left(x_n + \tfrac{h}{2},\; y_n + \tfrac{h}{2} k_2\right), k4=f ⁣(xn+h,  yn+hk3).k_4 = f\!\left(x_n + h,\; y_n + h\, k_3\right).

Здесь k1k_1 - наклон в начале шага (как у Эйлера), k2k_2 и k3k_3 - два уточнённых наклона в середине отрезка, k4k_4 - наклон в конце, посчитанный уже с учётом продвижения по k3k_3. Итоговое приращение - взвешенное среднее:

yn+1=yn+h6(k1+2k2+2k3+k4).y_{n+1} = y_n + \frac{h}{6}\bigl(k_1 + 2 k_2 + 2 k_3 + k_4\bigr).

Веса 1,2,2,11, 2, 2, 1 при сумме 66 в знаменателе - не случайны: это в точности квадратурные веса метода Симпсона на отрезке с серединой. Если правая часть не зависит от yy, то есть y=f(x)y' = f(x), метод Рунге-Кутты 4 порядка вырождается ровно в формулу Симпсона для интеграла xnxn+1f(x)dx\int_{x_n}^{x_{n+1}} f(x)\,dx. Об этой квадратуре подробнее - в статье про метод Симпсона.

Запоминайте порядок: $k_1$ - в начале, $k_2, k_3$ - дважды в середине (по разным наклонам), $k_4$ - в конце. Веса средних точек вдвое больше: середина отрезка вносит главный вклад в точность.

Геометрический смысл усреднения

Метод Эйлера ошибается, потому что наклон в начале отрезка не отражает, как кривая решения изгибается дальше. Пробные точки k2k_2 и k3k_3 заглядывают в середину: k2k_2 оценивает наклон, шагнув на полшага по эйлеровому k1k_1, а k3k_3 - повторно, но уже по уточнённому k2k_2. Эти два средних наклона ловят кривизну решения. Финальный k4k_4 проверяет наклон в конце шага. Взвешенное среднее 16(k1+2k2+2k3+k4)\tfrac{1}{6}(k_1 + 2k_2 + 2k_3 + k_4) гасит систематическую ошибку: ряды Тейлора приближения и точного решения совпадают вплоть до члена h4h^4 включительно.

Именно это совпадение тейлоровских разложений до четвёртого члена и означает «4 порядок»: каждый дополнительный согласованный член ряда поднимает порядок на единицу. Эйлер согласует только линейный член - отсюда его первый порядок.

Локальная и глобальная погрешность O(h^4)

Различают две погрешности. Локальная погрешность усечения - ошибка за один шаг при условии, что предыдущее значение точное; у метода Рунге-Кутты 4 порядка она составляет O(h5)O(h^5). Глобальная погрешность - накопленное отклонение yny(xn)|y_n - y(x_n)| на всём отрезке; шагов порядка 1/h1/h, поэтому глобальная погрешность на порядок ниже локальной и равна O(h4)O(h^4). Отсюда и название: «4 порядка» - это порядок именно глобальной точности.

Практический вывод из O(h4)O(h^4): уменьшение шага hh вдвое уменьшает глобальную ошибку примерно в 24=162^4 = 16 раз. У метода Эйлера (O(h)O(h)) тот же приём снижает ошибку лишь вдвое. Поэтому при одинаковой требуемой точности РК4 обходится в разы меньшим числом шагов, несмотря на четыре вычисления ff за шаг. Для жёстких уравнений или при необходимости контролировать ошибку автоматически используют вложенные схемы вроде Рунге-Кутты-Фельберга (RKF45), оценивающие погрешность на лету.

Сравнение с методом Эйлера и порядок методов

Семейство явных методов Рунге-Кутты параметризуется числом стадий ss (вычислений ff за шаг). Метод Эйлера - это РК первого порядка с одной стадией. Метод средней точки и метод Хойна (улучшенный Эйлер) - второго порядка, две стадии. Классический РК4 - четыре стадии, четвёртый порядок. До s=4s = 4 порядок равен числу стадий, что и делает РК4 «золотой серединой»: дальше за каждую дополнительную единицу порядка приходится платить более чем одной стадией (барьер Бутчера), и выигрыш окупается только при очень высоких требованиях к точности.

МетодСтадий ssГлобальная погрешность
Эйлера1O(h)O(h)
Хойна / средней точки2O(h2)O(h^2)
Рунге-Кутты 4 порядка4O(h4)O(h^4)

Системы уравнений и уравнения высших порядков

Метод Рунге-Кутты 4 порядка переносится на системы без изменений: yy становится вектором, ff - вектор-функцией, а k1,,k4k_1, \ldots, k_4 - векторами; формулы те же. Уравнение второго порядка y=g(x,y,y)y'' = g(x, y, y') сводят к системе из двух уравнений первого порядка заменой u=yu = y': получают y=uy' = u, u=g(x,y,u)u' = g(x, y, u) и решают совместно. Так РК4 покрывает почти все учебные дифференциальные уравнения, не имеющие аналитического решения. Если же интегральное преобразование всё-таки даёт замкнутый ответ, его стоит предпочесть - см. преобразование Лапласа.

Частые ошибки

  • Путают k2k_2 и k3k_3. Оба считаются в середине xn+h/2x_n + h/2, но k2k_2 использует сдвиг yn+h2k1y_n + \tfrac{h}{2}k_1, а k3k_3 - сдвиг yn+h2k2y_n + \tfrac{h}{2}k_2. Подстановка k1k_1 вместо k2k_2 в третий коэффициент - самая частая арифметическая ошибка.
  • Забывают полушаг в аргументе xx. В k2k_2 и k3k_3 сдвигается не только yy, но и xx на h/2h/2; в k4k_4 - на полный hh. Если ff зависит от xx, пропуск этого сдвига портит порядок.
  • Делят на 4 вместо 6. Веса 1,2,2,11, 2, 2, 1 дают сумму 66, поэтому в знаменателе стоит именно 66, а не число коэффициентов.
  • Считают O(h4)O(h^4) локальной погрешностью. Локальная - O(h5)O(h^5), глобальная - O(h4)O(h^4). Их путаница искажает оценку при выборе шага.
  • Берут слишком большой hh для жёсткой задачи. Явный РК4 условно устойчив: на жёстких уравнениях при большом hh решение «разлетается». Это решается уменьшением шага или неявными методами.

FAQ

Почему именно 4 порядок, а не выше? До четырёх стадий порядок равен числу вычислений ff, дальше за каждый дополнительный порядок нужно более одной лишней стадии. РК4 - точка наилучшего соотношения точности и стоимости для большинства гладких задач.

Чем РК4 лучше метода Эйлера? При том же шаге глобальная ошибка падает с O(h)O(h) до O(h4)O(h^4). Чтобы достичь точности РК4, методу Эйлера потребовались бы несопоставимо более мелкие шаги, и суммарно он окажется медленнее.

Подходит ли РК4 для систем и уравнений второго порядка? Да. Система решается покомпонентно теми же формулами с векторными kik_i, а уравнение высшего порядка предварительно сводят к системе первого порядка заменой переменных.

Коротко

Метод Рунге-Кутты 4 порядка решает задачу Коши y=f(x,y)y' = f(x, y), y(x0)=y0y(x_0) = y_0, вычисляя на каждом шаге четыре наклона k1k_1k4k_4 и переходя по правилу yn+1=yn+h6(k1+2k2+2k3+k4)y_{n+1} = y_n + \tfrac{h}{6}(k_1 + 2k_2 + 2k_3 + k_4). Веса 1,2,2,11,2,2,1 повторяют квадратуру Симпсона, разложения Тейлора совпадают до члена h4h^4, отсюда глобальная погрешность O(h4)O(h^4) - на три порядка лучше Эйлера при четырёх вычислениях правой части за шаг. Метод без изменений переносится на системы и, через сведение к системе, на уравнения высших порядков, что и делает его рабочим стандартом численного интегрирования ОДУ.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также