数值仿真chap5matlab编程

数值仿真chap5matlab编程

ID:38622872

大小:1.11 MB

页数:25页

时间:2019-06-16

数值仿真chap5matlab编程_第1页
数值仿真chap5matlab编程_第2页
数值仿真chap5matlab编程_第3页
数值仿真chap5matlab编程_第4页
数值仿真chap5matlab编程_第5页
资源描述:

《数值仿真chap5matlab编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章MATLAB编程本章主要内容如下:5.1MATLAB程序控制5.2M脚本文件和M函数文件5.3串演算函数5.4保存和载入变量5.1MATLAB程序控制5.1.1for循环结构forx=array(commands)end【说明】for指令后的变量x称为循环变量,commands为循环体循环体执行的次数由for后的数组array的列数决定【例4-1】绘制,,t=[0,18]的曲线clf;t=[0:0.1:18]';forx=0.2:0.2:0.8b=sqrt([1-x^2]);z=atan(b/x);y1=-t*x;y2=t*b+z;y=1-exp(y1

2、).*sin(y2)/b;plot(t,y),holdonendxlabel('t(秒)'),ylabel('y')title('二阶系统阶跃响应')text(3.3,0.9,'{xi}=0.8')text(4.3,1.4,'{xi}=0.2')%阻尼比计算5.1.2while循环结构whileexpression(commands)end【说明】当while后expression表达式为逻辑真(非0)时,执行循环体命令commands,直到表达式的值为假当表达式的值为数组时,只有当该数组所有元素均为真时,才会执行循环体命令如while后的表达式为空数组

3、,MATLAB认为表达式为假,而不执行循环体【例4-2】一数组的元素满足规则:,(k=1,2,…);且。现要求该数组中第一个大于10000的元素a(1)=1;a(2)=1;i=2;whilea(i)<=10000a(i+1)=a(i-1)+a(i);i=i+1;end;i,a(i),i=21ans=10946执行结果为:5.1.3if-else-end分支结构单分支结构ifexpression(commands)End双分支结构ifexpression(commands1)else(commands2)end多分支结构ifexpression1(comman

4、ds)elseifexpression2(commands)……else(commands)end【说明】多分支结构常被switch-case所取代如果判决条件为一个空数组,MATLAB认为条件为假if指令判决和break指令配合使用,可强制终止for循环或while循环5.1.4switch-case结构switchexcasetest1(commands1)casetest2……casetestk(commandsk)otherwise(commands)endex为一标量或字符串当ex等于test1时,执行组命令1,然后跳出该结构表达式不等于前面所有检

5、测值时,则执行该组命令【例4-3】switch命令示例:将例4-1中的曲线按值用不同颜色画出t=[0:0.1:18]';forx=0.2:0.2:0.8b=sqrt([1-x^2]);z=atan(b/x);y1=-t*x;y2=t*b+z;y=1-exp(y1).*sin(y2)/b;switchround(10*x)case2plot(t,y,'r'),holdoncase4plot(t,y,'b'),holdoncase6plot(t,y,'k'),holdonotherwiseplot(t,y,'g'),holdonendendxlabel(‘t(

6、秒)’),ylabel(‘y’)title(‘二阶系统阶跃响应’)text(3.3,0.9,‘{xi}=0.8’)text(4.3,1.4,'{xi}=0.2')%将x圆整成整数%采用switch结构,按x值,绘制不同颜色曲线5.1.5try-catch结构try(commands1)catch(commands2)end【说明】首先执行组命令1,只有当执行组命令1出现错误后,组命令2才会被执行当执行组命令2又出错,则终止该结构可用lasterr函数查询出错原因【例4-4】try-catch结构演示clear,N=4;A=magic(3);tryA_N=

7、A(N,:),catchA_end=A(end,:),endlasterr%设置3*3矩阵A(魔方阵)%取A的第N行元素%如果取A(N,:)出错,改取A的最后一行%显示出错原因A_end=492ans=Indexexceedsmatrixdimensions.执行结果为:5.2M脚本文件和M函数文件5.2.1M脚本(Scripts)文件脚本文件是最简单的M-文件,它没有入口和出口参数变量(不存在变量传递),可以自动执行一系列MATLAB命令,诸如重复命令等脚本(Scripts)是对工作空间(workspace)中的现有数据及变量进行操作,或创建一个新数据,而

8、且脚本文件所创建的任一变量在脚本运行完后都保留在工作

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。