Matlab编程必备手册(适合初学者).pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Matlab编程必备手册(适合初学者).pdf》由会员分享,可在线阅读,更多相关《Matlab编程必备手册(适合初学者).pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本人精通MATLAB等编程语言,可以提供以下方向的帮助 本人精通MATLAB等编程语言,可以提供以下方向的帮助 1.1.MATLAB/GUI/SIMULINK/C+/VC+编程问题;2.MATLAB/GUI/SIMULINK/C+/VC+编程问题;2.线性与非线性控制、智能控制、模糊控制;3.线性与非线性控制、智能控制、模糊控制;3.数值计算问题、小波分析算法、有限元问题;4.数值计算问题、小波分析算法、有限元问题;4.电机控制、电力系统、机器人路径优化、机器人控制;5.电机控制、电力系统、机器人路径优化、机器人控制;5.粒子群算法、神经网络、模拟退火算法等智能优化算法;6.粒子群算法、神经网
2、络、模拟退火算法等智能优化算法;6.图像处理、信号处理、语音信号处理、电子通信等方向;图像处理、信号处理、语音信号处理、电子通信等方向;有问题的朋友,有问题的朋友,可以将问题直接发到我的邮箱可以将问题直接发到我的邮箱,24小时内给您答复!非常欢迎大家加我为QQ好友,欢迎访问我的空间!,24小时内给您答复!非常欢迎大家加我为QQ好友,欢迎访问我的空间!联系方式:联系方式:QQ:626815632QQ:626815632 邮箱: 邮箱: QQ空间:http:/ 编程必备手册编程必备手册 北京索为高科系统技术有限公司 雒海涛 2011-02-11 编程格式规范编程格式规范 这儿把编程格式规范放在最前
3、面希望大家在学习之前认真阅读该部分,对后面的 matlab 编程大有裨益。一编程原则一编程原则 1.正确:能准确实现原仿真目的;2.高效:循环向量化,少用或不用循环,尽量调用 MATLAB 自带函数;3.清晰:养成良好的编程习惯,程序具有良好的可读性;4.通用:程序具高度的可移植性,同时易于扩展,避免同学之间重复工作。二二.编程规则编程规则 1.定义变量,以英文单词小写缩写开头表示类别名,再接具体变量的英文名称英文单词,具体变量首字母大写。教研室常用类别缩写:最大值 max,最小值 min 例如:定义变量存贮临时数组 TempArray 的最大值 maxTempArray 依照工程大小确定变量
4、名长短,小范围应用的变量应该用短的变量名。定义务必清晰,避免混淆。2.循环变量使用常用变量 i,j,k;程序中使用复数时,采用 i,j 以外的循环变量以避免和虚数单位冲突,同时要在注释部分说明变量意义。3.程序应高内聚、低耦合、模块函数化,便于移植、重复使用。4.使用 if 语句判断变量是否等于某一常数时,将常变量数写在等号之前,常数写在等号之后。例如判断变量 a 是否等于 100 写作 if a=100。5.用常数代替数字,少用或不用数字。例如上一条:写作 if a=100 就不标准。应先定义 meanConst=100;为期望常量。同时在注释中说明,然后在程序部分写作:if a=const
5、;如果要修改期望常量的话,只要在程序定义部分修改就可以,不必再逐行修改,此外还易于在该程序的基础上增加其他功能。三三.注释规则注释规则 1.注释要用汉语,且用一个“%”连接文字作为注释开始标志。程序的起始要注明作者、时间、程序功能、复杂的算法需要加上流程说明。对于比较复杂的程序,由几个人协作完成,要在每一个模块的起始分别注明作者、时间、程序功能。注释采用 matlab 的注释符号。同时第一行增加关键字,便于将来程序文件较多时,使用 help 和 lookfor 查找。例如:%关键字%此处为函数名,如果不是函数文件就取消此行%创建人:%日 期:%修改人:%日 期:%函数变量及功能的简单描述%2.
6、对于所有有物理含义的变量、常量、数据结构声明,在声明时都必须加以注释,说明其物理含义,单位。3.源程序有效注释量必须在 20%以上,边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性,不再有用的注释要删除。注释语言必须准确、易懂、简洁,尽量不要用缩写。如果接手前人的程序,在维护过程中需要对变量以及源程序作部分修改及 补充,在修改变量及程序注释的同时需要在修改的位置标明修改人的名字及修改日期。对原程序修改要及时修改注释。否则有注释比没有注释还要糟糕。4.程序内部不同功能模块要空一行,同时附注释说明模块的作用、功能。这样程序结构清晰易懂,便于同学间学习交流。例如:模块一代码 此处
7、为空行%注释说明下一模块的功能%模块二代码 5.一行代码不宜过长,应限制在 80 列之内。一旦有过长代码须用 MATLAB 转接符号“.”连接两行代码,以便于同学之间打印程序交流。因为大多是打印机的行长度为 80。例:第一行代码 nVariable=1+1+1+1+1+1+1+1+1+11+1+1+1+1+1+1+1+1+1+1+1+1.第二行代码 +1+1+1;编程入门编程入门 一前言一前言 Matlab 作为一种广泛应用于科学计算的工具软件,不仅具有强大的数值计算、符号计算、矩阵运算能力和丰富的绘图功能,同时也具有和 C、FORTRAN 等高级语言一样进行程序设计。利用 Matlab 的程
8、序控制功能,可以将有关 Matlab 命令编成程序存储在一个文件中(M 文件),然后在命令窗口中运行该文件,Matlab 就会自动依次执行文件中的命令,直到全部命令执行完毕。在 Matlab 程序设计中,要充分利用 Matlab 数据结构的特点,提高编程效率。二二M 文件文件 M 文件以.m 为扩展名。M 文件是由若干 Matlab 命令组合在一起构成的,它可以完成某些操作,也可以实现某种算法。事实上,Matlab 提供的内部函数以及各种工具箱,都是利用 Matlab 语言开发的 M 文件。用户也可以结合自己的工作需要,开发自己的程序或工具箱。M 文件根据调用方式的不同可以分为两类:Scrip
9、t:脚本文件/命令文件,Function:函数文件。它们均是普通的 ASCII 码构成的文件。M 脚本文件中包含一族由 MATLAB 语言所支持的语句,它类似于 DOS 下的批处理文件,它的执行方式很简单,用户只需在 MATLAB 的提示符 下键入该 M 文件的文件名,这样 MATLAB 就会自动执行该 M 文件中的各条语句,并将结果直接返回到 MATLAB 的工作空间。M 函数格式是 MATLAB 程序设计的主流,一般情况下,不建议您使用 M 脚本文件格式编程。MATLAB 的 M 函数是由 function 语句引导的,其基本格式如下:function 返回变量列表=函数名(输入变量列表)
10、注释说明语句段,由%引导 输入、返回变量格式的检测 函数体语句 建议:M 文件名与文件内主函数名相同(matlab 是以文件名做区分的,当然函数名和文件名也可以不同)。三程序实例三程序实例 1.脚本文件举例:编写一个脚本文件将华氏温度转化为摄氏温度。5(32)9=cf 新建一个 M 文件 f2cs.m,内容如下:clear;%清除当前工作空间中的变量 f=input(Please input Fahrenheit temperature:);c=5*(f-32)/9;fprintf(The centigrade temperature is%gn,c);在命令窗口中输入 f2cs,即可执行该
11、M 文件。2.function 文件举例:计算两个数字之和。新建一个 m 文件,命名为 MySum.m,内如如下:function rt=MySum(x,y)rt=x+y;end 在命令窗口输入 MySum(10,20)即可输出计算结果。程序控制结构程序控制结构 一顺序结构顺序结构 按排列顺序依次执行各条语句,直到程序的最后,这是最简单的一种程序结构,一般涉及数据的输入输出、数据的计算或处理等。二选择结构二选择结构 选择结构选择结构 是根据给定的条件成立或不成立,分别执行不同的语句。Matlab 用于实现选择结构的语句有 if 语句和 switch 语句。If 条件语句条件语句 单分支结构 i
12、f expression(条件)(条件)statements(语句组)语句组)end 双分支结构 if expression(条件)条件)statements1(语句组语句组 1)else statements2(语句组语句组 2)end 多分支结构 if expression1(条件 1)statements1(语句组 1)elseif expression2(条件 2)statements2(语句组 2).elseif expressionm(条件 m)statementsm(语句组 m)else statements(语句组)end if 语句举例语句举例 数论中的一个有趣问题:任取一个
13、正整数,如果是偶数,用 2 除,如果是奇数,用 3 乘再加 1,反复这个过程,直到所得到的数为 1。问:是否存在使该过程永不中止的整数?while 1 n=input(Please enter n(nonpositive quit):);if n1 if rem(n,2)=0 n=n/2;else n=3*n+1;end fprintf(n n=%d,n);end fprintf(n n=%d is not we need!continue.n,nt);end switch 语句语句 根据表达式的不同取值,分别执行不同的语句。switch expression(表达式)表达式)case val
14、ue1(表达式表达式 1)statement1(语句组语句组 1)case value2(表达式表达式 2)statement2(语句组语句组 2).case valuem(表达式(表达式 m)statementm(语句组(语句组 m)otherwise statement(语句组)语句组)end Matlab 首先计算首先计算 expression 的值,然后将它依次与各个的值,然后将它依次与各个 case 指令后的检测值进指令后的检测值进行比较,当比较结果为真时,就执行相应的语句组,然后跳出行比较,当比较结果为真时,就执行相应的语句组,然后跳出 switch 结构。结构。如果所有的比较结果
15、都为假,则执行如果所有的比较结果都为假,则执行 otherwise 后面的语句组,然后跳出后面的语句组,然后跳出 switch 结结构。构。otherwise 指令可以不出现。指令可以不出现。switch 后面的表达式后面的表达式 expression 的值可以是一个标的值可以是一个标量或字符串。量或字符串。三循环结构三循环结构 循环结构循环结构 是按照给定的条件,重复执行指定的语句。Matlab 用于实现循环结构的语句有 for 语句语句和 while 语句语句 for 循环循环 for variable=expression statement(循环体)end 表达式 expression
16、 可以是行向量,也可以是矩阵 while 循环循环 while expression(条件)statement(循环体)end 循环语句可以嵌套使用循环语句可以嵌套使用 不能在不能在 for 循环体循环体内改变循环变量的值内改变循环变量的值 为了提高代码的运行效为了提高代码的运行效率,应尽可能提高代码的向量化程度,避免率,应尽可能提高代码的向量化程度,避免 for 循环循环的使用的使用 如果预先就知道循环的次数,则可以采用如果预先就知道循环的次数,则可以采用 for 循环循环;否则,如果预先无法确定循环;否则,如果预先无法确定循环的次数,则可以使用的次数,则可以使用 while 循环循环。四四
17、其它流控制语句其它流控制语句 break 和和 continue break 语句用于终止循环的执行,即跳出最内层循环 continue 语句用于结束本次循环,进行下一次循环 break 和 continue 一般与 if 语句配合使用 return return 语句用于退出正在运行的脚本或函数,通常用在函数文件中。Matlab 常用常用函数及函数实例函数及函数实例 一一常用函数列表常用函数列表=小整理:MATLAB 常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数 z 的相角(Phase angle)sqrt(x):开平方 real(z):复数 z 的实部
18、 imag(z):复数 z 的虚部 conj(z):复数 z 的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数 x 化为分数表示 rats(x):将实数 x 化为多项分数展开 sign(x):符号函数(Signum function)。当 x0 时,sign(x)=1。rem(x,y):求 x 除以 y 的馀数 gcd(x,y):整数 x 和 y 的最大公因数 lcm(x,y):整数 x 和 y 的最小公倍数 exp(x):自
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 编程 必备 手册 适合 初学者
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内