第五章matlab程序设计基础详解.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 Matlab程序设计基础;命令文件;;【例9-2】 绘制衰减的正弦阶梯图。 在程序编辑窗口中编写以下语句,并以example92.m为名存入相应的子目录。 t=0:40; y=sin(0.5*t).*exp(-.08*t); stairs(t,y) 在命令窗口提示符后键入如下命令,并回车: example92 运行结果结果如图9-2所示:;【例9-3】 已知x=[0.1 0.14 0.2 0.23 0.34 0.45 0.55 0.6 0.67 0.7 0.8 1],y=[2.2 2.5 3.4 4.4 5.6 6.5 7.0 7.5 8 9 10 11],编写一命令文件实现曲线拟合。 在程序编辑窗口中编写以下语句,并以example93.m为名存入相应的子目录。 x=[0.1 0.14 0.2 0.23 0.34 0.45 0.55 0.6 0.67 0.7 0.8 1]; y=[2.2 2.5 3.4 4.4 5.6 6.5 7.0 7.5 8 9 10 11]; curvefit=polyfit(x,y,6); yfit=polyval(curvefit,x); plot(x,y,ox,yfit,m:) ;在命令窗口提示符后键入如下命令, example93 运行结果如图9-3所示: ;三、函数文件 ; 将文件存盘,默认状态下函数名为average.m(文件名与函数名相同),函数average接收一个输入参数并返回一个输出参数,该函数的用法与其它Matlab函数一样;在Matlab命令窗口中运行上面的求均值函数,便可求得1~199的平均值。 z=1:199 y=average(z) y = 100;% 任意给出向量x、y及拟合阶数,要求x % 和y的元素个数相同 function curvefit=fitdone(x,y,fitorder) % 利用拟合函数polyfit开始拟合 curvefit=polyfit(x,y,fitorder); % 求所得多项式在x处的值 yfit=polyval(curvefit,x); % 画原始数据和拟合多项式曲线 figure plot(x,y,o,x,yfit,m:) end ;在命令窗口给出向量x、y和阶数fitorder,如下所示: x=[0.1 0.14 0.2 0.23 0.34 0.45 0.55 0.6 0.67 0.7 0.8 1]; y=[2.2 2.5 3.4 4.4 5.6 6.5 7.0 7.5 8 9 10 11]; fitorder=4; 然后调用函数fitdone,即 fitdone(x,y,fitorder),回车后,运行结果如图9-4所示:; 【例9-5】编写一个对序列做傅立叶变换(FT)和离散傅立 叶变换(DFT)的函数文件。 在程序编辑窗口中编写以下语句,并以ftanddft.m为名 存入相应的子目录。 % 对任意一个序列做傅立叶变换(FT)和离散傅立叶变换(DFT) function [X,Xk]=ftanddft(x,N) w=2*pi*(0:127)/128; X=x*exp(-j*[1:length(x)]*w); % x 的傅立叶变换FT ;subplot(211) plot(w,abs(X)) k=0:N-1; XK=x*exp(-j*[1:length(x)]*(2*pi*k)/N); % x的离散傅立叶变换DFT subplot(212) stem(k,abs(XK)) end;;第二节 M文件程序流程控制;(2)有时在分支结构中,用户希望在表达式为true和false两种条件下执行不同的操作,这时可以使用如下格式的If结构: if 表达式 Matlab语句A else Matlab语句B end 这种选择结构表示,当表达式的计算结果为逻辑真的时候,执行Matlab语句体A,否则执行Matlab语句B,在语 句B的结尾必须具有关键词end。 ;(3)当用户需要根据多个条件执行多个不同的操作时,可以采用下面的If结构: if 表达式1 Matlab语句体1 elseif 表达式2 Matlab语句体2 . . . elseif 表达式n Matlab语句体n else Matlab语句体n+1 end; 在上面的结构中,首先计算表达式1,如果条件 满

文档评论(0)

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

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

1亿VIP精品文档

相关文档