• 大小: 1KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: 其他
  • 标签: 微分方程  

资源简介

使用龙格库塔法求解二阶微分方程。可以设置仿真步长、初值,轻松更改函数

资源截图

代码片段和文件信息

#include
#include

int main()
{  
double timet[1000]y[1000]z[1000]h; 
int y0=0z0=0;
time=10;
t[0]=0;
y[0]=y0;
z[0]=z0;
h=0.01;
functionA(t y z);
functionB(t y z);
RungeKutta(timey0 z0 h *t *y *z (*functionA)(tyz)(*functionB)(tyz));
}
int RungeKutta(double timedouble y0double z0double hdouble *tdouble *ydouble *zdouble (*functionA)(doubledoubledouble)double (*functionB)(doubledoubledouble))
   {
double k11k21k12k22k13k23k14k24;
int i;
time=10;//这里设置仿真步长及初值 
t[0]=0;
y[0]=y0;
z[0]=z0;
h=0.01;

for(i=0;i<(time/h+1);i++)
{
t[i+1]=t[i]+h; 
k11=h*functionA(t[i]y[i]z[i]); 
k21=h*functionB(t[i]y[i]z[i]);

评论

共有 条评论