hutouxia 发表于 2008-11-20 22:59

我的解微分方程组的程序解单个微分方程为什么总是出错???

%marunge4s.m
function =marunge4s(dyfun,xspan,y0,h)
%4阶龙格库塔通用程序
%dyfun为向量函数f(x,y),xspan为求解区间
%y0为初始向量,h为步长,x返回节点,y返回数值解向量
x=xspan(1):h:xspan(2);
y=zeros(length(y0),length(x));
y(:,1)=y0(:);
for n=1:(length(x)-1)
    k1=feval(dyfun,x(n),y(:,n));
    k2=feval(dyfun,x(n)+h/2,y(:,n)+h/2*k1);
    k3=feval(dyfun,x(n)+h/2,y(:,n)+h/2*k2);
    k4=feval(dyfun,x(n+1),y(:,n)+h*k3);
    y(:,n+1)=y(:,n)+h*(k1+2*k2+2*k3+k4)/6;
end
x=x';
y=y';


就是这个程序,存为marunge4s.m文件,求解微分方程组没有问题,求解单个方程的时候怎么做?
请指教 !
比如求解:
dy/dx=2/3*x*y^(-2)
y(0)=1
0<=x<=1.2
谢谢!

hutouxia 发表于 2008-11-20 23:22

谢谢大家,自己顶一下,着急中

hutouxia 发表于 2008-11-20 23:24

再次谢谢,请大家帮忙!

hutouxia 发表于 2008-11-20 23:51

怎么没人理我:'(
页: [1]
查看完整版本: 我的解微分方程组的程序解单个微分方程为什么总是出错???