Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Nikolay Hatuntsev                    2:5025/27.47   16 Dec 2001  22:56:07
 To : Sergey Popov
 Subject : СДУ
 -------------------------------------------------------------------------------- 
 
 15 Дек 01 16:55, Sergey Popov разговаривал с All:
 
  SP>  может кто подскажет алгоpитм численного pешение данной системы диф.
  SP> уpавнений (инет пеpеpыл, нашел метод эйлеpа, pунге-кутта но для одного
  SP> ду)
  SP>  Ъ x' = y
  SP>  А y' = -(a/b)*sin a  ;a и b заданные константы.
  SP>  н.у. y=0, x=x0
 
 Решение системы из двух дифф. уравнений методом Рунге-Кутты 4-го порядка.
 
 //     y'=f(z,y,t)
 //     z'=g(z,y,t)
 
 double t=0,y=0,z=0; //Hачальные значения
 double dt=time/N;   //Временной дискрет
 double zn,yn,k1z,k2z,k3z,k4z,k1y,k2y,k3y,k4y;
 for(int i=0;i<N;i++)
 {
         t=i*dt;
 
         k1z=dt*g( z       , y , t      );
         k2z=dt*g( z+k1z/2 , y , t+dt/2 );
         k3z=dt*g( z+k2z/2 , y , t+dt/2 );
         k4z=dt*g( z+k3z   , y , t+dt   );
 
         k1y=dt*f( z , y       , t      );
         k2y=dt*f( z , y+k1y/2 , t+dt/2 );
         k3y=dt*f( z , y+k2y/2 , t+dt/2 );
         k4y=dt*f( z , y+k3y   , t+dt   );
 
         zn=z+(k1z + 2*k2z + 2*k3z + k4z)/6;
         yn=y+(k1y + 2*k2y + 2*k3y + k4y)/6;
 
         y=yn;
         z=zn;
 }
 
    До скорой встречи,            Nikolay AKA Lazy Dreamer.
 
 --- GoldED+/W32 1.1.4.3
  * Origin: Voronezh, Russia. (2:5025/27.47)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 СДУ   Sergey Popov   15 Dec 2001 17:55:21 
 СДУ   Nikolay Hatuntsev   16 Dec 2001 22:56:07 
 СДУ   Sergey Popov   19 Dec 2001 21:05:22 
Архивное /ru.algorithms/151563c1cef89.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional