版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、v2.1 变量及其赋值v2.1.1 标识符与数 标识符是标识变量名、常量名、函数名和文件名的字符串总称。给矩阵全行赋值:a(5,: )=3,2,1给矩阵全列赋值:a(: ,5)=3,2,1取出矩阵某元素:b=a(1,2,1,3)除去矩阵某行:a (1,2,3,:)=除去矩阵某列:a (:,1,2,3)= 综上,矩阵的值放在方括号中,同行中的各元素间以逗号或空格分开,不同行则以分号隔开。语句的结尾可用回车或逗号,此时会立即显示运算结果,亦可用分号,则运算依然运行,只是不显示。 为空矩阵没有元素的矩阵。 若未指定变量,则使用临时变量ans,暂存计算结果,即ans= 1.0000 0.9999 0.
2、8888 v2.1.3 复数 MATLAB中的每一个元素都可以是复数(虚数部分用i或j表示),实数是复数的特例。 复数的赋值方法:将其元素逐个赋值v2.1.4 变量检查 在调试程序时,往往需要检查工作空间的变量与阶数。可用who命令v 2.1.5 基本赋值矩阵 魔方矩阵:magic 每行、每列及两对角线上的元素之和均(n3+n)/2。 Hilbert矩阵/逆矩阵:hilb 单位矩阵:eye(n) n阶方阵对角线上的元素为1,其余均为0。 全0矩阵:zeros 全1矩阵:onesv 二、 矩阵的乘法 假定有两个矩阵A和B,若A为mn矩阵,B为np矩阵,则C=A*B为mp矩阵。 2.2.2 矩阵除
3、法及线性方程组的解 在MATLAB中,有两种矩阵除法运算:和/,分别表示左除和右除。如果A矩阵是非奇异方阵,则AB和B/A运算可以实现。AB等效于A的逆左乘B矩阵,也就是inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。对于含有标量的运算,两种除法运算的结果相同,如3/4和43有相同的值,都等于0.75。又如,设a=10.5,25,则a/5=5a=2.1000 5.0000。对于矩阵来说,左除和右除表示两种不同的除数矩阵和被除数矩阵的关系。对于矩阵运算,一般ABB/A。 1矩阵的逆对于一个方阵A,如果存在一个与其同阶的方阵B,使得:AB=BA=I (I为单位矩阵)则
4、称B为A的逆矩阵,当然,A也是B的逆矩阵。求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在MATLAB中,求一个矩阵的逆非常容易。求方阵A的逆矩阵可调用函数inv(A)。2矩阵的伪逆如果矩阵A不是一个方阵,或者A是一个非满秩的方阵时,矩阵A没有逆矩阵,但可以找到一个与A的转置矩阵A同型的矩阵B,使得ABA=A或BAB=B此时称矩阵B为矩阵A的伪逆,也称为广义逆矩阵。在MATLAB中,求一个矩阵伪逆的函数是pinv(A)。 v 2.2.3 矩阵的乘方和幂次函数 一个矩阵的乘方运算可以表示成Ax,要求A为方阵,x为标量。 在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点
5、,所以叫点运算。点运算符有.*、./、.和.。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。 v2.2.4 矩阵结构形式的提取与变换 1对角阵 只有对角线上有非0元素的矩阵称为对角矩阵,对角线上的元素相等的对角矩阵称为数量矩阵,对角线上的元素都为1的对角矩阵称为单位矩阵。 (1) 提取矩阵的对角线元素 设A为mn矩阵,diag(A)函数用于提取矩阵A主对角线元素,产生一个具有min(m,n)个元素的列向量。diag(A)函数还有一种形式diag(A,k),其功能是提取第k条对角线的元素。(2) 构造对角矩阵设V为具有m个元素的向量,diag(V)将产生一个mm对角矩阵
6、,其主对角线元素即为向量V的元素。diag(V)函数也有另一种形式diag(V,k),其功能是产生一个nn对角阵,其第k条对角线的元素即为向量V的元素。2. 三角阵三角阵又进一步分为上三角阵和下三角阵,所谓上三角阵,即矩阵的对角线以下的元素全为0的一种矩阵,而下三角阵则是对角线以上的元素全为0的一种矩阵。 (1) 上三角矩阵求矩阵A的上三角阵的MATLAB函数是triu(A)。triu(A)函数也有另一种形式triu(A,k),其功能是求矩阵A的第k条对角线以上的元素(主对角线为第一条,向上递增)。如提取矩阵A的第2条对角线以上的元素,形成新的矩阵B,B=triu(A,2)。 (2) 下三角矩
7、阵在MATLAB中,提取矩阵A的下三角矩阵的函数是tril(A)和tril(A,k),其用法与提取上三角矩阵的函数triu(A)和triu(A,k)完全相同。2.3 元素群运算2.3.1 数组及其赋值 1.用两个冒号组成等增量语句,格式为: t=初值:增量:终值,当增量为1时可省略。 2.用linspace函数,格式为: linspace(初值、终值、点数) 3.用logspace函数(等比级数),格式为: logspace(初值、终值、点数)v2.3.2 元素群的四则运算和幂次运算 元素群的运算是矩阵中所有元素安单个元素进行运算,即 点运算。元素群的幂次运算是各个元素单独作幂次运算。2.3.
8、3 元素群的函数 1.三角函数 sin cos tan cot sec csc asin acos atan acot asec acsc 2.指数函数 log2 pow2 3.复数 abs angle real imag 4.取整函数 mod(x,m) :x整除m取余数v2.4 逻辑判断及流程控制v2.4.1 关系运算MATLAB提供了6种关系运算符:(小于)、(大于)、=(大于或等于)、= =(等于)、=(不等于)。它们的含义不难理解,但要注意其书写方法与数学中的不等式符号不尽相同。 关系运算符的运算法则为:(1) 当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为1,
9、否则为0。(2) 当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。 (3) 当参与比较的一个是标量,而另一个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。 运算优先级: 先进行关系运算后赋值,例如: 键入a=1+1= =2,得1v2.4.2 逻辑运算 逻辑量只能取0和1两个值。其基本运算有与(&)、 或(|)、非()、异或(Xor)四种。两个
10、逻辑量运算后的结果仍为逻辑量。运算A=0A=1B=0B=1B=0B=1A&B0001A|B0111A1100Xor(A,B)0110v2.4.3 流程控制语句v选择结构 1if语句 在MATLAB中,if语句有3种格式。 (1) 单分支if语句: if 条件 语句组,end 当条件成立时,则执行语句组,执行完之后继续执行if语句的后继语句,若条件不成立,则直接执行if语句的后继语句。 (2) 双分支if语句: if 条件 语句组1,else 语句组2 ,end 当条件成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。 (3) 多分支if语句:
11、if 条件1 语句组1 elseif 条件2 语句组2 elseif 条件m 语句组m else 语句组n end 语句用于实现多分支选择结构。 2switch语句 switch语句根据表达式的取值不同,分别执行不同的语句,其语句格式为: switch 表达式 case 表达式1 语句组1 case 表达式2 语句组2 case 表达式m 语句组m otherwise 语句组n end 当表达式的值等于表达式1的值时,执行语句组1,当表达式的值等于表达式2的值时,执行语句组2,当表达式的值等于表达式m的值时,执行语句组m,当表达式的值不等于case所列的表达式的值时,执行语句组n。当任意一个分
12、支的语句执行完后,直接执行switch语句的下一句。循环结构 1for语句 for语句的格式为: for 循环变量=表达式1:表达式2:表达式3 循环体语句 end 其中表达式1的值为循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值。步长为1时,表达式2可以省略。 for 语句更一般的格式为: for 循环变量=矩阵表达式 循环体语句 end 执行过程是依次将矩阵的各列元素赋给循环变量,然后执行循环体语句,直至各列元素处理完毕。v2.5 基本绘图方法v2.5.1 直角坐标系的两维曲线 1.plot(y)输入一个数组的情况 plot函数最简单的调用格式是只包含一个输入参数:plo
13、t(y)。在这种情况下,当y是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。例例:y=5*(rand(1,10)-.5), plot(y) 2.plot(x,y)输入两个数组的情况 绘制单根二维曲线。plot函数的基本调用格式为:plot(x,y) 。其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。例:t=0:0.5:4*pi; y=exp(-0.1*t).*sin(t); plot(t,y) 2.5.2 线型、点型和颜色 曲线的线型、颜色和数据点标记符号,它们可以组合使用。当选项省略时,MATLAB规定,线型一律用实线,颜色将根据曲线
14、的先后顺序依次。 如:plot(x,y,*b) 绘出的图线,数据点处均用*做蓝色标记,各点之间不再连以直线。标识符颜色标识符点/线型y黄.点m紫o圆c青xxr红+g绿-实线b蓝*星号w白:虚线k黑-. / - -点/长划线v2.5.3 多条曲线的绘制 1.plot(t,y1,y2,) 当t是向量,y是矩阵时,若t是列/行向量,则y的列/行长度与t相同。y的行/列数是曲线的根数(t中元素的个数)。如:plot(t,y;y1) 自动给曲线加以不同的颜色。这种方法要求所有的输出量由同样的长度和同样的自变量向量。 2.用hold命令 图形保持hold on/off命令控制是保持原有图形还是刷新原有图形
15、,不带参数的hold命令在两种状态之间进行切换。 如: plot(t,y), hold on, plot(t,y1,g) 3.plot (x1,y1,x2,y2,xn,yn) 当输入参数都为向量时,x1和y1,x2和y2,xn和yn分别组成一组向量对,每一组向量对的长度可以不同。每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制出多条曲线。 如:plot(t,y,+g,t2,y2,:r) title(线型、点型和颜色) xlabel(时间),ylabel(Y) 4.plotyy 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。调用格式为: plo
16、tyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。2.5.4 屏幕控制和其他二维绘图 图形加注功能将标题、坐标轴标记、网格线及文字注释加注到图形上,这些函数为: title 给图形加标题 xlable 给x轴加标注 ylable 给y轴加标注 text 在图形指定位置加标注 gtext 将标注加到图形任意位置 grid on(off) 打开、关闭坐标网格线 legend 添加图例 axis 控制坐标轴的刻度 函数中的说明文字,除使用标准的ASCII字符外,还可使用L
17、aTeX格式的控制字符,这样就可以在图形上添加希腊字母、数学符号及公式等内容。例如,text(0.3,0.5,sin(omegat+beta)将得到标注效果sin(t+)。 alphabetagammadeltaepsilon zetaetathetarhosigmaGammaDeltaTheta例 在0 x2区间内,绘制曲线y1=2e-0.5x和y2=cos(4x),并给图形添加图形标注。程序如下:x=0:pi/100:2*pi;y1=2*exp(-0.5*x);y2=cos(4*pi*x);plot(x,y1,x,y2)title(x from 0 to 2pi); %加图形标题xlabe
18、l(Variable X); %加X轴说明ylabel(Variable Y); %加Y轴说明text(0.8,1.5,曲线y1=2e-0.5x); %在指定位置添加图形说明text(2.5,1.1,曲线y2=cos(4pix); legend(y1,y2) %加图例例:t=0:0.1:10y1=sin(t);y2=cos(t);plot(t,y1,r,t,y2,b-);x=1.7*pi;1.6*pi;y=-0.3;0.8;s=sin(t);cos(t);text(x,y,s);title(正弦和余弦曲线);legend(正弦,余弦)xlabel(时间t),ylabel(正弦、余弦)grida
19、xis square0246810-1-0.8-0.6-0.4-0.200.20.40.60.81sin(t)cos(t)正 弦和 余 弦曲 线时 间 t正 弦、 余 弦正 弦余 弦2.5.4 屏幕控制和其他二维绘图1.图形屏幕控制命令figure:打开图形窗口clf:清除当前图形窗的内容。hold:保持当前图形窗的内容,再键入hold即解除之。 一般用hold on和hold off命令可得确知的状态。close:关闭当前图形窗。close all:关闭所有图形窗。subplot(n,m,p):将图形窗分为nm个子图,即每行n个,共m行,在第p个子图中绘图。 多窗口绘图figure(n) 创
20、建窗口函数,n为窗 口顺序号。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y) 自动出现第一个窗口figure(2)plot(t,y1) 在第二窗口绘图figure(3)plot(t,y2) 在第三窗口绘图2.其他二维绘图命令 在MATLAB中,二维统计分析图形很多,常见的有条形图、阶梯图、杆图和填充图等,所采用的函数分别是: (选项可为颜色表示符)bar(x,y,选项):条形图stairs(x,y,选项):阶梯图stem(x,y,选项):脉冲图fill(x1,y1,选项1,x2,y2,选项2,):填充图(1)对数坐
21、标图形 MATLAB提供了绘制对数和半对数坐标曲线的函数,调用格式为:semilogx(x1,y1,选项1,x2,y2,选项2,):x轴为log10刻度,y轴为线性刻度。semilogy(x1,y1,选项1,x2,y2,选项2,) :x轴为线性刻度,y轴为log10刻度。loglog(x1,y1,选项1,x2,y2,选项2,): x轴为log10刻度,y轴为log10刻度。 (2)极坐标图 polar函数用来绘制极坐标图,其调用格式为:polar(theta,rho,选项):其中theta为极坐标极角,rho为极坐标矢径,选项的内容与plot函数相似。 3.虚数的绘图 当plot(z)中的z为
22、复数单变量,且虚部不为0,则将实部作为x坐标,虚部作为y坐标,即相当于plot(real(z),imag(z)。若为双变量,如plot(t,z) 则z中的虚数部分将被丢弃。 例如:绘制z=exp(-1+i)*t)的复数图形 4.坐标比例和尺寸的设定 axis函数的调用格式为: axis(xmin,xmax,ymin,ymax,zmin,zmax) axis函数功能丰富,常用的格式还有: axis( equal ):纵、横坐标轴采用等长刻度。 axis(square):产生正方形坐标系(缺省为矩形)。 axis auto:使用缺省设置。 axis off:取消坐标轴。 axis on:显示坐标轴
23、。二维统计分析图二维统计分析图MATLAB提供的统计分析绘图函数还有很多,例如,用来表示各元素占总和的百分比的饼图、复数的相量图等等。例 绘制图形:(1) 某企业全年各季度的产值(单位:万元)分别为:2347,1827,2043,3025,试用饼图作统计分析。(2) 绘制复数的相量图:7+2.9i、2-3i和-1.5-6i。 程序如下:subplot(1,2,1);pie(2347,1827,2043,3025);title(饼图);legend(一季度,二季度,三季度,四季度);subplot(1,2,2);compass(7+2.9i,2-3i,-1.5-6i);title(相量图);2.
24、5.5 三维曲线和曲面 1.空间曲线的绘制 plot3函数与plot函数用法十分相似, 其调用格式为: plot3(x1,y1,z1,选项1,x2,y2,z2,选项 2,xn,yn,zn,选项n) 其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同。 2.空间曲面的绘制 (1)产生三维数据 在MATLAB中,利用meshgrid函数产生平面区域内的网格坐标矩阵。其格式为: x=a:d1:b; y=c:d2:d; X,Y=meshgrid(x,y); 语句执行后,矩阵X的每一行都是向量x,行数等于向量y的元素的个数,矩阵Y的每一列都是向量y,列数等于向量x的元素的个数。(2
25、)绘制三维曲面的函数surf函数和mesh函数的调用格式为:mesh(x,y,z,c)surf(x,y,z,c)一般情况下,x,y,z是维数相同的矩阵。x,y是网格坐标矩阵,z是网格点上的高度矩阵,c用于指定在不同高度下的颜色范围。例 绘制三维曲面图z=sin(x+sin(y)-x/10。程序如下:x,y=meshgrid(0:0.25:4*pi);z=sin(x+sin(y)-x/10;mesh(x,y,z);axis(0 4*pi 0 4*pi -2.5 1);此外,还有带等高线的三维网格曲面函数meshc和带底座的三维网格曲面函数meshz。其用法与mesh类似,不同的是meshc还在x
26、y平面上绘制曲面在z轴方向的等高线,meshz还在xy平面上绘制曲面的底座。(3) 标准三维曲面sphere函数的调用格式为:x,y,z=sphere(n)cylinder函数的调用格式为:x,y,z= cylinder(R,n)MATLAB还有一个peaks 函数,称为多峰函数,常用于三维曲面的演示。例 绘制标准三维曲面图形。程序如下:t=0:pi/20:2*pi;x,y,z= cylinder(2+sin(t),30);subplot(2,2,1);surf(x,y,z);subplot(2,2,2);x,y,z=sphere;surf(x,y,z);subplot(2,1,2);x,y,
27、z=peaks(30); surf(x,y,z); 3. 其他三维图形绘制命令 MATLAB提供了设置视点的函数view。 调用格式为:view(az,el) 其中az为方位角,el为俯仰角,它们均以度度为单位。系统缺省的视点定义为方位角37,俯仰角30。 rotateed:用户可以拖动立体图形作空间连续 转动。 contour:把曲面的等高线投影在x-y平面上。 shading flat:默认状态,使曲面上有小格。 shading interp:在网格片内采用颜色插值处理,得出的曲面图显得光滑。2.5.6 特殊图形和动画在介绍二维图形时,曾提到条形图、杆图、饼图和填充图等特殊图形,它们还可以
28、以三维形式出现,使用的函数分别是bar3、stem3、pie3 和fill3。bar3函数绘制三维条形图,常用格式为:bar3(y)bar3(x,y)stem3函数绘制离散序列数据的三维杆图,常用格式为:stem3(z)stem3(x,y,z)pie3函数绘制三维饼图,常用格式为:pie3(x)fill3函数等效于三维函数fill,可在三维空间内绘制出填充过的多边形,常用格式为:fill3(x,y,z,c)例 绘制三维图形:(1) 绘制魔方阵的三维条形图。(2) 以三维杆图形式绘制曲线y=2sin(x)。(3) 已知x=2347,1827,2043,3025,绘制饼图。(4) 用随机的顶点坐标值画出五个黄色三角形。程序如下:subplot(2,2,1);bar3(magic(4)subplot(2,2,2);y=2*sin(0:pi/10:2*pi);stem3(y);subplot(2,2,3);pie3(2347,1827,2043,3025);subplot(2,2,4);fill3(rand(3,5),rand(3,5),rand(3,5), y ) 利用movie函数,可制作动画。 movie(m,n) 播放由矩阵m所定义的画面n次,缺省时播放一次。 moviein(n)函数用来建立一个足够大的n列矩阵。该矩阵用来保存n幅画面的数据,以备播放。之所以要事先建立一个大矩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年度计算机四级综合提升测试卷及答案详解【易错题】
- 2024-2025学年园林绿化作业人员真题及参考答案详解【模拟题】
- 2024-2025学年度常州工程职业技术学院单招《数学》常考点试卷含完整答案详解(各地真题)
- 2024-2025学年度医师定期考核考前冲刺试卷附完整答案详解(典优)
- 2024-2025学年度注册核安全工程师考试黑钻押题含答案详解(能力提升)
- 2024-2025学年度法律职业资格考试测试卷含完整答案详解【必刷】
- 2024-2025学年度法律职业资格考试真题(考试直接用)附答案详解
- 2024-2025学年反射疗法师3级检测卷附答案详解AB卷
- 2024-2025学年度河北省单招考试一类 《文化素质数学》每日一练试卷及完整答案详解【网校专用】
- 2024-2025学年度临床执业医师考试综合练习附完整答案详解(易错题)
- parp抑制剂研究进展 课件
- 《水工钢结构》试题及答案1783
- 实习协议书电子电子版(2篇)
- 三级医院评审标准(2023年版)实施细则
- 江苏专转本计算机资料汇编
- GA/T 2002-2022多道心理测试通用技术规程
- 片区更新改造总体规划项目建议书
- LY/T 2499-2015野生动物饲养场总体设计规范
- GB/T 24474.1-2020乘运质量测量第1部分:电梯
- GB/T 13803.2-1999木质净水用活性炭
- GB/T 10870-2001容积式和离心式冷水(热泵)机组性能试验方法
评论
0/150
提交评论