您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > matlab学习心得
1.@function可以表示一个函数,由于可以用M文件functionF=fun(x);来定义一个函数,这样就可以用@function来调用你所定义的函数,它所定义的是运算函数,而不是符号函数2.round(x);是将矩阵x中的元素圆整,以四舍五入的方法进行然后返回一个整数矩阵。floor,向下取整。ceil向上取整。fix,0方向取整。3.meshgrid(x,y);画三维图形所必需的指令将向量X和向量y转化为二维的点阵。(x1,x2,x3,x4,x5)和(y1,y2,y3,y4)是无法做图的,只有转化为三维的点阵才有可能画图。画图原理,x为一行,y为列,然后分别以对方的步进值为步进,产生一个X矩阵(所有行是相同的),Y矩阵(所有列是相同的)4.shadinginterp是可以将画图命令中图中视角有重叠的部分用不同的颜色加以区分,一样的高度的线用一样的颜色5.solve(f);可以用来解f=0的问题,f必须是定义的符号函数。6.proper=input('字符串').该函数的作用是将字符串提示出来,然后将输入的内容存入到proper中,如果在后边加一个input('string','s')是将键入内容以字符串方式存储。7.循环控制语体,continue结束该次循环剩余的内容继续循环下次的内容;break就直接结束循环,跳出循环体。return命令结束调用体,回到调用他的函数体中,并返回一个值。8.生成逻辑数组时,直接就可以运算命令来实现b是逻辑数组,c是数据数组,则c(b)是将c中对应的b中位置为1的数值提取出来返回一个新的数组。9.显示内容,disp(字符串),fprintf等。10.char(A)和double(A);作用是可以使矩阵在字符串之间变换,对应的是ASCII码值。可以操作这些码。11.w=find(),可以找出某矩阵中满足某种条件的数值矩阵下标,并按照顺序返回到w中。()中可以是关系式。12.进行符号计算时,应该先用syms来定义符号参数。否则程序报错13.定义简单子函数的方法,例如f=inline('sqrt(log(1./x))','x');定义二元函数的方法,例如qqq=@(x,y)y*sin(x)+x*sin(y);两种方法都可以来简单定义函数,对于多元函数都是通用的,只是多了声明函数项而已,其中第二个中的(x)不能去掉。14.legend(‘’,‘’)按照绘图顺序给出注标;15.psearchtool可以调出优化算法的控制窗口。可以进行线性(一次)规划,遗传算法等各种算法的gui界面16.set(gca,'Ytick',[-1:0.1:3]);可以以0.1为间隔设置坐标最小线距,semilogx()是绘图指令,x坐标讲义对数形式显示。Loglog()绘制双对数坐标图形。17.diff求微分指令,diff(f,a);对符号函数f和变量a求导。f也可以是矩阵,返回值就是导矩阵18.limit(f,x,a,'left'),求极限指令,对函数fx从左侧接近a的极限值。left可省略,x省略后是默认变量,a和x都省略了是默认自变量0,当省略a时是声明自变量趋于inf19.int(S,x,a,b)是作定积分的。对函数s,变量x从a到b做积分,省略x是对默认变量积分。int(S,x)作符号积分,省略x后是对默认变量积分。20,符号函数本身并不能直接用于计算。因为它本身并不是定义的函数。类型为sym类型。不能直接作为函数来对参量矩阵数值作变换。21.先将一个图形的句柄赋给H,然后用set(H)可以得到H的所有列表,有内容表示可以修改,{}表示不可以修改。然后在用set(H,‘列表一项’)可以得到句柄项所有的内容,然后就可以进行设置了,方法很简单。22.对于坐标轴的刻度属性,matlab没有专门的高层命令,只能用底层命令来解决。set(gca,'Xtick',xs,'Ytick',ys,'Ztick',zs);其中xs,ys,zs是任意有效的实向量,用来设置坐标属性。23.repmat(A,m,n);矩阵平铺,将矩阵A复制m*n块。24.Ind=sub2ind(matrixSize,rowSub,colSub)是将对应位置(下标的形式)的矩阵的元素的索引值找出来(按照列将矩阵变形后找出对应的位置即为矩阵元素的索引值。)。调用时可以直接用A(Ind)调出对应的元素。(在FreeMat、Matlab中,二维数组的存储是以列为主序的,所以看一个元素在数组中的索引值,要一列一列的来数)。25,产生随机数的另一个方法,先用A=Randperm(N),产生一个随机的排列,然后用A(2:end)=[];删除第二个元素以后的值就可以产生一个随机的整数。不需要随机种子,真随机。查找之后发现还有一个方法rand函数可以生成一个随机数然后乘以你的范围,用fix修一下小数部分就好了。fix向零方向取整。代码fix(rand*255);不需要预先生成随机种子,是一种真随机。26.以前我们讲过用内联函数inline创建符号函数,但是不能用于计算,利用向量化函数vectorize(y),可以将内联函数转化为向量化函数。再利用feval()函数,里边列出所有变量的取值,就可以进行计算了。
本文标题:matlab学习心得
链接地址:https://www.777doc.com/doc-5307310 .html