Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2011, 16:02   #1
Dragunov
Новичок
Джуниор
 
Регистрация: 06.06.2011
Сообщений: 1
По умолчанию метод Рунге-Кутта на c++ переписать в VBA

Люди добрые помогите пожалуйста есть код в с++ ,но не соображу как его переписать в VBA

Код:
double d2x(double t,double x,double dx,double fi,double dfi)
{double d2_x;
  d2_x=(l+x)*(dfi*dfi)+g*cos(fi)-((C*g)/P)*x;
 return d2_x;
}

double d2fi(double t,double x,double dx,double fi,double dfi)
{double d2_fi;
 d2_fi=(-P*(l+x)*dx*dfi-P*g*(l+x)*sin(fi)-(1.0/2.0)*P1*l1*g*sin(fi))/(((l+x)*(l+x))*P+(1.0/3.0)*P1*(l1*l1));
 return d2_fi;
}
//Определение функции для метода Рунге-Кутта
void  solve_runge_kutt(double solve_time,double& x,double& dx,double& fi,double& dfi)
{
   double k1_x,k2_x,k3_x,k4_x;
   double k1_fi,k2_fi,k3_fi,k4_fi;
 
   k1_x=h*d2x(solve_time,x,dx,fi,dfi);
   k1_fi=h*d2fi(solve_time,x,dx,fi,dfi);

   k2_x=h*d2x(solve_time+h/2.0,x+h*dx/2.0,dx+k1_x/2.0,fi+h*dfi/2.0,dfi+k1_fi/2.0);
   k2_fi=h*d2fi(solve_time+h/2.0,x+h*dx/2.0,dx+k1_x/2.0,fi+h*dfi/2.0,dfi+k1_fi/2.0);

   k3_x=h*d2x(solve_time+h/2.0,x+h*dx/2.0+h*k1_x/4.0,dx+k2_x/2.0,fi+h*dfi/2.0+h*k1_fi/4.0,dfi+k2_fi/2.0);
   k3_fi=h*d2fi(solve_time+h/2.0,x+h*dx/2.0+h*k1_x/4.0,dx+k2_x/2.0,fi+h*dfi/2.0+h*k1_fi/4.0,dfi+k2_fi/2.0);

   k4_x=h*d2x(solve_time+h,x+h*dx+h*k2_x/2.0,dx+k3_x,fi+h*dfi+h*k2_fi/2.0,dfi+k3_fi);
   k4_fi=h*d2fi(solve_time+h,x+h*dx+h*k2_x/2.0,dx+k3_x,fi+h*dfi+h*k2_fi/2.0,dfi+k3_fi);

   x=x+h*(dx+(k1_x+k2_x+k3_x)/6.0);
   dx=dx+(k1_x+2.0*k2_x+2.0*k3_x+k4_x)/6.0;

   fi=fi+h*(dfi+(k1_fi+k2_fi+k3_fi)/6.0);
   dfi=dfi+(k1_fi+2.0*k2_fi+2.0*k3_fi+k4_fi)/6.0;

}

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 06.06.2011 в 21:07.
Dragunov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод Рунге-Кутта-Мерсона Martin00 Помощь студентам 3 19.09.2015 20:41
Метод Рунге-Кутта на VBA в Excell sergeib7 Microsoft Office Excel 5 25.04.2011 16:43
Метод Рунге-Кутта (Си) PPPPPP Общие вопросы C/C++ 1 13.04.2010 00:55
Метод Рунге-Кутта (Си) PPPPPP Помощь студентам 2 12.04.2010 02:58