《MATLAB复习题分析.ppt》由会员分享,可在线阅读,更多相关《MATLAB复习题分析.ppt(30页珍藏版)》请在第壹文秘上搜索。
1、 2023-2-27Application of Matlab Language1 矩阵与线性代数-矩阵运算n加(+)、减(-)n乘:(*)n 矩阵之间的乘、向量与矩阵相乘、标量与矩阵相乘n除:右除(/)、左除()n 数学上没有矩阵除法的定义。n幂 n转置 2023-2-27Application of Matlab Language2 数组数组(array)的概念的概念 (续)(续)行向量行向量列向量列向量a(2,1)=3a(1,2)=2b(3)=3c(2)=2 2023-2-27Application of Matlab Language3 n函数方法函数方法函数函数ones(生成全生成全
2、1矩阵矩阵)、zeros (生成全生成全0矩阵矩阵) 、 eye产生单位阵产生单位阵“help elmat”获得基本的矩阵生成和操作函数列表获得基本的矩阵生成和操作函数列表*【例【例3.2-5】ones(2,4) ans = 1 1 1 1 1 1 1 1 D=eye(3) D = 1 0 0 0 1 0 0 0 1 2023-2-27Application of Matlab Language4 算术运算算术运算 (续)(续) 【例【例1】数组加减法数组加减法a=zeros(2, 3);a(:)=1:6;b=a+2.5b = 3.5000 5.5000 7.5000 4.5000 6.500
3、0 8.5000c=b-ac = 2.5000 2.5000 2.5000 2.5000 2.5000 2.5000 2023-2-27Application of Matlab Language5 1. 乘方运算乘方运算(1)数组的乘方运算:运算符为)数组的乘方运算:运算符为“.”:数组与标量的乘方运算:数组与标量的乘方运算:A.以数组为底而以标量为指数:以数组中的每个元素为底,以数组为底而以标量为指数:以数组中的每个元素为底,分别与作为指数的标量进行乘方运算得到一个新的数组。分别与作为指数的标量进行乘方运算得到一个新的数组。a=4 5 6;b=1 2 ; 3 4;A=a .4B=b .3%
4、运行结果为:运行结果为:A= 256 625 1296B= 1 8 27 64例例: 2023-2-27Application of Matlab Language6 B.以标量为底而以数组为指数:以该标量为底,用数组中的以标量为底而以数组为指数:以该标量为底,用数组中的每个元素分别作为指数与该标量进行乘方运算后得到一个每个元素分别作为指数与该标量进行乘方运算后得到一个新的数组新的数组。a=4 5 6;b=1 2 ; 3 4;d=2;e=d .af=d .b%运行结果为:运行结果为:e= 16 32 64f= 2 4 8 16例例: 2023-2-27Application of Matlab
5、 Language7 数组与数组的乘方运算:数组与数组的乘方运算:以前一个数组为底,后一个数组以前一个数组为底,后一个数组为指数,其对应元素分别进行乘方运算得到的结果。为指数,其对应元素分别进行乘方运算得到的结果。a=4 5 6;b=1 2 3;c=2 3 ; 5 6;d=1 2 ; 3 4;e=a .bf=d .c%运行结果为:运行结果为: e= 4 25 216B= 1 8 243 4096例例: 2023-2-27Application of Matlab Language8 2、数组、矩阵的转置运算:、数组、矩阵的转置运算:把矩阵把矩阵A的行换成同序数的列而生成的矩阵,称为的行换成同序
6、数的列而生成的矩阵,称为A的转的转置矩阵。置矩阵。 在在MATLAB中,用中,用“ ”定义矩阵的转置。如果当矩阵定义矩阵的转置。如果当矩阵是一个复数矩阵时,是一个复数矩阵时,A表示它的共轭转置矩阵。表示它的共轭转置矩阵。数组转置数组转置(A.)与实数矩阵转置相同。与实数矩阵转置相同。a=1 2;a%运行结果为运行结果为:ans = 1 2例例:b=1+2i 2-i;b%运行结果为:运行结果为:ans = 1-2i 2+i 2023-2-27Application of Matlab Language9 二、矩阵求逆与线性方程组求解二、矩阵求逆与线性方程组求解 矩阵的逆 对于一个方阵A,如果存在
7、一个与其同阶的方阵B,使得: (I为单位矩阵)则称B为A的逆矩阵,当然,A也是B的逆矩阵。求方阵A的逆矩阵可调用函数inv(A)。例 求方阵A的逆矩阵,且验证。 A = 1,-1,1;5,-4,3;2,1,1; B = inv(A); A*B ans = 1.0000 0 0 -0.0000 1.0000 0 -0.0000 0 1.0000A BB AI 2023-2-27Application of Matlab Language10 二、矩阵求逆与线性方程组求解二、矩阵求逆与线性方程组求解 2023-2-27Application of Matlab Language11 4.2.3 线
8、性方程的解方程axb(a为非奇异) x=a-1 b 矩阵求逆两种解:nx=ab 采用左除运算解方程。nx=inv(a)b 采用求逆运算解方程 注意:由于方程axb中,a在变量x的左边,指令中a必须在的左边。inv表示矩阵求逆。 2023-2-27Application of Matlab Language12 二、矩阵求逆与线性方程组求解二、矩阵求逆与线性方程组求解 2023-2-27Application of Matlab Language13 例 用求逆矩阵A的方法解线性方程组命令如下: A = 1,2,3;1,4,9;1,8,27; b = 5,-2,6 x = inv(A)*b %x
9、 = Ab x = 23.0000 -14.5000 3.6667也可以运用左除运算符求解。2354928276xyzxyzxyz 2023-2-27Application of Matlab Language14 2023-2-27Application of Matlab Language15 2023-2-27Application of Matlab Language16 1. 多项式求根多项式求根p=1 2 3 4 5;roots ( p)%运算结果为:运算结果为:ans = 0.2878+1.1461i 0.2878 -1.1461i -1.2878+0.8579i -1.2878
10、 -0.8579i 例:例:求多项式求多项式 P (x)=x4+2x3+3x2+4x+5 的根。的根。求解该多项式等于求解该多项式等于0时对应方程的根。时对应方程的根。 2023-2-27Application of Matlab Language17 2. 由根求多项式由根求多项式p1= poly ( 1 5 8 )%运算结果为:运算结果为:p1=1 -14 53 -40即所求多项式为:即所求多项式为:P (x)=x3-14x2+53x-40由此可见,多项式的由此可见,多项式的poly ( )与与roots ( )函数互为逆运算。函数互为逆运算。由该多项式等于由该多项式等于0时对应方程的根求
11、其多项式的系数。时对应方程的根求其多项式的系数。例:例:已知多项式的根分别为已知多项式的根分别为1、5、8,试求对应的多项式。,试求对应的多项式。 2023-2-27Application of Matlab Language18 2023-2-27Application of Matlab Language19 3. 多项式乘法多项式乘法r=1 2 3; g=4 5 6;p= conv ( r, g)%运算结果为:运算结果为:p = 4 13 28 27 18即即p (x) = 4x4+13x3+28x2+27x+18例:例:求多项式求多项式 p (x)=(x2+2x+3)( 4x2+5x+
12、6 )的系数。的系数。p = conv ( p1, p2)p,r = deconv ( p1, p2) 2023-2-27Application of Matlab Language20 4. 多项式求值多项式求值polyval (p, x): p为多项式系数向量,为多项式系数向量,x为输入。为输入。p=1 2 3 4; x=2;y= polyval ( p, x )%运算结果为:运算结果为: y= 26例:例:求多项式求多项式 y=x3+2x2+3x+4在在x=2处的值。处的值。 2023-2-27Application of Matlab Language21 x = 0:pi/100:2
13、*pi;y = sin(x);plot(x,y) 2023-2-27Application of Matlab Language22 例例1使用直角坐标系使用直角坐标系在在0,2区间内,绘制曲线区间内,绘制曲线x = 0:pi/100:2*pi;y = 2*exp(-0.5*x).*sin(2*pi*x);plot(x,y)0.52sin(2)xyex 2023-2-27Application of Matlab Language23 例例2 使用参数方程绘制曲线使用参数方程绘制曲线绘制曲线绘制曲线t = -pi:pi/100:pi;x = t.*cos(3*t);y = t.*sin(t).
14、2;plot(x,y)2cos(3 ),sinxtttytt 2023-2-27Application of Matlab Language24 plot(x,y1,x,y2):以公共向量以公共向量x为为X轴,分别以轴,分别以y1,y2,y3,为为Y轴,在同轴,在同一幅图内绘制出多条曲线;见一幅图内绘制出多条曲线;见例例3-2。 例例3-2:x=0:pi/1000:2*pi; y1=sin(x);y2=cos(x);plot(x,y1,x, y2) 2023-2-27Application of Matlab Language25 图例是对所绘数据曲线的说明(曲线的色彩、线型和数图例是对所绘数
15、据曲线的说明(曲线的色彩、线型和数据标记,简要文字说明)。用户可调用命令据标记,简要文字说明)。用户可调用命令legend给图形给图形加图例。加图例。其调用格式为:其调用格式为:legend (图例说明图例说明1,图例说明图例说明2,Pos)其中,其中,Pos为把图例放在图形中的位置,为把图例放在图形中的位置,“0”自动把其自动把其置于最佳位置,置于最佳位置,“1”使之位于图形右上角(默认);使之位于图形右上角(默认);“2”置于图形左上角;置于图形左上角;“3”置于图形左下角,置于图形左下角,“4”置于右下角,置于右下角,-1则置于图形外部。也可用鼠标拖动改变其位置。则置于图形外部。也可用鼠
16、标拖动改变其位置。五、添加图例五、添加图例 2023-2-27Application of Matlab Language26 t=0:pi/20:2*pi; y=sin (t); y1=sin (t-pi/2); y2=sin(t-pi);plot (t, y, -. ,t,y1,-,t,y2,:)grid onlegend(y=sin(t),y=sin(t-pi/2),y=sin(t-pi)给图形加图例给图形加图例例:例: 2023-2-27Application of Matlab Language27 x=linspace(0,2*pi,60);y=sin(x);z=cos(x);subplot(2,1,1); %分成分成21区域且指定区域且指定1号为活动区号为活动区plot(x,y);title(sin(x); subplot(2,1,2);plot (x, z);title (cos (x);grid例:例: 在一个图形窗口中同时绘制正弦、余弦曲线两个子图。在一个图形窗口中同时绘制正弦、余弦曲线两个子图。 2023-2-27Application of Matlab Lan