Matlab函数定义和调用.ppt

上传人:小** 文档编号:3688505 上传时间:2020-10-16 格式:PPT 页数:12 大小:197.52KB
返回 下载 相关 举报
Matlab函数定义和调用.ppt_第1页
第1页 / 共12页
Matlab函数定义和调用.ppt_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《Matlab函数定义和调用.ppt》由会员分享,可在线阅读,更多相关《Matlab函数定义和调用.ppt(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、数学实验,Matlab 自定义函数,Matlab 自定义函数的五种方式,命令文件/函数文件+ 函数文件 :多个 M 文件,自定义函数的五种方式,函数文件 + 子函数 : 一个 M 文件,inline : 无需 M 文件,符号表达式 + subs 方式 : 无需 M 文件,字符串 + subs 方式 : 无需 M 文件,%命令/函数文件:myfile1.m clear for t=1:10; y=mylfg(t); fprintf(%4d(1/3) = %6.4fn,t,y); end,%函数文件:mylfg.m function y = mylfg(x) y=x(1/3);,函数必须单独写一个

2、文件!不能与命令文件写在同一个文件中!,自定义函数方式(一),方式一:命令文件/函数文件 + 函数文件,自定义函数方式(二),%函数文件:funtry2.m function =funtry2() for t=1:10 y=lfg2(t); fprintf(%4d(1/3) = %6.4fn,t,y); end function y=lfg2(x) %子函数 y=x(1/3);,函数文件中可以定义一个或多个子函数,此时我们称该函数为主函数,子函数只能被主函数或同一个函数文件中的其它子函数调用!,方式二:函数文件 + 子函数,f=inline(函数表达式,变量1,变量2,.),y=f(数值列表)

3、,代入的数值列表顺序应与定义时的变量名顺序一致,例:,自定义函数方式(三),方式三:inline + 命令/函数文件,inline 命令可以用来定义一个内联函数,调用方式:,这种函数定义方式是将 f 作为一个内部函数调用。其特点是:调用方式最接近于我们平时对函数的定义,使程序更具可读性。同时由于它是基于 Matlab 的数值计算内核的,所以它的运算速度较快,程序更有效率。,这种定义方式的缺点:,定义一个内联函数用去的内存空间比相同条件下其他的方法要大得多。 该方法只能对数值进行代入,不支持符号代入,并且对于定义后的函数不能进行求导等符号运算。,自定义函数方式(三),自定义函数方式(三),%函数

4、文件:function =funtry3() lfg=inline(x.(1/3); %表达式两端的单引号不可缺少 fid=fopen(myfile3.txt,w); for t=1:50; y=lfg(t); fprintf(fid,%4d(1/3) = %6.4fn,t,y); end fclose(fid); ezplot(lfg,0,50),diff(lfg,x),自定义函数方式(三),X,注:对于在 syms 中已经定义过符号变量,在 subs 中进行替代时,单引号可以省略。但如果在 syms 后又被重新定义为其它类型,则必须加单引号,否则不可替换。,syms 定义一个符号表达式,用

5、 subs 命令调用,syms f x %定义符号 f=1/(1+x2); %定义符号表达式,subs(f,x,代替 x 的数值或符号),自定义函数方式(四),方式四: syms + subs,这种函数定义方法的一个特点是可以用符号进行替换,该方法的缺点也是明显的:由于使用符号运算内核,运算速度会大大降低。,自定义函数方式(四),注:此处 x 的单引号不可省略。本函数方式可以代入字符,但字符不能参与运算,否则将自行转化成该字符的 ASCII 码运算,这与我们想要的结果可能会大相径庭。,直接定义一个字符串,用 subs 命令完成调用。,例:,f=1/(1+x2) % 定义字符串 z=subs(f,x,2) g=subs(f,x,y2),优点:占内存最少,定义格式方便自由。,自定义函数方式(五),方式五:字符串 + subs,subs 命令的一种比较方便的调用方法:,当所要替代的符号在调用前都已经有了数值定义,则可以直接调用:subs(f),例:,自定义函数方式(五),关于 subs 的一个注解,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁