2014 dxdy logo

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

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




 
 Помогите решить систему нелинейных дифференциальных уравнени
Сообщение25.11.2009, 16:42 
$\[{m_1} \cdot {\ddot x_1} + {c_v} \cdot ({x_1} - {x_2}) + h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} = {m_1} \cdot g + e \cdot {m_1} \cdot {\omega ^2} \cdot \cos (\omega  \cdot t)\]$

$\[{m_1} \cdot {\ddot y_1} + {c_v} \cdot ({y_1} - {y_2}) + h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} = e \cdot {m_1} \cdot {\omega ^2} \cdot \sin (\omega  \cdot t)\]
$

$\[\begin{gathered}
  {m_2} \cdot {{\ddot x}_2} + {c_v} \cdot ({x_2} - {x_1}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + {d_p} \cdot ({{\dot x}_2} - {{\dot x}_3}) + q \cdot ({{\dot y}_2} - {{\dot y}_3}) +  \hfill \\
   + {c_p} \cdot ({x_2} - {x_3}) + \alpha  \cdot ({x_2} - {x_3}) \cdot \left| {{x_2} - {x_3}} \right| = 0 \hfill \\ 
\end{gathered} \]
$

$\[\begin{gathered}
  {m_2} \cdot {{\ddot y}_2} + {c_v} \cdot ({y_2} - {y_1}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + {d_p} \cdot ({{\dot y}_2} - {{\dot y}_3}) - q \cdot ({{\dot x}_2} - {{\dot x}_3}) +  \hfill \\
   + {c_p} \cdot ({y_2} - {y_3}) + \alpha  \cdot ({y_2} - {y_3}) \cdot \left| {{y_2} - {y_3}} \right| = 0 \hfill \\ 
\end{gathered} \]
$

$\[{m_3} \cdot {\ddot x_3} + {c_{op}} \cdot {x_3} + {d_p} \cdot ({\dot x_3} - {\dot x_2}) + q \cdot ({\dot y_3} - {\dot y_2}) + {c_p} \cdot ({x_3} - {x_2}) + \alpha  \cdot ({x_3} - {x_2}) \cdot \left| {{x_3} - {x_2}} \right| = 0\]
$

$\[{m_3} \cdot {\ddot y_3} + {c_{op}} \cdot {y_3} + {d_p} \cdot ({\dot y_3} - {\dot y_2}) - q \cdot ({\dot x_3} - {\dot x_2}) + {c_p} \cdot ({y_3} - {y_2}) + \alpha  \cdot ({y_3} - {y_2}) \cdot \left| {{y_3} - {y_2}} \right| = 0\]
$

$\[q = A \cdot {d_p} \cdot \omega \]
$

m1, m2, m3, h, cv, g, omega, dp, A, alpha, cp, cop = const

Начальные условия можно взять эти:
x1(0)=-0.391,x2(0)=-0.00365,x3(0)=-0.0048,y1(0)=-0.815,y2(0)=-0.0056,y3(0)=-0.00537,D(x1)(0)=47.5,D(x2)(0)=-0.935,D(x3)(0)=-1.67,D(y1)(0)=92.12,D(y2)(0)=1.71,D(y3)(0)=2.261;
или любые другие.
Для примера можно взять эти значения omega:=200; cp:=2*10^6; cop:=9.6*10^6; m1:=80; m2:=50; m3:=40; cv:=7.6*10^4; dp:=5*10^2; alpha:=0.1; h:=0.1; g:=9.81; epsilon:=0.000001;
для t=5000..5030

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

За ранее очень благодарен

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение26.11.2009, 16:19 
Что значит: сошёлся, не сошёлся?... Это ведь не краевая задача, а Коши; для неё памяти, грубо говоря, вообще не нужно. Если, конечно, не пытаться сравнивать соседние итерации по всем узлам. Что практически довольно бессмысленно; но, возможно, Maple предпочитает это по каким-нибудь внутренним соображениям. Но, скорее всего, у него есть возможность регулировать точность, а для построения графиков большая точность не нужна. Или можно разбить временной промежуток на достаточно маленькие участки и просчитывать каждый отдельно. Или просто плюнуть на системные средства и запрограммировать метод Рунге-Кутта вручную -- тогда всё будет в нашей власти: и точность, и память.

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение01.12.2009, 13:37 
ewert в сообщении #265508 писал(а):
Что значит: сошёлся, не сошёлся?... Это ведь не краевая задача, а Коши; для неё памяти, грубо говоря, вообще не нужно. Если, конечно, не пытаться сравнивать соседние итерации по всем узлам. Что практически довольно бессмысленно; но, возможно, Maple предпочитает это по каким-нибудь внутренним соображениям. Но, скорее всего, у него есть возможность регулировать точность, а для построения графиков большая точность не нужна. Или можно разбить временной промежуток на достаточно маленькие участки и просчитывать каждый отдельно. Или просто плюнуть на системные средства и запрограммировать метод Рунге-Кутта вручную -- тогда всё будет в нашей власти: и точность, и память.

Всё не так просто! Уравнения имеют неявную форму, возможно не приводимую к канонической.
Кроме того не ясно, какова жесткость системы. Если она велика, то явные методы не сработают.
Для таких задач разработан метод BDF (Backward Difference Formulae). Подробное описание метода есть в книге: "Чуа Л.О., Пен-Мин-Лин. Машинный анализ электронных схем. - М.: Энергия, 1980."
Спектральный анализ проводится через использование матрицы Якоби системы ДУ. Для этого хорошо подходит пакет EISPACK.

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение01.12.2009, 17:48 
Ajabsandal в сообщении #267044 писал(а):
Уравнения имеют неявную форму, возможно не приводимую к канонической.

Не заметил. Во всех уравнениях вторая производная вроде входит только по одному разу; откуда неявность?...

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение01.12.2009, 23:52 
ewert в сообщении #267116 писал(а):
Ajabsandal в сообщении #267044 писал(а):
Уравнения имеют неявную форму, возможно не приводимую к канонической.

Не заметил. Во всех уравнениях вторая производная вроде входит только по одному разу; откуда неявность?...

Ну так приведите явную каноническую форму и спора нет!

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение03.12.2009, 12:13 
$\[\left({\dot x_1}\right)' ={1\over m_1}\left[- {c_v} \cdot ({x_1} - {x_2}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + {m_1} \cdot g + e \cdot {m_1} \cdot {\omega ^2} \cdot \cos (\omega  \cdot t)\right]\]$

$\[\left({x_1}\right)'={\dot x_1}\]$

$\[\left({\dot y_1}\right)'= {1\over m_1}\left[- {c_v} \cdot ({y_1} - {y_2}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + e \cdot {m_1} \cdot {\omega ^2} \cdot \sin (\omega  \cdot t)\right]\]
$

$\[\left({y_1}\right)'={\dot y_1}\]$

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

и т.д. (дальше лень), всего 12 уравнений для 12 функций

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение03.12.2009, 14:39 
[quote="ewert в сообщении #267684"
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

и т.д. (дальше лень), всего 12 уравнений для 12 функций[/quote]
В канонической (явной) форме системы ДУ в левой части должны стоять только прозводные, а в правой - только фунции (разумеется со всякими коэффициентами и временными зависимостями). У Вас же в правой части есть функции от производных. Методы типа Рунге-Кутты, линейных многошаговых и т.п. не работают с неявной формой ДУ.

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение03.12.2009, 16:16 
А там (слева) как раз только производные и стоят, справа же -- только переменные. Стандартный трюк: $z_1\equiv y$, $z_2\equiv \dot y$, тогда $z_1'=z_2$, $z_2'=\ddot y=f(z_1,z_2,t)$ и т.д.. Непонятно, почему это надо объяснять.

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение03.12.2009, 19:21 
А есть лагранжиан у этой системы и если не секрет - откуда такая система?

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение03.12.2009, 21:56 
ewert в сообщении #267741 писал(а):
А там (слева) как раз только производные и стоят, справа же -- только переменные. Стандартный трюк: $z_1\equiv y$, $z_2\equiv \dot y$, тогда $z_1'=z_2$, $z_2'=\ddot y=f(z_1,z_2,t)$ и т.д.. Непонятно, почему это надо объяснять.

ldv5! Вам не лень добить выкладки по этой схеме до конца?

 
 
 
 Re: Помогите решить систему нелинейных дифференциальных уравнени
Сообщение04.01.2010, 10:46 
$\[({\dot x_1})' = \frac{1}
{{{m_1}}}( - {c_v} \cdot ({x_1} - {x_2}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + {m_1} \cdot g + e \cdot {m_1} \cdot {\omega ^2} \cdot \cos (\omega  \cdot t))\]
$

$({x_1})' = {\dot x_1}$

$\[({\dot y_1})' = \frac{1}
{{{m_1}}}( - {c_v} \cdot ({y_1} - {y_2}) - h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} + e \cdot {m_1} \cdot {\omega ^2} \cdot \sin (\omega  \cdot t))\]
$

$({y_1})' = {\dot y_1}$

$\[\begin{gathered}
  ({{\dot x}_2})' = \frac{1}
{{{m_2}}}( - {c_v} \cdot ({x_2} - {x_1}) + h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} - {d_p} \cdot ({{\dot x}_2} - {{\dot x}_3}) - q \cdot ({{\dot y}_2} - {{\dot y}_3}) -  \hfill \\
   - {c_p} \cdot ({x_2} - {x_3}) - \alpha  \cdot ({x_2} - {x_3}) \cdot \left| {{x_2} - {x_3}} \right|) \hfill \\ 
\end{gathered} \]
$

$({x_2})' = {\dot x_2}$

$\[\begin{gathered}
  ({{\dot y}_2})' = \frac{1}
{{{m_2}}}( - {c_v} \cdot ({y_2} - {y_1}) + h \cdot \frac{{\sqrt {{{({x_1} - {x_2})}^2} + {{({y_1} - {y_2})}^2}} ({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}}
{{\sqrt {{{({{\dot x}_1} - {{\dot x}_2} + \omega  \cdot ({y_1} - {y_2}))}^2} + {{({{\dot y}_1} - {{\dot y}_2} - \omega  \cdot ({x_1} - {x_2}))}^2}} }} - {d_p} \cdot ({{\dot y}_2} - {{\dot y}_3}) + q \cdot ({{\dot x}_2} - {{\dot x}_3}) -  \hfill \\
   - {c_p} \cdot ({y_2} - {y_3}) - \alpha  \cdot ({y_2} - {y_3}) \cdot \left| {{y_2} - {y_3}} \right|) \hfill \\ 
\end{gathered} \]
$

$({y_2})' = {\dot y_2}$

$\[({\dot x_3})' = \frac{1}
{{{m_3}}}( - {c_{op}} \cdot {x_3} - {d_p} \cdot ({\dot x_3} - {\dot x_2}) - q \cdot ({\dot y_3} - {\dot y_2}) - {c_p} \cdot ({x_3} - {x_2}) - \alpha  \cdot ({x_3} - {x_2}) \cdot \left| {{x_3} - {x_2}} \right|)\]
$

$({x_3})' = {\dot x_3}$

$\[({\dot y_3})' = \frac{1}
{{{m_3}}}( - {c_{op}} \cdot {y_3} - {d_p} \cdot ({\dot y_3} - {\dot y_2}) + q \cdot ({\dot x_3} - {\dot x_2}) - {c_p} \cdot ({y_3} - {y_2}) - \alpha  \cdot ({y_3} - {y_2}) \cdot \left| {{y_3} - {y_2}} \right|)\]
$

$({y_3})' = {\dot y_3}$

$\[q = A \cdot {d_p} \cdot \omega \]
$

-- Пн янв 04, 2010 09:53:05 --

Извините за мою нерасторопность, но я все равно не могу понять как решить данную систему, в Maple даже при подстановке h=0 (т.е. убирая значительную нелинейность в системе) выдает ошибку Warning, not enough memory to allocate rtable
Помогите пожалуйста , очень нужно решение данной системы

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


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