Что делает калькулятор метода Рунге-Кутты 2-го порядка?
Этот инструмент численно решает обыкновенное дифференциальное уравнение (ОДУ) первого порядка вида \(y' = F(x, y)\) на отрезке \([x_0, x_n]\), отправной точкой служит начальное условие \(y_0 = f(x_0)\). В основе расчёта лежит метод Рунге-Кутты 2-го порядка (метод средней точки): на выходе вы получаете таблицу приближений \((x, y)\) и итоговое значение \(y_n = f(x_n)\). Это универсальный математический инструмент — он не привязан к какой-либо стране или законодательству.
Как пользоваться калькулятором
Введите правую часть \(F(x,y)\) в виде математического выражения с переменными \(x\) и \(y\) (например, 1-y^2, x*y или sin(x)+y). Укажите начальную точку \(x_0\) и \(y_0\), правую границу интервала \(x_n\) и задайте число равных разбиений \(n\). Отрезок делится на \(n\) шагов длиной \(h = (x_n - x_0)/n\). Чем больше \(n\), тем мельче шаг и выше точность. Переключатель точности отображения влияет только на количество выводимых значащих цифр, но не на сам расчёт.
Разбор формулы
Схема Рунге-Кутты с серединной точкой продвигает решение шаг за шагом:
$$k_1 = h \cdot F(x_i, y_i)$$$$k_2 = h \cdot F\left(x_i + \frac{h}{2},\; y_i + \frac{k_1}{2}\right)$$$$y_{i+1} = y_i + k_2, \quad x_{i+1} = x_i + h$$Наклон оценивается в середине шага, и это устраняет главный член погрешности. Локальная ошибка усечения составляет \(O(h^3)\), а глобальная — \(O(h^2)\): то есть при уменьшении \(h\) вдвое ошибка падает примерно вчетверо.
Разобранный пример
Решим \(y' = 1 - y^2\) при \(x_0 = 0\), \(y_0 = 0\), \(x_n = 1\), \(n = 50\) (тогда \(h = 0.02\)). Точное решение — \(y = \tanh(x)\). Шаг 1: \(k_1 = 0.02 \cdot (1-0) = 0.02\); \(k_2 = 0.02 \cdot (1-0.01^2) = 0.019998\); \(y_1 = 0.019998\). Пройдя все 50 шагов, получаем \(y(1) \approx 0.76159\), что совпадает с \(\tanh(1) \approx 0.7615942\) с точностью до пяти знаков после запятой.
Частые вопросы
Насколько точен результат? Точность растёт с увеличением \(n\), поскольку глобальная ошибка пропорциональна \(h^2\). Для жёстких уравнений или слишком крупных шагов решение может расходиться.
Может ли \(x_n\) быть меньше \(x_0\)? Да. В этом случае \(h\) становится отрицательным, и метод интегрирует «назад» по \(x\) — это вполне корректно.
Какие функции можно использовать? Стандартные: sin, cos, tan, exp, ln, log, sqrt, а также операции \(+, -, \times, /, \char`\^\), скобки и константы \(e\) и \(\pi\).