2014 dxdy logo

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

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




На страницу 1, 2  След.
 
 Метод Рунге-Кутты для вектора
Сообщение20.11.2015, 08:10 
Добрый день!
Помогите, пожалуйста, с теорией!
Как решить уравнение методом Рунге-Кутты если у нас вектор-функция:
$y'_i=f(x, (y_{i-1}, y_{i}, y_{i+1})), y_0=0$.

Вопрос заключается в том, как считать на $i$-ом шаге что-то, когда наше уравнение зависит от $(i-1)$-ого и от $(i+1)$-ого шага?

$y'_1=f(x, (y_{0}, y_{1}, y_{2}))$
$y'_2=f(x, (y_{1}, y_{2}, y_{3}))$
........

P.S. Решать нужно именно методом Рунге-Кутты

 
 
 
 Posted automatically
Сообщение20.11.2015, 09:14 
 i  Тема перемещена из форума «Помогите решить / разобраться (М)» в форум «Карантин»
по следующим причинам:

- неправильно набраны формулы (краткие инструкции: «Краткий FAQ по тегу [math]» и видеоролик Как записывать формулы);
- отсутствуют собственные содержательные попытки решения задач(и).

Исправьте все Ваши ошибки и сообщите об этом в теме Сообщение в карантине исправлено.
Настоятельно рекомендуется ознакомиться с темами Что такое карантин и что нужно делать, чтобы там оказаться и Правила научного форума.

 
 
 
 Posted automatically
Сообщение26.11.2015, 15:49 
 i  Тема перемещена из форума «Карантин» в форум «Помогите решить / разобраться (М)»

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 16:08 
mlle_a в сообщении #1075061 писал(а):
Вопрос заключается в том, как считать на $i$-ом шаге что-то, когда наше уравнение зависит от $(i-1)$-ого и от $(i+1)$-ого шага?

По-видимому, Вы путаете шаги интегрирования и компоненты вектор-функции, а это разные вещи. Если метод явный, то все $y_i$ для предыдущих шагов известны, ничего другого для расчета не нужно.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 19:26 
Pphantom в сообщении #1077015 писал(а):
mlle_a в сообщении #1075061 писал(а):
Вопрос заключается в том, как считать на $i$-ом шаге что-то, когда наше уравнение зависит от $(i-1)$-ого и от $(i+1)$-ого шага?

По-видимому, Вы путаете шаги интегрирования и компоненты вектор-функции, а это разные вещи. Если метод явный, то все $y_i$ для предыдущих шагов известны, ничего другого для расчета не нужно.


Да, не верно выразилась!

Например в первом уравнении $y'_1=f(x, (y_0, y_1, y_2))$ в левой части функция $y'_1$, а в правой части $(y_0, y_1, y_2)$. Про $y_0$ мы что-то знаем. $y_1$ - искомая. Что делать с $y_2$?

Хотела решить ее в Matlab.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 19:37 
mlle_a в сообщении #1077056 писал(а):
Например в первом уравнении $y'_1=f(x, (y_0, y_1, y_2))$ в левой части функция $y'_1$, а в правой части $(y_0, y_1, y_2)$. Про $y_0$ мы что-то знаем. $y_1$ - искомая. Что делать с $y_2$?
Т.е. индексами обозначены все-таки шаги интегрирования?

Тогда это неявный метод. Записывать аппроксимацию производной в левой части и решать получающуюся систему алгебраических (вообще говоря, нелинейных) уравнений каким-нибудь методом, получая $y_2$.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 19:54 
Pphantom в сообщении #1077061 писал(а):
mlle_a в сообщении #1077056 писал(а):
Например в первом уравнении $y'_1=f(x, (y_0, y_1, y_2))$ в левой части функция $y'_1$, а в правой части $(y_0, y_1, y_2)$. Про $y_0$ мы что-то знаем. $y_1$ - искомая. Что делать с $y_2$?
Т.е. индексами обозначены все-таки шаги интегрирования?

Тогда это неявный метод. Записывать аппроксимацию производной в левой части и решать получающуюся систему алгебраических (вообще говоря, нелинейных) уравнений каким-нибудь методом, получая $y_2$.


$(y_0, y_1, y_2)$ - это вектор-функция.
Напимер, уравнение исходное такое $y'_i=Ay_{i-1}y_i+By_iy_{i+1}+Cy_{i+1}y_{i-1}$, где $A, B, C$- коэффициенты.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:06 
mlle_a в сообщении #1077068 писал(а):
$(y_0, y_1, y_2)$ - это вектор-функция.
М-да. :facepalm: В общем, как все-таки полезно нормально формулировать задачу.

Вы знаете все $y_i$ на предыдущем шаге интегрирования. Этого вполне достаточно для вычисления значения производной.

Запишите выражения используемого Вами метода, но так, чтобы в них фигурировали величины вроде $y_i^{(n)}$, где $i$ - номер элемента вектора, а $n$ - номер шага по времени. Вместо $n$ можно явно указать аргументы вектор функции (например, $y_i(t)$ или $y_i(t+\tau)$ и т.п.).

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:32 
Аватара пользователя
mlle_a
А что, сильно нужно именно Рунге-Кутты? В принципе $y'_i$ можно выразить через $y_{i-1},y_i,y_{i+1}$ (через конечные разности). Получите уравнение. Найдёте $y_{i+1}$. Далее делаете шаг по времени и т.д. Посмотрите, будет ли этот метод работать. Затем попробуйте усложнять его в духе метода Рунге-Кутты.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:36 
мат-ламер в сообщении #1077095 писал(а):
А что, сильно нужно именно Рунге-Кутты?
На самом деле тут это совершенно непринципиально. Проблема ТС не связана с конкретным методом, она появилась бы и для явного метода Эйлера первого порядка. :D

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:40 
Аватара пользователя
Я думаю, что проблема ТС связана с тем, что уравнение не совсем стандартное (с запаздывающими и опережающими аргументами). И в учебниках численные методы для него не разбираются. Тут либо в поиск по статьям идти, либо самому что-то изобретать.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:47 
мат-ламер в сообщении #1077102 писал(а):
Я думаю, что проблема ТС связана с тем, что уравнение не совсем стандартное (с запаздывающими и опережающими аргументами).
Мы уже выяснили, что это неверно.

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 20:50 
Аватара пользователя
mlle_a
Что у вас есть индекс $i$, и в каких пределах он меняется?

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение26.11.2015, 23:50 
мат-ламер в сообщении #1077108 писал(а):
mlle_a
Что у вас есть индекс $i$, и в каких пределах он меняется?


Теоретически, $i$ от 0 до бесконечности.
$y_i$ зависит от $x$
Я зафиксирую $i$ и буду считать по $x$
Поэтому для $i$ будет несколько шагов, пока общая картина не станет ясной

 
 
 
 Re: Метод Рунге-Кутты для вектора
Сообщение27.11.2015, 00:25 
mlle_a
Вы лучше скажите, что Вы решаете. Какое уравнение. Или что Вы там решаете. Про метод потом вспомните. А то смешались в кучу кони, люди.

В исходной постановке задачи никаких шагов нет. И номеров шагов тоже.

 
 
 [ Сообщений: 21 ]  На страницу 1, 2  След.


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