MATLAB如何定义函数文件.ppt

MATLAB如何定义函数文件.ppt

ID:48822439

大小:441.50 KB

页数:10页

时间:2020-01-29

MATLAB如何定义函数文件.ppt_第1页
MATLAB如何定义函数文件.ppt_第2页
MATLAB如何定义函数文件.ppt_第3页
MATLAB如何定义函数文件.ppt_第4页
MATLAB如何定义函数文件.ppt_第5页
资源描述:

《MATLAB如何定义函数文件.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、如何定义函数文件[T,Y]=ode45(odefun,tspan,y0)[T,Y]=ode23(odefun,tspan,y0)odefun?ode45、ode23能解什么样的ODE?Oh,Isee微分方程组当是函数向量时呢?那么odefun就是odefun如何定义函数文件[T,Y]=ode45(odefun,tspan,y0)[T,Y]=ode23(odefun,tspan,y0)ode45、ode23等函数可用于求解显式常微分方程当是向量函数时,所对应的方程即为微分方程组odefun举例说明fun=

2、inline('-2*y+2*x^2+2*x','x','y');[x,y]=ode23(fun,[0,0.5],1);例:求初值问题的数值解。解法一:使用inline定义微分方程odefunodefun为方程右端项f(t,y)可以用inline定义(只适合于单个方程的情形)通过函数文件定义,然后用函数句柄调用(适合所有情形)注:自变量必须在前面,因变量在后面!举例说明(单个方程)functiondy=myfun1(x,y)dy=-2*y+2*x^2+2*x;解法二:通过函数文件定义微分方程odefun

3、1、先编写函数文件myfun1.mclear;[x,y]=ode23(@myfun1,[0,0.5],1);2、编写主文件main1.m或直接在Matlab命令窗口输入上面的语句。举例说明(方程组)解:此时只能通过函数文件定义微分方程odefun例:求,,的数值解。functiondy=myfun2(t,y)dy=zeros(3,1);%dymustbeacolumnvector!dy(1)=y(2)*y(3);dy(2)=-y(1)*y(3);dy(3)=-0.51*y(1)*y(2);1、先编写函数

4、文件myfun2.mclear;[T,Y]=ode45(@myfun2,[0,12],[0,1,1]);2、编写主文件main2.mdy=[y(2)*y(3);-y(1)*y(3);...-0.51*y(1)*y(2)];思考functiondy=myfun2(t,y)dy=zeros(3,1);dy(1)=y(2)*y(3);dy(2)=-y(1)*y(3);dy(3)=-0.51*y(1)*y(2);1、函数文件myfun2.m能不能写成下面形式?functiondy=myfun2(t,x,y,z)

5、dy=zeros(3,1);dy(1)=y*z;dy(2)=-x*z;dy(3)=-0.51*x*y;X说明odefun变量属性必须一一对应!functiondy=myfun2(t,y)如果是常微分方程组,y就是列向量!dy必须是列向量,长度为方程组的个数,通常与y的长度相同!函数中的输入参数和输出参数是形参,名字可以任意取,但必须满足上述条件。即输入参数有两个,第一个表示自变量,第二个是由因变量组成的列向量,输出参数必须是列向量。例functiondy=myfun3(t,y)dy=zeros(2,1)

6、;dy(1)=y(2)+t;dy(2)=t-2;例:解初值问题:,,functionout=myfun3(t,y)out=[y(2)+t;t–2];functionyprime=myfun3(x,y)yprime=[y(2)+x;x–2];clear;[T,Y]=ode45(@myfun3,[0,10],[1,1]);2、主文件main3.m1、函数文件myfun3.m高阶常微分方程高阶常微分方程例:VanderPol初值问题令,则原方程可化为一阶常微分方程组变量替换化为参数怎么处理?用全局变量传递参数

7、传递1、函数文件verderpol.mfunctionxprime=verderpol(t,x)globalmu;xprime=[x(2);mu*(1-x(1)^2)*x(2)-x(1)];2、主文件vdp1.mclear;globalmu;y0=[1;0];mu=7;[t,x]=ode45('verderpol',[0,40],y0);%[t,x]=ode45(@verderpol,[0,40],y0);plot(t,x(:,1),'r-',t,x(:,2),'b-');

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。