MATLAB学习笔记整理

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MATLAB笔记摘录:1、clc命令清空命令窗口(TheCommandWindows)中的内容,可以用clf清空当前图象窗口中的内容。在工作空间窗口(Theworkspacebrowser)中变量可用clear命令清除。2、能用diary命令记录下在MATLAB中运行过程中每个线程所做的事。3、常见编程错误如果变量名与MATLAB中的函数或命令重名,那么这个函数或命令将不能被访问。4、常见编程错误不要创建和MATLAB内建函数或命令同名的M文件。5、—which命令,它能帮助我们找到正在执行的文件版本和它的路径。6、命令窗口是最重要的窗口,因为所有的命令都得在此键入,所有的结果在此输出7、MATLAB的变量名必须以字母开头,后面可以跟字母,数字和下划线(_).只有前31个字符是有效的;如果超过了31个字符,基余的字符将被忽略。如果声明两个变量,两变量名只有第32个字符不同,那么MATLAB将它们当作同一变量对待8、像MATLAB这样的叫做弱类型语言。通过简单的赋值形式就可以创建变量,变量类型取决于创建时的类型。9、。有三种方式初始化MATLAB中的变量:1.用赋值语句初始化变量2.用input函数从键盘输入初始化变量3.从文件读取一个数据10、克隆运算符指定一系列的数值,它指定了这个系列数的第一值,步增和后一个值。它的一般顺序始下first:incr:last11、捷径表达式可以联合转置运算符(’)来初始化行向量,或更加复杂的矩阵12、函数zeros可以初始化任何大小的全为零的数组。相似地,ones函数产生的数组包含的元素全为1,eye函数通常用来产生单位矩阵,只有对角线的元素为1.其他元素为0.13、input函数中有字符's'做为它的第二个参数,输入的数据就被当字符串.in2=input('enterdata:','s')enterdata:123把字符串1.23存储到in2中.14、.数组,矩阵,向量有什么区别?答:矩阵是二维数组,向量是一维数组,矩阵和向量是数据的子集。15、在数组名后面加括号,括号里面是所有要选择的元素的下标,这样就能选择这个函数的子集了16、二维数组为例:arr[1,:]取数组的子集;arr[1,2]取具体的元素;17、format包括两方面的内容,一方面是打印内容的文本的提示;另一方面是打印的格式。18、fprintf函数有一个重大的局限性,只能显示复数的实部。。当我们的计算结果是复数时,这个局限性将会产生错误。在这种情况下,好用disp显示数据。19、如果数据需要在matlab和其他程序之间交换使用,那么以ASCII格式存储数据。如果只在matlab中使用那么,应以mat文件的形式存储数据。20、以“dat”的扩展名保存ASCII数据文件,以区别于以“mat”为扩展名的mat文件。21、filename代表你要保存变量的那个文件,var1,var2等是要保存的变量。在默认情况下,这个这个文件的扩展名为‘mat’,我们称之为MAT文件。如果在filename后面无变量,则工作区的所有内容将会被保存。22、MATLAB在数组运算中提供了两种不同类型的运算,一种是数组运算(arrayoperations),一种是矩阵运算(matrix).数组运算是一种用于元素对元素的运算..当一个数组和一个标量进行运算时,标量将会和数组中的每一元素进行运算.相对地,矩阵运算则遵守线性代数的一般规则23、MATLAB用一个特殊的符号来区分矩阵运算和数组运算。在需要区分两者不同的时侯,把点置于符号前来指示这是一个数组运算(例如,.*)。数组运算符.*,.^和./24、[maxvalindex]=max([1-56-3])将会产生结果maxval=6,和index=3.25、一个重要的选项是-dtiff.这个选项指定输出图片的格式是标签影像档案格式(TIFF)。26、下面这个命令将会创建一个TIFF格式的当前图象的图片,并保存在一个叫my_image.tif的文件中print–dtiffmy_image.tif。你也可以选择图象窗口中的“file/export”选项来创建tiff图片。27、我们可以用legend来制作图例。它的基本的形式如下:legend('string1','string2',...,pos)其中string1,string2等等是与轨迹标签名,而pos是一个整数,用来指定图例的位置。用legendoff命令将能去除多余的图例。28、打印数据既可以用对数尺度,也可以用线性尺度:1.plot函数的x,y均用线性尺度2.semilog函数x轴用对数尺度,y轴将用线性尺度3.semiloge函数x轴用线性尺度,y轴用对数尺度4.loglog函数两坐标轴将会都用对数尺度。29、在MATLAB中有三种类型的错误:1.语法错误:缺括号等2.运行错误:当一个非法的数学运算出现在程序的过程(例如,除以0),将会出现运行时错误。这些错误将会使程序返回Inf或NaN3.逻辑错误:指编译和运行都能通过,而产生了错误的结果。30、养成好的编程习惯:1.尽可能的使用有意义的变量名,一眼就可以看懂,像day,month,year.2.给每一个程序创建一个数据字典,以提高程序的可维护性.3.变量名一律用小写字母,这样可以不会因大小写不同而造成变量混淆。4.在所有的MATLAB赋值语句的后面加上一个分号,用来禁止赋值的重复.在程序调试期间,如果你检验某个语句的值,可去掉语句后的分号.5.如果要在MATLAB和其他程序之间交换数据,那么就要以ASCII格式存储数据.如果数据只应用在此MATLAB中那么,应以mat­file格式存储数据.6.以”dat”为扩展名保存ASCII数据以区分MAT文件,MAT文件的扩展名为mat.7.用适当的括号使你的表达式清晰,易理解.8.当你读取和写入数据时,使用适当的单位31、常见的数组与矩阵的运算:运算MATLAB形式注释数组加法A+B数组加法和矩阵加法相同数组减法A­B数组减法和矩阵减法相同数组乘法A.*BA和B的元素逐个对应相乘.两数组之间必须有相同的形,或其中一个是标量.矩阵乘法A*BA和B的矩阵乘法.A的列数必须和B的行数相同.数组右除法A./BA和B的元素逐个对应相除:A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个是标量.数组左除A.\BA和B的元素逐个对应相除:B(i,j)/A(i,j)两数组之间必须有相同的法形,或其中一个是标量.矩阵右除法A/B矩阵除法,等价于A*inv(B),inv(B)是B的逆阵矩阵左除法A\B矩阵除法,等价于inv(B)*A,inv(A)是A的逆阵数组指数运算A.^BAB中的元素逐个进行如下运算A(i,j)^B(i,j),A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个是标量.32、有两大类控制顺序结构:选择结构,用选择执行特定的语句;循环结构,用于重复执行特定部分的代码。33、程序设计的基本步骤如下:1.清晰地陈述出你要解决的问题。2.确定程序所需地输入量和程序所产生的输出量。3.为你的程序设计算法(伪代码)4.将算法转化为MATLAB语句5.调试MATLAB程序34、有两种形式的运算符可以在MATLAB中关系得到true/false:关系运算符和逻辑运算符。跟C语言一样,MATLAB没有布尔型和逻辑数据类型。MATLAB把0值作为结果false,把所有的非0值作为结果ture。35、关系运算符也可用于标量与数组的比较。关系运算符也可比较两个数组,只要两个数组具有相同的大小。关系运算符也比较两个相同长度的字符串36、符号==是一个比较运算符,返回一个逻辑数,而符号=是将等号右边的表达式的值赋给左边的变量37、如果它为0,则其为false。所以~5的结果为0,~0的结果为1。38、标量和数组之间也可进行逻辑运算。两数组之间也可进行逻辑运算,只要它们具有相同的大小。39、逻辑运算在所有的数学运算和关系运算之后进行。数学运算符关系运算符逻辑运算符40、表达式中的运算顺序如下:1.所有的数学运算按照前面描述的顺序的进行。2.从左向右依次进行关系运算3.执行所有~运算4.从左向右依次进行&运算5.从左向右依次进行|运算和数学运算一样,括号能够改变括号的默认顺序。41、选择结构在MATLAB中有三种具体的形式:if结构,switch结构和try/catch结构。42、对于有许多选项的选择结构来说,好在一个if结构中使用多个elseif语句,尽量不用if的嵌套结构。43、注意只有带有字符参数的函数才能当作命令。带有数字参数的函数只能被当作函数。44、在同一坐标系内画出多个图象:1.当holdon命令执行后,所有的新的图象都会叠加在原来存在的图象。holdoff命令可恢复默认情况,用新的图象来替代原来的图象。2.我们用figure函数来选择当前窗口。这个函数的形式为“figure(n)”,其中n代表图象数。当这个函数被执行后,图n将会变为当前图象,执行所有的画图命令。3.gcf函数用于当于返回当前图象数。4.subplot命令允许程序在一个图象窗中创建多个子图象。45、文本的字体通可以通过streammodifiers修改。一个streammodifier是一个特殊的字符序列,用来告诉编译器改变它的行为。46、一旦一个streammodifier插入一个文本字符串中,它持续发挥作用,直到这个字符串的结束或消失。如果一个modifier后在跟着一个{},只有{}中的文本起作用。47、如果要打印转义符\,{,},_,或^就必须在前面加上一个反斜杠48、Matlab中包括一个重要的函数叫做polar,它用于在极坐标系中画图。这个函数的基本形式如下:polar(theta,r)49、50、设置断点:我们可以用鼠标右击你所关心的行并选择”set/clearbreakpoint”选项。51、一旦到达某个断点程序员可以通过在命令窗口中键入变量名的方法检查或修改在工作区内的任一变量。当程序员对程序的这一点感到满意时,可以通过重复按F10一行一行调试,也可以按F5运行到下一个断点。它总是能检测程序中的每一个断点中的任何一个变量的值。52、这个菜单包括两个项目:“stopifError”和“stopifwarning”53、axis命令允许程序员指定X,Y轴的取值范围54、循环结构有两种基本形式:while循环和for循环。55、其中index是循环变量(就是我们所熟知的循环指数),exp是循环控制表达式。变量index读取的是数组expr的行数,然后程序执行循环体(loopbody),所以expr有多少列,循环体就循环多少次。expr经常用捷径表达式的]方式,即first:incr:last。forindex=expr(1:n)Statement1...BodyStatementnEnd注意:在循环体在后一次执行后,循环系数将会一直为n。循环指数可以为向量。56、每一次扩展数组,都要经过以下步骤:第一步,创建一个新数组。第二步,把旧数组的元素复制到新数组当中。第三步,把扩展的元素写入新数组。第四步,删除旧数组。对于大数组来说这些步骤是相当耗时的。57、向量算法的缺点是需要很大的内存,因为一些间接的数组需要创建。这经常是一小点损失,所以要比for循环算法好的多。在matlab中,用向量算法代替循环的算法的过程称之为向量化(vectorization)。向量化能够改进许多的matlab程序。注意:那种既可以用向量可以解决的问题,也可以用循环解决的问题,好用向量解决,这是因为向量执行的速度快。58、:break和continue语句。break语句可以中止循环的执行和跳到end后面的第一句执行,而continue只中止本次循环,然后返回循环的顶部59、如果你要利用那些没有被选择到的元素进行运算,只需要在逻辑屏蔽上加一个非运算符(-)60、forkk=[0,5;3,3],一次循环一个列向量,第一次循环kk=[0;3],第二次循环kk=[5;3]61、si

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功