作业帮 > 综合 > 作业

matlab 欧拉方法解决查分方程程序 调用函数

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/04/27 23:45:52
matlab 欧拉方法解决查分方程程序 调用函数
我的程序是这个,文件名是euler.m*
function [x,y]=euler(fun,x0,xfinal,y0,n);
if nargin euler at 4
h=(xfinal-x0)/n;
请问下错误在哪儿,要调用的话应该怎样调用?
因为需要解决的方程式是y'=y+x,即feval(fun,x(i),y(i))这个需要等于y(i)+x(i)
在命令栏里写[x,y]=euler(fun,0,3,2,n),可是不知道fun该如何写,比如写y+x,会报错? Invalid function name 'y+x'
matlab 欧拉方法解决查分方程程序 调用函数
1、这是一个函数,必须有输入参数才能运行,你直接按F5运行肯定是不行的.
2、调用方法:在命令行里运行:
fun=inline('y+x','x','y')
[x,y]=euler(fun,0,3,2,100);
plot(x,y)
 
得到结果如下(系统是发散的):

系统是发散的,这很容易通过另一种方法验证:
y=dsolve('Dy=y+x','y(0)=2','x');
ezplot(y,[0 3])