Matlab自定义函数的五种方法
《Matlab自定义函数的五种方法》由会员分享,可在线阅读,更多相关《Matlab自定义函数的五种方法(4页珍藏版)》请在装配图网上搜索。
1、Matlab自定义函数的五种方法 转 n1、函数文件+调用命令文件:需单独定义一个自定义函数的M文件;n2、函数文件+子函数:定义一个具有多个自定义函数的M文件;n3、Inline:无需M文件,直接定义;n4、Syms+subs:无需M文件,直接定义;n5、字符串+subs:无需M文件,直接定义.1、函数文件+调用函数文件:定义多个M文件:%调用函数文件:myfile.mclearclcfor t=1:10y=mylfg(t);fprintf(%4d(1/3)=%6.4fn,t,y);end%自定义函数文件: mylfg.mfunction y=mylfg(x)%注意:函数名(mylfg)必须
2、与文件名(mylfg.m)一致Y=x(1/3);注:这种方法要求自定义函数必须单独写一个M文件,不能与调用的命令文件写在同一个M文件中。2、函数文件+子函数:定义一个具有多个子函数的M文件%命令文件:funtry2.mfunction =funtry2()for t=1:10y=lfg2(t)fprintf(%4d(1/3)=%6.4fn);Endfunction y=lfg2(x)Y= x(1/3);%注:自定义函数文件funtry2.m中可以定义多个子函数function。子函数lfg2只能被主函数和主函数中的其他子函数调用。3、Inline:无需M文件,直接定义;%inline命令用来定
3、义一个内联函数:f=inline(函数表达式, 变量1,变量2,)。调用方式:y=f(数值列表)%注意:代入的数值列表顺序应与inline()定义的变量名顺序一致。例如:f=inline(x2+y,x,y);z=f(2,3)Ans=7注:这种函数定义方式是将它作为一个内部函数调用。特点是,它是基于Matlab的数值运算内核的,所以它的运算速度较快,程序效率更高。缺点是,该方法只能对数值进行代入,不支持符号代入,且对定义后的函数不能进行求导等符号运算。例:ClearClcf=x2;Syms x g;g=x2;h=inline(x2,x);4、Syms+subs:无需M文件,直接定义;用syms定
4、义一个符号表达式,用subs调用:Syms f x%定义符号f=1/(1+x2);%定义符号表达式subs(f, x,代替x的数值或符号)注:对于在syms中已经定义过的符号变量,在subs中进行替代时,单引号可以省略。但是,如果在syms后又被重新定义为其他类型,则必须加单引号,否则不可替换。这种函数定义方法的特点是,可以用符号进行替换Syms f xf=1/(1+x2);subs(f, x,y2)ans=1/(1+(y2)2)注:该方法的缺点是,由于使用符号运算内核,运算速度会大大降低。5、字符串+subs:无需M文件,直接定义.直接定义一个字符串,用subs命令调用。例如:f=1/(1+x2)%定义字符串z=subs(f,x,2)g=subs(f,x,y2)注:优点是,占用内存最少,定义格式方面自由。缺点是,无法对字符进行符号转化。当所要替代的符号在调用前都已经有了数值定义,则可以直接调用:subs(f).例如:f=x2*y;x=2;y=3;subs(f)ans=12
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。