2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Решение Д.У. 2 порядка методом Рунге-Кутта
Сообщение13.12.2007, 23:53 
Срочно нужна помощь в решении дифференциального уравнения второго порядка методом Рунге-Кутта 4го порядка. Численным методом, естественно.

Необходимую теорию я знаю (все формулы и т.п.), но на практике ничего не получается, путаюсь...

Пример такой:
y''+2*y'+y=exp(-x)/x
Начальные данные: y(1) = 1; y'(1) = 0;

Затруднения в подсчете K1-K4...

Пожалуйста, помогите!)) Очень-очень срочно!!!

 
 
 
 
Сообщение14.12.2007, 00:50 
Для диф. уравнения $y'=f(x,y)$ с условием $y(x_{0})=y_{0}$ формула имеет вид (если я не ошибаюсь):
$y(x+h)\approx y(x)+\frac{1}{6}(K_{1}+2*K_{2}+2*K_{3}+K_{4}),$ где
$K_{1}=h*f(x,y),$
$K_{2}=h*f(x+\frac{h}{2},y+\frac{K_{1}}{2}),$
$K_{3}=h*f(x+\frac{h}{2},y+\frac{K_{2}}{2}),$
$K_{4}=h*f(x+h,y+K_{3}).$

 
 
 
 
Сообщение14.12.2007, 09:07 
Imperator писал(а):
Для диф. уравнения $y'=f(x,y)$ с условием $y(x_{0})=y_{0}$ формула имеет вид (если я не ошибаюсь):


Имеется семейство методов Рунге-Кутта 4-го порядка. Эти формулы красивые такие, симметричные, поэтому их часто и используют. А можно посмотреть на конкретное уравнение и выбрать другой метод из семейства. Вдруг он будет лучше?

 
 
 
 
Сообщение14.12.2007, 09:32 
Спс! Но эти формулы я знаю. У меня просто не получается нормально подставлять числовые значения. В этом я и прошу помощи.
Что на какие компоненты умножать и т.д...
Если можно, но напишите, пожалуйста, как считать (в данных числах данной задачи) хотя бы К1 и К2 (последнее важнее).

 
 
 
 
Сообщение14.12.2007, 11:47 
Ваше уравнение второго порядка следует свести к системе первого порядка, а далее все по приведенным выше формулам:
$\[
\left\{ \begin{gathered}
  u' =  - 2u - y + \frac{{e^{ - x} }}
{x} \hfill \\
  y' = u \hfill \\ 
\end{gathered}  \right.
\]
$

 
 
 
 
Сообщение14.12.2007, 13:29 
Эх) Я же написал, что формулы знаю, но проблемы с непосредственной подстановкой.

Мое решение: (проверьте)

1) u0 = y; u1 = y'.

2) Получаю систему:
.......du0/dx = u1;
.......du1/dx = e^(-x)/x - 2*u1 - u0;

3) Дальше у меня коэф-ты получаются такие:

K1 = [ 0 ]
........[ -0.63 ]

K2 = [ -0.58 ]
........[ 0.51 ]

K3 = [ 0.0255 ]
........[ -0.701 ]

K4 = [ -0.0701 ]
........[ -0.79375 ]

Проверьте, пожалуйста! Ибо проблема вся именно в подсчете этих коэф-ов...

Добавлено спустя 57 минут 49 секунд:

Получил следущие вектора решений:

Yo = [ 1 ]
........[ 0 ]

Y1 = [ 0.98 ]
........[ 0.0166 ]

Y2 = [ 0.97824 ]
........[ -0.05 ]

Похоже на правду?!

 
 
 
 
Сообщение14.12.2007, 15:45 
Ваш дифур имеет аналитическое решение:
$\[
y = (x(\ln x + e - 1) + 1)e^{ - x} 
\]
$
Это решение легко отыскать, если выразить общее решение вашего уравнения в виде
$\[
y = ue^{ - x} 
\]
$
Сказать вам, похожи ли ваши результаты на правду, я не могу, т.к. вы не написали, чему в ваних выкладках равен шаг интегрирования h.

 
 
 
 
Сообщение14.12.2007, 15:50 
Searcher писал(а):
Эх) Я же написал, что формулы знаю, но проблемы с непосредственной подстановкой.
Мое решение: (проверьте)

Вот с Вашего решения следовало бы начинать. В соответствии с правилами форума рекомендуется помогать с решением, а не решать за спрашивающего, особенно для совершенно стандартных задач.

Если Вы просите проверить, правильно ли Вы подставляете числа в известные Вам формулы, то выпишите подробно что и куда Вы подставляете. Только тогда Вам смогут помочь. А то Вы решения то и не привели, только ответы, даже шаг не указали.

 
 
 
 
Сообщение14.12.2007, 22:03 
Дело в том, что до ответов я довел уже после того, как разместил тему на этом форуме.

Теперь прошу проверить решение, т.к. все равно не уверен в подстановках...
Шаг здесь я беру h = 0.1

А вот так я считал коэф-ты для Yo:

\mathbf{K_{1}(Y_{0})} =
\left( \begin{array}{ccc}
u_{1}(x_{0}) \\
\frac{e^{-x_{0}}}{x_{0}}} - 2*u_{1}(x_{0}) - u_{0}(x_{0}) \\
\end{array} \right) =
\left( \begin{array}{ccc}
0 \\
\frac{e^{-1}}{1}} - 2*0 - 1\\
\end{array} \right)
=
\left( \begin{array}{ccc}
0 \\
-0.63 \\
\end{array} \right)
$$

\mathbf{K_{2}(Y_{0})} =
\left( \begin{array}{ccc}
0 + \frac{0.1}{2}}*(-0.63) \\
\frac{e^{-(1+ 0.05)}}{1 + 0.05}} - 2*(0 + \frac{0.1}{2}}*(-0.63)) - (1+\frac{0.1}{2}}*0)\\
\end{array} \right)
=
\left( \begin{array}{ccc}
-0.58 \\
0.51 \\
\end{array} \right)
$$

\mathbf{K_{3}(Y_{0})} =
\left( \begin{array}{ccc}
0 + \frac{0.1}{2}}*(0.51) \\
-0.701 \\
\end{array} \right)
=
\left( \begin{array}{ccc}
0.0255 \\
-0.701 \\
\end{array} \right)
$$

\mathbf{K_{4}(Y_{0})} =
\left( \begin{array}{ccc}
-0.0701 \\
0.0686 + 0.1402 - (1 + 0.1*0.0255) \\
\end{array} \right)
=
\left( \begin{array}{ccc}
-0.0701 \\
-0.79375 \\
\end{array} \right)
$$

В конечном итоге у меня получилось:
\mathbf{Y_{0}} =
\left( \begin{array}{ccc}
0.98 \\
0.0166 \\
\end{array} \right)
$$

А потом и
\mathbf{Y_{1}} =
\left( \begin{array}{ccc}
0.97824 \\
-0.05 \\
\end{array} \right)
$$

 
 
 
 
Сообщение15.12.2007, 08:50 
Аватара пользователя
 !  нг:
Searcher
На форуме принято записывать формулы, используя нотацию ($\TeX$; введение, справка).

Пожалуйста, исправьте и сообщите модератору (ЛС).


 !  dm:
Возвращаю.

 
 
 
 
Сообщение16.12.2007, 13:48 
Вот нужно еще решить это же уравнение с помощью неявной схемы.
Вот что у меня получилось:

$ y'' = \frac {e^{-x}} {x} - 2*y' - y; $\\
при начальных условиях: \\
y_{0} = 1; y_{0}' = 0; x_{0} = 1;

y_{i+1}' = \frac{y_{i+1} - y_{i}}{h}}; \\
y_{i+1}'' = \frac{y_{i+1} - 2*y_{i} + y_{i-1}}{h^{2}}}; \\

Находим y_{1} по формуле: \\
y_{1} = y_{0} + h*y_{0}' = 1 + 0.1*0 = 1; \\

Первое значение мы можем получить только для y_{2}, т.к. \\
y_{i+1} = 2*y_{i} - y_{i-1} + h^2 *( $$ \frac {e^{-x_{i}}} {x_{i}} $$ - 2*($$ \frac {y_{i} - y_{i-1}} {h} $$) - y_{i} ) \\
\\
y_{2} = 2*y_{1} - y_{0} + h^2 *( $$ \frac {e^{-x_{1}}} {x_{1}} $$ - 2*($$ \frac {y_{1} - y_{0}} {h} $$) - y_{1} ); \\
y_{2} = 2*1 - 1 + (0.1)^2 *( $$ \frac {e^{-1.1}} {1.1} $$ - 2*($$ \frac {1 - 1} {0.1} $$) - 1 ); \\
y_{2} = 0.99303 \\

Правильно это или нет?

 
 
 
 
Сообщение16.12.2007, 16:45 
Searcher писал(а):
А вот так я считал коэф-ты для Yo: ...
В той части, где Вы расписали формулы ($K_1$, $K_2$ и 1-я строка $K_3$) подстановки вроде бы правильные. Арифметику я не проверял.

 
 
 
 
Сообщение16.12.2007, 16:47 
Yuri Gendelman писал(а):
Searcher писал(а):
А вот так я считал коэф-ты для Yo: ...
В той части, где Вы расписали формулы ($K_1$, $K_2$ и 1-я строка $K_3$) подстановки вроде бы правильные. Арифметику я не проверял.

Спасибо! Что можете сказать по второму методу?

 
 
 
 
Сообщение17.12.2007, 16:10 
Помогите! Срочно!

 
 
 
 
Сообщение18.12.2007, 04:45 
Аватара пользователя
Searcher
Ваше последнее сообщение — не информативное. Подъём тем запрещен правилами форума.

 
 
 [ Сообщений: 15 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group