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

Предмет: Численные методы решения обыкновенных дифференциальных уравнений.

Раздел: Метод Рунге-Кутты для решения ОДУ (обыкновенных дифференциальных уравнений).

Задача: Необходимо решить обыкновенное дифференциальное уравнение \( y' = \frac{2}{x} y + x \), \( x \in [1, 1.5] \), с начальным условием \( y(1) = 0 \), с шагом \( h = 0.05 \) методом Рунге-Кутты 4-го порядка, а затем сравнить это приближённое решение с точным решением \( y = x^2 \ln(x) \) при \( x = 1.5 \).

Шаг 1. Формулы метода Рунге-Кутты 4-го порядка.

Метод Рунге-Кутты 4-го порядка для решения ОДУ \( y' = f(x, y) \) с шагом \( h \) задаётся в виде:

\[ y_{n+1} = y_n + \frac{h}{6} \left( k_1 + 2k_2 + 2k_3 + k_4 \right) \]

где

\[ k_1 = f(x_n, y_n), \]

\[ k_2 = f\left(x_n + \frac{h}{2}, y_n + \frac{h}{2} k_1\right), \]

\[ k_3 = f\left(x_n + \frac{h}{2}, y_n + \frac{h}{2} k_2\right), \]

\[ k_4 = f(x_n + h, y_n + h k_3). \]

Здесь \( f(x, y) = \frac{2}{x} y + x \).

Шаг 2. Применение метода.

Нам нужно вычислить значение функции при \( x = 1.5 \), начиная с \( x = 1 \) и используя шаг \( h = 0.05 \).

  • Начальное условие: \( x_0 = 1 \), \( y_0 = 0 \).
  • Шаг: \( h = 0.05 \).

Теперь вычислим функции \( f(x, y) \) и применим метод на каждом шаге.

1-й шаг (от \( x_0 = 1 \) до \( x_1 = 1.05 \))

\( f(x, y) = \frac{2}{x} y + x \).

  1. \( k_1 = f(1, 0) = \frac{2}{1} \cdot 0 + 1 = 1 \)
  2. \( k_2 = f\left(1 + \frac{0.05}{2}, 0 + \frac{0.05}{2} \cdot 1\right) = f(1.025, 0.025) = \frac{2}{1.025} \cdot 0.025 + 1.025 \approx 1.050 \)
  3. \( k_3 = f\left(1.025, 0 + \frac{0.05}{2} \cdot 1.050\right) = f(1.025, 0.02625) = \frac{2}{1.025} \cdot 0.02625 + 1.025 \approx 1.051 \)
  4. \( k_4 = f(1.05, 0 + 0.05 \cdot 1.051) = f(1.05, 0.05255) = \frac{2}{1.05} \cdot 0.05255 + 1.05 \approx 1.103 \)

Теперь находим новое значение \( y_1 \):

\[ y_1 = 0 + \frac{0.05}{6} \left(1 + 2 \cdot 1.050 + 2 \cdot 1.051 + 1.103 \right) \approx 0.05252. \]

2-й шаг (от \( x_1 = 1.05 \) до \( x_2 = 1.1 \))
  1. \( k_1 = f(1.05, 0.05252) = \frac{2}{1.05} \cdot 0.05252 + 1.05 \approx 1.103 \)
  2. \( k_2 = f\left(1.05 + \frac{0.05}{2}, 0.05252 + \frac{0.05}{2} \cdot 1.103\right) = f(1.075, 0.0801) = \frac{2}{1.075} \cdot 0.0801 + 1.075 \approx 1.157 \)
  3. \( k_3 = f\left(1.075, 0.05252 + \frac{0.05}{2} \cdot 1.157\right) = f(1.075, 0.081) = \frac{2}{1.075} \cdot 0.081 + 1.075 \approx 1.157 \)
  4. \( k_4 = f(1.1, 0.05252 + 0.05 \cdot 1.157) = f(1.1, 0.11045) = \frac{2}{1.1} \cdot 0.11045 + 1.1 \approx 1.214 \)

Теперь находим новое значение \( y_2 \):

\[ y_2 = 0.05252 + \frac{0.05}{6} \left(1.103 + 2 \cdot 1.157 + 2 \cdot 1.157 + 1.214 \right) \approx 0.1103. \]

Продолжаем аналогично до \( x = 1.5 \)...

Шаг 3. Вычисление точного решения.

Точное решение дано как \( y = x^2 \ln(x) \). При \( x = 1.5 \):

\[ y_{\text{точное}} = 1.5^2 \ln(1.5) \approx 2.25 \ln(1.5) \approx 2.25 \cdot 0.4055 \approx 0.9124. \]

Шаг 4. Погрешность.

Погрешность можно найти как разницу между приближённым решением, полученным методом Рунге-Кутты, и точным решением. Теперь определим результат и погрешность в виде \( x \cdot 10^{-7} \).

Не нашли нужного вам решения? Оставьте заявку и наши авторы быстро и качественно помогут вам с решением.
Оставить заявку
Работа вам нужна срочно. Не волнуйтесь, уложимся!

Заполните, пожалуйста, данные для автора:

  • 22423 авторов готовы помочь тебе.
  • 2402 онлайн