matlab软件设计上机指南

上传人:第*** 文档编号:67460874 上传时间:2019-01-07 格式:DOC 页数:27 大小:1.73MB
返回 下载 相关 举报
matlab软件设计上机指南_第1页
第1页 / 共27页
matlab软件设计上机指南_第2页
第2页 / 共27页
matlab软件设计上机指南_第3页
第3页 / 共27页
matlab软件设计上机指南_第4页
第4页 / 共27页
matlab软件设计上机指南_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《matlab软件设计上机指南》由会员分享,可在线阅读,更多相关《matlab软件设计上机指南(27页珍藏版)》请在金锄头文库上搜索。

1、MATLAB软件设计应用技术学院2008-6第一章 MATLAB程序设计一、M文件v 用户如想灵活应用matlab去解决实际问题,充分调用matlab的科学技术资源,就需要编辑m文件v 包含matlab语言代码的文件称为m文件,其扩展名为m。v 编辑m文件可使用各种文本编辑器。v m文件的类型是普通的文本文件,我们可以使用系统认可的文本文件编辑器来建立m文件。如dos下的edit,windows的记事本和word等。v 具体的创建方法:1. 在matlab命令窗口点击file 菜单 new m-file2. m文件m文件的语法类似于c语言,但又有其自身特点。它只是一个简单的ASCII码文本文件

2、,执行程序时逐行解释运行程序,matlab是解释性的编程语言。m文件有两类独立的m文件 称命令文件、可调用m文件 称函数文件(1). 命令文件 简单的m文件命令文件实际上是一串指令的集合,与在命令窗口逐行执行文件中的所有指令,其结果是一样的。没有输入输出参数v 命令文件包括两部分:注释文件和程序文件%RANKNumber of linearly independent rows or columns.%K = RANK(X) is the number of singular values of X%that are larger than MAX(SIZE(X) * NORM(X) * EP

3、S.%K = RANK(X,tol) is the number of singular values of X that%are larger than tol.%Copyright (c) 1984-94 by The MathWorks, Inc.s = svd(x);if (nargin = 1) tol = max(size(x) * max(s) * eps;endr = sum(s tol);(2).matlab内置函数文件 matlab自定义的函数文件称内置函数文件 调用内置函数的方法:使用函数名并给出相应的入口、出口参数即可。 例如:sin.m函数用type sin查不到。

4、调用格式:y=sin(2*x) 实际应用中: x=0:2*pi/180:2*pi; y=sin(2*x) plot(x,y)函数m文件的格式: function 返回变量=函数名(输入变量) 注释说明语句段 程序语句段特定规则:1. 函数m文件第一行必须以单词function作为引导词,必须遵循如下形式: function =()2. m文件的文件名必须是 .m。3. 程序中的变量均为局部变量,不保存在工作空间中。 其变量只在函数运行期间有效二、微分方程一般微分方程式描述系统内部变量的变化率如何受系统内部变量和外部激励,如输入,的影响。当常微分方程式能够解析求解时,可用MATLAB的符号工具箱

5、中的功能找到精确解。在本书的后面将介绍该工具箱的一些特点。在微分方程难以获得解析解的情况下,可以方便地在数值上求解。为了说明起见,考虑描述振荡器的经典的范得波(Var der Pol)微分方程。与所有的数值求解微分方程组的方法一样,高阶微分方程式必须等价地变换成一阶微分方程组。对于上述微分方程,通过重新定义两个新的变量,来实现这种变换。令y1=x 且 y2=dy/dx则 dy1/dt=y2根据这个微分方程组,可用MATLAB的函数ode23和ode45求出系统随时间变化的运动情况。调用这些函数时,需要编写一个函数M文件,给定当前时间及y1和y2的当前值,该函数返回上述导数值。MATLAB中,这

6、些导数由一个列向量给出。在本例中,这个列向量为yprime。同样,y1和y2合并写成列向量y。所得函数M文件是:function yprime=vdpol(t , y);% VDPOL(t , y) returns derivatives of the Van der Pol equation:% % x -mu *(1-x 2)*x +x=0 ( = d/dx , = d2/dx2)% % let y(1)=x and y(2)=x% % then y(1) = y(2)% y(2) = MU*(1-y(1)2)*y(2)-y(1)global MU % choose 0MUglobal M

7、U % define MU as a global variable in the Command WorkspaceMU=2; % set global parameter to desired valuet , y=ode23( vdpol , 0 , 30 , 1 ; 0); % to=0 , tf=30 , yo=1 ; 0y1=y( : , 1); % first column is y(1) versus time points in ty2=y( : , 2); % second column is y(2)plot(t , y1 , t , y2 , - )xlabel( Ti

8、me , Second ) , ylabel( Y(1) and Y(2) )title( Van der Pol Solution for mu=2 )当mu=2时的范得波方程的运动曲线第二章 流程控制与绘图一、流程控制1. For 循环 For循环允许一组命令以固定的和预定的次数重复。For循环的一般形式是:for x = arraycommandsend在for和end语句之间的commands按数组中的每一列执行一次。在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:, n)。例如, for n=1:10 x(n)=sin(n*pi/10); end xx =

9、 Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 换句话,第一语句是说:对n等于1到10,求所有语句的值,直至下一个end语句。第一次通过For循环n=1,第二次,n=2,如此继续,直至n=10。在n=10以后,For循环结束,然后求end语句后面的任何命令值,在这种情况下显示所计算的x的元素。 For循环的其它重要方面是: 1. For循环不能用For循环内重新赋值循环变量n来终止。 for n=1:10 x(n)=si

10、n(n*pi/10); n=10; end xx = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000 2. 语句1 :10 是一个标准的MATLAB数组创建语句。在For循环内接受任何有效的MATLAB数组。 data=3 9 45 6; 7 16 -1 5data = 3 9 45 6 7 16 -1 5for n=data x=n(1)-n(2) endx = -4x = -7x = 46x = 1 3. For循环可

11、按需要嵌套。for n=1:5 for m=5:-1:1 A(n,m)=n2+m2; end disp(n) end 1 2 3 4 5 AA = 2 5 10 17 26 5 8 13 20 29 10 13 18 25 34 17 20 25 32 41 26 29 34 41 50 4. 当有一个等效的数组方法来解给定的问题时,应避免用For循环。例如,上面的第一个例子可被重写为 n=1:10; x=sin(n*pi/10)x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8

12、through 10 0.5878 0.3090 0.0000两种方法得出同样的结果,而后者执行更快,更直观,要求较少的输入。 5. 为了得到最大的速度,在For循环(While循环)被执行之前,应预先分配数组。例如,前面所考虑的第一种情况,在For循环内每执行一次命令,变量x的大小增加1。迫使MATLAB每通过一次循环要花费时间对x分配更多的内存。为了消去这个步骤,For循环的例子应重写为x=zeros(1,10); % preallocated memory for x for n=1:10 x(n)=sin(n*pi/10); end现在,只有x(n)的值需要改变。2. While 循环 与For循环以固定次数求一组命令的值相反,While 循环以不定的次数求一组语句的值。While循环的一般形式是: while expression commands end只要在表达式里的所有元素为真,就执行while和end 语

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

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号