两道基本的Matlab题一、求解初值问题{y'=(y-3x/y)3/2 (0

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 19:40:51

两道基本的Matlab题一、求解初值问题{y'=(y-3x/y)3/2 (0
两道基本的Matlab题
一、求解初值问题{y'=(y-3x/y)3/2 (0

两道基本的Matlab题一、求解初值问题{y'=(y-3x/y)3/2 (0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fun=inline('(y-3*x/y)*1.5','x','y')
[x,y]=ode45(fun,[0,1],1);
plot(x,y,'-b'),hold on;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%结果:
%fun =
% Inline function:
% fun(x,y) = (y-3*x/y)*1.5
%画出的图就是求出的函数在(0,1)上的图像.
%x,y向量中存的数就是对应于每个x的y值
%二、
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fun=inline('(y-3*x/y)*1.5','x','y');
x0=0;
y0=1;
x=x0;
y=y0;
h=0.01;
for i=1:100
yp=y0+h*fun(x0,y0);
x0=x0+h;
yc=y0+h*fun(x0,yp);
y0=(yp+yc)/2;
x=[x,x0];
y=[y,y0];
end
plot(x,y,'r')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%程序没问题,我都执行过了,你把所有的文字拷到matlab里执行下
%两个方法得到的图(红线和蓝线)重合的
%要怎么重谢啊?给我追加分吧