- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
03_MATLAB编程与作图.ppt
3.2 作图 3.2 作图 3.2 作图 3.2 作图 3.2 作图 习题 习题 习题 MATLAB和R软件 第三讲MATLAB编程与作图 第三讲 MATLAB编程与作图 3.1 程序设计 3.2 作图 3.3 在线帮助和文件管理 3.1 程序设计 循环语句 for 循环变量=初值:增量:终值, 语句;end while(条件式), 语句;end 分支语句 if(条件式), 语句; end if(条件式1), 语句1; elseif (条件式2), 语句 2; ……;else, 语句;end switch(分支变量)case(值1), 语句1;case(值2), 语句2; ……; otherwise 语句; end 其它:pause, break, return, error 3.1 程序设计 s=0; for n=1:100,s=s+1/n/n;end;s clear;s=0;n=1; while n=100, s=s+1/n/n; n=n+1; end; s 强行中断:Ctrl+C 3.1 程序设计 M脚本文件 在Editor窗口 例eg3_1 文件名一律以字母开头,以字母、数字或下划线组成,不要含有空格、减号等. M文件名一般都用小写字母 保存在当前目录(Current Directory) s=0; for n=1:100 s=s+1/n/n; end; s 保存为eg3_1.m 3.1 程序设计 M函数文件 function 输出变量=函数名(输入变量) 语句; M函数必须给予输入参数值 M函数在edit窗口编写, 在command窗口调用 M函数是以该函数的磁盘文件主名调用,而不是文件中的函数名称 M函数中变量为局部变量 %M函数eg3_1f.m function s=f(m) s=0; for n=1:m s=s+1/n/n; end 3.1 程序设计 函数句柄(handle) fname=@eg3_1f; feval(fname,1000) Inline函数 fun=inline(‘expr’, arg1, arg2, ...) 匿名函数 fun=@(arg1,arg2,….) fname=inline(sum(1./(1:m).^2),m) fname = Inline function: fname(m) = sum(1./(1:m).^2) feval(fname,1000) ans = 1.6439 k=2;fname=@(m)sum(1./(1:m).^k) fname = @(m)sum(1./(1:m).^k) feval(fname,1000) ans = 1.6439 3.1 程序设计 注释:%开头,对本行后面字符起作用,不参与运算。 ?对话:input,disp ?全程变量与局部变量 ? nargin、nargout和varargin ?子函数和嵌套函数 提高速度 3.1 程序设计 普通编程 function s=f(m) s=0; for n=1:m s=s+1/n/n; end 向量化编程 function s=f(m) n=1:m; s=sum(1./n.^2); 尽量少用for语句 3.1 程序设计 ?例3.2 编一M函数,对任意输入的向量x, 可计算分段函数值构成的向量。 分量方式 eg3_2a,慢 向量方式 eg3_2b,eg3_2c快 数组预分配y=zeros(size(x) %M函数eg3_2a.m function y=eg3_2a(x) n=length(x); for k=1:n if x(k)1 y(k)=x(k)^2; elseif x(k)-1 y(k)=1; else y(k)=3+2*x(k); end end %M函数eg3_2b.m function y=eg3_2b(x) y=zeros(size(x)); k1=find(x1);y(k1)=x(k1).^2; k2=find(x-1x=1);y(k2)=1; k3=find(x=-1);y(k3)=3+2*x(k3); %M函数eg3_2c.m function y=eg3_2c(x) y=(x1).*x.^2+(x-1x=1)+(x=-1).*(3+2*x); 3.2 作图 曲线图 plot(x,y) 以数据(x(i), y(i))为节点的折线图, 其中x, y为同长度的向量 plot(x1,y1,x2,y2,...) 多组数据折线图 fplot(fun,[a,b]) 函数fun
文档评论(0)