zzy第6章M文件与函数句柄.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
zzy第6章M文件与函数句柄

M文件和函数句柄;MATLAB控制流 ;if-else-end条件控制 ;【例6.1.1】 ;switch-case控制结构;【例6.1-2】 ;for循环和while循环;例:创建Hilbert方阵 ;N=1000; n=repmat(1:N,N,1); m=n; A3=1./(n+m-1);;【例6-4】 ;例5:创建n阶魔方矩阵,限定条件是n为能被4整除的偶数 ;控制程序流的其它常用指令;M脚本文件 (Matlab的程序文件);M脚本文件的特点;M函数文件 ;局部变量和全局变量 ;M函数文件的一般结构 ;例6.2.1编写一个M函数文件。 它具有以下功能:(A)根据指定的半径,画出蓝色圆周线;(B)可以通过输入字符串,改变圆周线的颜色、线型;(C)假若需要输出圆面积,则绘出圆。;switch nargin case 0 N=100;R=1;str=-b; case 1 R=1;str=-b; case 2 str=-b; case 3 ; otherwise error(输入量太多。); end;;t=0:2*pi/N:2*pi; x=R*sin(t);y=R*cos(t); if nargout==0 plot(x,y,str); elseif nargout2 error(输出量太多。); else S=N*R*R*sin(2*pi/N)/2; L=2*N*R*sin(pi/N); fill(x,y,str) end axis equal square box on shg ;[S,L]=exm060201(6,2,-g) S = 10.3923 L = 12.0000;MATLAB的函数类别 ;例6.3-1编写一个内含子函数的M函数绘图文件 ;% -------------subfunction--------------------------- function cirline(wd,x,y,t) % cirline(wd,x,y,t) 是位于exm060301.m 函数体内的子函数 % wd 接受字符串 line 或 circle % t 画线用的独立参变量 % x 由 t 产生的横坐标变量 % y 由 t 产生的纵坐标变量 switch wd case line plot(t, x, b ,t , y, r, LineWidth, 2) case circle plot(x, y, -g, LineWidth, 8), axis square off otherwise error(输入宗量只能取 line 或 circle ! ) end shg;HH=exm060301(circle) ;函数句柄 ;函数句柄;例6.4-1为MATLAB的 magic函数创建函数句柄,并观察其内涵。 ;M1=hm(4) 调用 M1 = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 ;M2=feval(hm,4) 调用 M2 = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 ;函数句柄的基本用法 ;借助本书算例6.2-1建立的函数文件exm060201.m。 ;Hexm=@exm060201, Hexm = @exm060201 ;[S,L]=exm060201(3,2,-r) ??? Undefined command/function exm060201. [S,L]=Hexm(3,2,-r) S = 5.1962 L =;作业

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档