matlab调用函数程序.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab调用函数程序

Matlab自定义函数的五种方法 n?1、函数文件+调用命令文件:需单独定义一个自定义函数的M文件; n?2、函数文件+子函数:定义一个具有多个自定义函数的M文件; n?3、Inline:无需M文件,直接定义; n?4、Syms+subs:?无需M文件,直接定义; n?5、字符串+subs:无需M文件,直接定义. 1、函数文件+调用函数文件:定义多个M文件: %?调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t); fprintf(‘M^(1/3)=%6.4f\n’,t,y); end %自定义函数文件: mylfg.m function y=mylfg(x) %注意:函数名(mylfg)必须与文件名(mylfg.m)一致 Y=x^(1/3); 注:这种方法要求自定义函数必须单独写一个M文件,不能与调用的命令文件写在同一个M文件中。 2、函数文件+子函数:定义一个具有多个子函数的M文件 %命令文件:funtry2.m function []=funtry2() for t=1:10 y=lfg2(t) fprintf(‘M^(1/3)=%6.4f\n’); End function y=lfg2(x) Y= x^(1/3); %注:自定义函数文件funtry2.m中可以定义多个子函数function。子函数lfg2只能被主函数和主函数中的其他子函数调用。 3、Inline:无需M文件,直接定义; %inline命令用来定义一个内联函数:f=inline(‘函数表达式’, ‘变量1’,’变量2’,……)。 调用方式:y=f(数值列表) %注意:代入的数值列表顺序应与inline()定义的变量名顺序一致。 例如: f=inline(‘x^2+y’,’x’,’y’); z=f(2,3) Ans=7 注:这种函数定义方式是将它作为一个内部函数调用。特点是,它是基于Matlab的数值运算内核的,所以它的运算速度较快,程序效率更高。缺点是,该方法只能对数值进行代入,不支持符号代入,且对定义后的函数不能进行求导等符号运算。 例: Clear Clc f=’x^2’; Syms x g; g=x^2; h=inline(‘x^2’,’x’); ? 4.?匿名函数 使用matlab函数句柄操作符@,可以定义指向matlab内置函数和用户自定义函数的函数句柄,函数句柄也可以像函数一样的使用。例如: x=-pi:0.1:pi; fh={@cos,@sin}; fh = ????@cos????@sin plot(fh{2}(x)) 5、Syms+subs: 无需M文件,直接定义; 用syms定义一个符号表达式,用subs调用: Syms f x %定义符号 f=1/(1+x^2); %定义符号表达式 subs(f, ‘x’,?代替x的数值或符号) 注:对于在syms中已经定义过的符号变量,在subs中进行替代时,单引号可以省略。但是,如果在syms后又被重新定义为其他类型,则必须加单引号,否则不可替换。 这种函数定义方法的特点是,可以用符号进行替换 Syms f x f=1/(1+x^2); subs(f, ‘x’,’y^2’) ans= 1/(1+(y^2)^2) 注:该方法的缺点是,由于使用符号运算内核,运算速度会大大降低。 6、字符串+subs:无需M文件,直接定义. 直接定义一个字符串,用subs命令调用。例如: f=’1/(1+x^2)’ %定义字符串 z=subs(f,’x’,2) g=subs(f,’x’,’y^2’) 注:优点是,占用内存最少,定义格式方面自由。 缺点是,无法对字符进行符号转化。 当所要替代的符号在调用前都已经有了数值定义,则可以直接调用:subs(f).例如: f=’x^2*y’; x=2;y=3; subs(f) ans=12

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档