matlab中使用龙格库塔法求解
答案:1 悬赏:30
解决时间 2021-10-28 04:41
- 提问者网友:我们很暧昧
- 2021-10-27 07:48
matlab中使用龙格库塔法求解
最佳答案
- 二级知识专家网友:未来江山和你
- 2021-10-27 08:40
function [x,y]=runge_kutta(ufunc,y0,h,a,b)
n=floor(b-a)/h;
x(1)=a;
y(:,1)=y0;
for i=1:n
x(i+1)=x(i)+h;
k1=ufunc(x(i),y(:,i));
k2=ufunc(x(i)+h/2,y(:,i)+h*k1/2);
k3=ufunc(x(i)+h/2,y(:,i)+h*k2/2);
k4=ufunc(x(i)+h,y(:,i)+h*k2);
y(:,i+1)=y(:,i)+h*(k1+2*k2+2*k3+k4)/6;
end
n=floor(b-a)/h;
x(1)=a;
y(:,1)=y0;
for i=1:n
x(i+1)=x(i)+h;
k1=ufunc(x(i),y(:,i));
k2=ufunc(x(i)+h/2,y(:,i)+h*k1/2);
k3=ufunc(x(i)+h/2,y(:,i)+h*k2/2);
k4=ufunc(x(i)+h,y(:,i)+h*k2);
y(:,i+1)=y(:,i)+h*(k1+2*k2+2*k3+k4)/6;
end
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯