2014 dxdy logo

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

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




На страницу 1, 2  След.
 
 Решение дифуров методом Рунге-Кутта
Сообщение25.11.2008, 08:24 
Есть три дифура в рамка физической задачи, их необходимо решить:

Дифуры

Буду очень благодарен, если кто-то поможет :wink:

 
 
 
 
Сообщение25.11.2008, 09:59 
ну и в чём проблема? Как обычно, понижайте порядок удвоением размерности ($y_i=z_{2i},\ y'_i=z_{2i+1},\ y''_i=z'_{2i+1}$). И подставляйте себе в стандартного Рунге-Кутта.

 
 
 
 
Сообщение25.11.2008, 10:33 
ewert, зачем?

Там же вторая производная, которая аппроксимируется хорошо.

Хотя, если обязательно Рунге-Куттом...

 
 
 
 
Сообщение25.11.2008, 10:40 
что значит -- "хорошо"?

Лобовая аппроксимация приводит к многошаговому методу. И поди ещё разберись с его устойчивостью. А в методах Рунге-Кутта этот вопрос автоматически отпадает.

 
 
 
 
Сообщение25.11.2008, 19:47 
Можно использовать схему Нумерова, которая четвертого порядка точности и совсем чуть более хитрая, чем лобовая:
$\frac{y_{i+1}-2y_i+y_{i-1}}{h^2}=\frac{1}{12}(f(x_{i-1},y_{i-1})+10f(x_i,y_i)+f(x_{i+1},y_{i+1}))$.

Чем она хуже РК-4?

 
 
 
 
Сообщение25.11.2008, 19:55 
Тем, что ориентирован на краевые задачи, притом только Дирихле.

 
 
 
 
Сообщение26.11.2008, 06:37 
Дак это не три уравнения - а гораздо больше. Походит на задачу Ферми-Паста-Улама (стохастическое ускорение) - только там постоянные коэффициенты и что-то не то у Вас с крайними уравнениями.
http://vision.rambler.ru/users/yu_k/1/2/ - мультик для подобной системе - сделано в Маткаде, метод Рунге-Кута, система ДУ формируется в программе автоматически в символьном виде. Только там рекламу вставляют - реклама не моя - мультик мой.

 
 
 
 Re: Решение дифуров методом Рунге-Кутта
Сообщение26.11.2008, 07:30 
Аватара пользователя
Toolen писал(а):
Есть три дифура в рамка физической задачи, их необходимо решить

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

 
 
 
 
Сообщение26.11.2008, 08:46 
Yu_K, Да, именно цепочка Ферми-Паста-Уламы, только мне нужно свою программу разработать, а что с краями?

Задача состоит в следующем:
имеется цепочка пружин и грузов (количеством n), крайние пружины зафиксированы, т.е. выглядит это примерно так -

]\/\/\/O\/\/\/O\/\/\/O\/\/\/ ... \/\/\/O\/\/\/O\/\/\/O\/\/\/[

Ось Х слева на право

В уравнении m - масса груза, x - его координата, соостветственно х" - его ускорение, к - коэфициент жесткости пружины, а - длина пружины. Второе и третье уравнения для концов цепочки, левого и правого соответственно

В программе должны задаваться начальный условия для каждого элемента цепочки (в начале их три) и далее рисоваться график изменения координат х каждого груза в течении времени

 
 
 
 
Сообщение26.11.2008, 09:51 
Просто у вас есть два уравнения - куда у вас вошли шарики с номерами (-1) и (n+1) - но таких номеров у вас нет в цепочке, если есть - то вопрос где для них уравнения?

 
 
 
 
Сообщение26.11.2008, 10:15 
Это не шарики, это фиксированные концы пружин, левый и правый соответственно.

 
 
 
 
Сообщение26.11.2008, 12:07 
А если навести некоторый порядок?

Имеем $n$ шариков массами $m_1,\;m_1,\;\dots,\;m_n$. Окружённых пружинками жёсткости $k_{i-1}$ и $k_{i}$ для каждого $m_{i}$. Длины пружинок можно (и нужно) не учитывать, если под $x_i$ понимать не абсолютную координату, а смещение этого шарика относительно своего положения равновесия (т.е. координату, из которой вычтена накопленная сумма длин).

Для функций $x_i(t)$ имеем систему из $n$ дифференциальных уравнений второго порядка. После соответствующего переобозначения приходим к системе из $2n$ линейных однородных уравнений первого порядка для$ 2n$ неизвестных функций $\{x_i(t),\;x'_i(t)\}$.

В принципе, эта система легко решается "аналитически", стоит только найти собственные числа и векторы матрицы системы. А из физических соображений, между прочим, следует, что собственные числа -- чисто мнимые и что матрица диагонализуема (иначе нарушался бы закон сохранения энергии).

Ну или применяем к системе любой численный метод; матрица системы известна явно, и всё сводится к формальной подстановке. Только не метод Нумерова: задача (по времени) -- не краевая, а начальная.

 
 
 
 
Сообщение26.11.2008, 12:54 
Ну да с линейным законом (закон Гука) все понятно. Интересные эффекты появляются при добавке слабых нелинейных членов в описание взаимодействия шариков - стохастика, солитоны. Можно Гуглом поискать - была даже статья Ферми Улама Паста в свободном доступе (годов40-50-х прошлого века).

 
 
 
 
Сообщение26.11.2008, 20:43 
ewert писал(а):
Тем, что ориентирован на краевые задачи, притом только Дирихле.


То, что метод Нумерова подходит для краевой задачи Дирихле, понятно даже мне, неспециалисту в численных методах.

А почему он не подходит для задачи Коши?

 
 
 
 
Сообщение26.11.2008, 21:38 
Потому, что он -- двухшаговый. Для запуска нужно знать значение решения не только в левом узле, но и в следующем. Причём с достаточно высокой точностью, и надо потом ещё исследовать на устойчивость. (Для краевой задачи эти проблемы отпадают.)

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


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