⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rk4.cpp

📁 提供了4种解常微分方程组的c++代码:定步长四阶龙格-库塔(Runge-Kutta)法(RK4->RKDUMP); 自适应变步长的龙格-库塔(Runge-Kutta)法(RKQC->ODE
💻 CPP
字号:
void rk4(double y[], double dydx[], int &n, double &x, double &h, double yout[])
{
	int i;
    double yt[11], dyt[11], dym[11],hh,h6,xh;
    hh = h * 0.5;
    h6 = h / 6.0;
    xh = x + hh;
    for( i = 1; i<=n; i++)
	{
        yt[i] = y[i] + hh * dydx[i];
    }
    derivs(xh, yt, dyt);
    for( i = 1; i<=n; i++)
	{
        yt[i] = y[i] + hh * dyt[i];
    }
    derivs(xh, yt, dym);
    for( i = 1; i<=n; i++)
	{
        yt[i] = y[i] + h * dym[i];
        dym[i] = dyt[i] + dym[i];
    }
    derivs(x + h, yt, dyt);
    for (i = 1; i<=n; i++)
	{
        yout[i] = y[i] + h6 * (dydx[i] + dyt[i] + 2.0 * dym[i]);
    }
	for(i=1; i<=10; i++)
	{
		dym[i]=0.0;
		dyt[i]=0.0;
		yt[i]=0.0;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -