常微分方程差分方法之matlab实现Word文档下载推荐.doc
《常微分方程差分方法之matlab实现Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《常微分方程差分方法之matlab实现Word文档下载推荐.doc(3页珍藏版)》请在冰点文库上搜索。
![常微分方程差分方法之matlab实现Word文档下载推荐.doc](https://file1.bingdoc.com/fileroot1/2023-5/7/36995f01-a38f-4117-8e09-7c7c4273c1a5/36995f01-a38f-4117-8e09-7c7c4273c1a51.gif)
X=zeros(n,1);
Y=zeros(n,1);
k=1;
X(k)=x0;
Y(k)=y0;
fork=1:
n
X(k+1)=X(k)+h;
Y(k+1)=Y(k)+h*(X(k)-Y(k));
k=k+1;
end
y=X-1+2*exp(-X);
plot(X,Y,'
mp'
X,y,'
b-'
)
grid
xlabel('
自变量X'
),ylabel('
因变量Y'
title('
用向前欧拉公式求dy/dx=x-y,y(0)=1在[0,1]上的数值解和精确解y=x-1+2exp(-x)'
)
legend('
h=0.075时,dy/dx=x-y,y(0)=1在[0,1]上的数值解'
'
精确解y=x-1+2exp(-x)'
jwY=y-Y;
xwY=jwY./y;
k1=1:
n;
k=[0,k1];
P=[k'
X,Y,y,jwY,xwY];
在MATLAB工作窗口输入下面的程序
>
x0=0;
y0=1;
b=1;
h=0.0750;
P=Eulerli1(x0,y0,b,h)
h1=0.0075;
P1=Eulerli1(x0,y0,b,h1)
h1=0.0075时,dy/dx=x-y,y(0)=1在[0,1]上的数值解'