版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本章目标了解MATLAB的基本知识熟悉MATLAB的上机环境掌握利用MATLAB进行基本运算的方法初步具备将一般数学问题转化成对应的计算机模型并进行处理的能力掌握矩阵、向量、数组和多项式的构造和运算方法能够使用常用的几种函数进行一般的数值问题求解1本章目标了解MATLAB的基本知识1第二章 matlab数值运算2.1基本运算功能2.2基本数据类型2.3数学函数2.4 矩阵2.5向量 2.6数组 2.7多项式 2第二章 matlab数值运算2.1基本运算功能22.1 基本运算功能MATLAB的基本运算可分为三类:算术运算关系运算逻辑运算32.1 基本运算功能MATLAB的基本运算可分为三类:32
2、.1.1 算术运算42.1.1 算术运算4使用变量来进行更复杂的问题求解 a=15+20-50+3*9a = 12b=30 b = 30 c=a*bc = 360 d=a3-b*cd = -90725使用变量来进行更复杂的问题求解 a=15+20-50+3逗号或分号的区别 x=2, y=3 %逗号隔开,屏幕有回显x = 2y = 3m=2; n=3;%分号隔开,无回显m %在提示符后直接输入变量名可查看变量的值m = 26逗号或分号的区别 x=2, y=3 %逗号隔开,基本算术运算符 运 算符 号运 算符 号加+减-乘*数组相乘.*左除数组左除.右除/数组右除./幂次方数组幂次方.7基本算术运
3、算符 运 算符 号运 算符 号加+减-乘*例1-1 求解算术表达式的值 (12+2*(7-4)/33 ans = 0.66678例1-1 求解算术表达式的值8format命令 MATLAB命令含 义范 例format short短格式3.1416format short e短格式科学格式3.1416e+000format long长格式3.149format long e长格式科学格式3.1493e+000format rat有理格式355/113format hex十六进制格式400921fb54442d18format bank银行格式3.149format命令 MATLAB命令含 义范
4、例forma2.1.2 关系运算运 算符 号运 算符 号大于小于=小于等于小关系运算的结果类型为逻辑量 (0, 1) x=2; x3ans = 0 x x=2;112.1.3 逻辑运算 逻辑运算符用于将关系表达式或逻辑量连接起来,构成较复杂的逻辑表达式。逻辑表达式的值也是逻辑量。运 算符 号运 算符 号与&或|非异或xor例:对某一矩阵的逐个元素进行逻辑运算(yex21.m)122.1.3 逻辑运算 逻辑运算符用于将关系表达式或逻辑2.2 基本数据类型MATLAB数据类型数值逻辑字符串132.2 基本数据类型MATLAB数据类型132.2.1 数值类型分类方法一:双精度型 (系统默认类型)单精
5、度型带符号整数无符号整数分类方法二标量数组矩阵 142.2.1 数值类型分类方法一:14分类方法三实数复数 z1=1+2iz1 = 1.0000 + 2.0000i z2=3+4jz2 = 3.0000 + 4.0000i15分类方法三152.2.2 字符串类型字符串:包含在一对单引号中的字符集合 s=hello, MATLAB%定义字符串变量ss =hello, MATLAB162.2.2 字符串类型字符串:包含在一对单引号中的字符集合12.2.3 变量和表达式变量命名:由字母、数字和下划线组成,字母间不能有空格,而且第一个字符必须为字母;英文字母大小写是有区别的; 最大长度是有规定的不同版
6、本的系统规定不同:19个字符、31或63个字符等可调用namelengthmax函数得到系统规定长度172.2.3 变量和表达式变量命名:17MATLAB系统的特殊变量和常数特殊变量意 义 ans如果用户未定义变量名,系统用于计算结果存储的默认变量名 pi圆周率(= 3.1415926.) inf或Inf无穷大值,如1/0 eps浮点运算的相对精度2(-52)realmax最大的正浮点数,2(1024)-1realmin最小的正浮点数,2(-1022)NaN或nan不定量,如0/0或inf/inf i或j虚数单位nargin函数输入参数个数nargout函数输出参数个数lasterr存放最新的
7、错误信息lastwarn存放最新的警告信息18MATLAB系统的特殊变量和常数特殊变量意 义 a例 变量的使用clear%删除工作区中所有定义过的变量whos%查看当前工作区内变量信息,无显示表示没有定义的变量 xy=1; yx=2; %对变量赋值 xy%查看变量xy的当前数值xy = 1 whos Name Size Bytes Class xy 1x1 8 double array yx 1x1 8 double arrayGrand total is 2 elements using 16 bytes clear xy yx%删除变量xy及yx whos xy%这时变量xy已经不存在了?
8、 Undefined function or variable xy.19例 变量的使用clear%删除工作区中所有定义过的2.3 数学函数类型函 数含 义三角函数sin(x)正弦值asin(x)反正弦值cos(x)余弦值acos(x)反余弦值tan(x)正切指数函数exp(x)指数运算log(x)自然对数sqrt(x)求平方根202.3 数学函数类型函 数含 义三角函数sin(类型函 数含 义复数函数abs(x)求绝对值imag(x)取出复数的虚部real(x)取出复数的实部conj(x)复数共轭数论函数round(x)四舍五入mod(x,y)求余数lcm(x,y)整数x和y的最小公倍数gc
9、d(x,y)整数x和y的最大公约数21类型函 数含 义复数函数abs(x)求绝对值i使用函数须注意点:函数一定要出现在等式的右边函数对其自变量的个数和格式都有一定的要求函数允许嵌套 例 计算下式的结果,其中a=5.67, b=7.811a=5.67; b=7.811;exp(a+b)/log10(a+b)ans = 6.3351e+00522使用函数须注意点:函数一定要出现在等式的右边例 计算下式应用举例设三个复数a34i,b12i, ,计算x=ab/c a=3+4i; b=1+2i; c=2*exp(i*pi/6); x=a*b/cx = 0.3349 + 5.5801i23应用举例设三个复
10、数a34i,b12i, 2.4.1 矩阵的构造通过直接输入矩阵的元素构造矩阵:用中括号 把所有矩阵元素括起来同一行的不同数据元素之间用空格或逗号间隔用分号(;)指定一行结束可分成几行进行输入,用回车符代替分号数据元素可以是表达式,系统将自动计算结果242.4.1 矩阵的构造通过直接输入矩阵的元素构造矩阵:24例:输入矩阵A、B的值A=1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16B=1,sqrt(25),9,13;2,6,10,7*23+sin(pi),7,11,15;4,abs(-8),12,1625例:输入矩阵A、B的值252.4.2 矩阵下标与子矩阵提
11、取A(m, n)提取第m行,第n列元素A(:, n)提取第n列元素A(m, :)提取第m行元素A(m1:m2, n1:n2)提取第m1行到第m2行和第n1列到第n2列的所有元素A(m:end, n)提取从第m行到最末行和第n列的子块A(:)得到一个长列矢量,该矢量的元素按矩阵的列进行排列262.4.2 矩阵下标与子矩阵提取A(m, n)提取第m行例 使用下标得到矩阵元素和子块 X=1 2 3 0;5 6 0 8;9 0 11 12;0 14 15 16 X(2,3) 提取矩阵第二行第三列的元素 X(2,:) 提取矩阵第二行所有元素 X(2:3,1:3) 提取第二行到第三行和第一列到第三列的子块
12、 X(2:end,1) 提取从第二行到末行和第一列的子块 X(:) 得到一个长列矢量,该矢量的元素按X的列排列27例 使用下标得到矩阵元素和子块 X=1 2 3 0;5例: 修改矩阵A中元素的数值A=1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16A(1,1)=0A(2,2)=A(1,2)+A(2,1) A(4,4)=cos(0)28例: 修改矩阵A中元素的数值A=1 2 3 4; 5 2.4.3 矩阵的算术运算矩阵的加减运算:(加)、(减)运算规则: 相加、减的两矩阵必须有相同的行和列;两矩阵对应元素相加减。 允许参与运算的两矩阵之一是标量。标量与矩阵的所有
13、元素分别进行加减操作。矩阵乘法:*(乘)运算规则:A矩阵的列数必须等于B矩阵的行数。标量可与任何矩阵相乘。292.4.3 矩阵的算术运算矩阵的加减运算:(加)、(减)矩阵除法:/ (右除)、 (左除)X=AB是方程A*X=B的解; X=B/A是方程X*A=B的解,它们并不相等。矩阵除法30矩阵除法:/ (右除)、 (左除)矩阵除法30 a p a 自乘p次 方阵1的整数如a,p都是矩阵,ap则无意义。矩阵的乘方:(乘方) a=1,2,3;4,5,6;7,8,9; a2 ans =30 36 42 66 81 96 102 126 150当一个方阵有复数特征值或负实特征值时,非整数幂是复数阵。3
14、1 a p a 自乘p次方阵1的整对于p的其它值,计算涉及特征值和特征向量。例: b=a0.5 b = 0.4498 + 0.7623i 0.5526 + 0.2068i 0.6555 -0.3487i 1.0185 + 0.0842i 1.2515 + 0.0228i 1.4844 - 0.0385i 1.5873 - 0.5940i 1.9503 - 0.1611i 2.3134 + 0.2717i32对于p的其它值,计算涉及特征值和特征向量。32矩阵转置运算规则:如果矩阵A是实数阵,则矩阵A的转置是将第i行第j列的元素与第j行第i列的元素互换;如果矩阵A是复数阵,则A转置后的元素由A对应
15、元素的共轭复数构成。X=1 2 3;5 6 0;9 0 11; XY=2 3 0 9;5 6 0 1; YZ=3+7i 9-2i;5+2i 1;Z33矩阵转置运算规则:332.4.4 矩阵的关系运算关系运算符:(小于)、(大于)=(大于或等于)、=(等于)、=(不等于)关系运算符的运算法则: 两个矩阵的维数一致或其中一个矩阵为标量。 将两个矩阵的对应元素进行比较或将标量与矩阵中的 各个元素进行比较关系运算结果 若比较关系的结果为真,则置为1,否则置0。342.4.4 矩阵的关系运算关系运算符:342.4.5 矩阵的逻辑运算必须是两个同维矩阵或其中一个矩阵为标量才能进行 MATLAB提供了一些逻
16、辑函数逻 辑 函 数功 能all如果所有的元素都是非零值,返回1;否则,返回0。any如果有一个元素为非零值,那么返回1;否则,返回0isempty判断是否空矩阵isequal判断两矩阵是否相同isreal判断是否是实矩阵find返回一个由非零元素的下标组成的向量352.4.5 矩阵的逻辑运算必须是两个同维矩阵或其中一个矩阵为例 逐个元素的逻辑运算A=rand(2,4)B=A0.5%数组A中大于0.5的元素位置上,将数组B 赋值为逻辑真,否则赋值为逻辑假C=A A=0 1 2;any(A) B=1 0 3;2 0 1;any(B) C=1 2 3;2 0 1;all(C) isempty(A)
17、 isequal(A,B) isreal(B) find(C A=0 1 2;any(A)例 矩阵的逻辑运算32.4.6 矩阵函数函 数功 能det计算矩阵所对应的行列式的值diag抽取矩阵对角线元素eig求特征值和特征向量inv求矩阵的逆阵lu三角分解Poly求特征多项式Rank求矩阵的秩Svd奇异值分解382.4.6 矩阵函数函 数功 能det计算矩阵所对应的求矩阵的行列式的值 X=1 2 3 0; 5 6 0 8; 9 0 11 12; 0 14 15 16X = 1 2 3 0 5 6 0 8 9 0 11 12 0 14 15 16 det(X)ans = -546439求矩阵的行列
18、式的值 X=1 2 3 0; 5 6 0 求矩阵的秩 X=1, 2, 3; 2, 3 -5; 4 7 1X = 1 2 3 2 3 -5 4 7 1 rank(X)ans = 240求矩阵的秩 X=1, 2, 3; 2, 3 -5; 求逆矩阵 X=1 2 3 0; 5 6 0 8; 9 0 11 12; 0 14 15 16; Y=inv(X)Y = 0.2299 0.0908 0.0351 -0.0717 0.1940 0.0798 -0.0659 0.0095 0.1274 -0.0835 0.0322 0.0176 -0.2892 0.0084 0.0275 0.0377Y*X%矩阵与其
19、逆阵相乘结果是单位矩阵ans = 1.0000 0 0 0 0 1.0000 0 0 0 0 1.0000 0 0 0 0 1.0000 X*Y%矩阵的逆阵是唯一的ans = 1.0000 0 0 0 0 1.0000 0 0 0 0 1.0000 0 0 0 0 1.000041求逆矩阵 X=1 2 3 0; 5 6 0 8; 9 求特征值和特征向量 X=-2 1 1;0 2 0;-4 1 3; V D=eig(X)V= -0.7071 -0.2425 0.3015 0 0 0.9045 -0.7071 -0.9701 0.3015D= -1 0 0 0 2 0 0 0 242求特征值和特征
20、向量 X=-2 1 1;0 2 0;-4矩阵分解 A=2 -1 3;1 2 1;2 4 3; L, U=lu(A) %三角分解 L = 1.0000 0 0 0.5000 0.5000 1.0000 1.0000 1.0000 0U = 2.0000 -1.0000 3.0000 0 5.0000 0 0 0 -0.500043矩阵分解 A=2 -1 3;1 2 1;2 4 3;提取矩阵的对角线元素设A为mn矩阵diag(A)用于提取矩阵A主对角线元素,产生一个具有min(m,n)个元素的列向量。diag(A,k) 提取第k条对角线的元素。求对角矩阵 44提取矩阵的对角线元素求对角矩阵 44构
21、造对角矩阵设V为具有m个元素的向量diag(V)产生一个mm对角矩阵,其主对角线元素即为向量V的元素。diag(V,k)产生一个nn(n=m+k)对角阵,其第k条对角线的元素即为向量V的元素。45构造对角矩阵45A=1 2 3;4 5 6;diag(A)A;diag(A)a=1 2 3;4 5 6;7 8 9diag(a,2)diag(a,1)diag(a,0)diag(a,-1)V=1:2:8diag(V)diag(V,2)例 求对角矩阵46A=1 2 3;4 5 6;diag(A)例 求对角矩阵2.4.7.矩阵的一些特殊操作矩阵的变维 a=1:12;b=reshape(a,3,4) c=z
22、eros(3,4); c(:)=a(:)矩阵的变向 rot90:旋转(逆时针); fliplr:上翻(沿垂直轴); flipud:下翻(沿水平轴)矩阵的抽取 diag:抽取主对角线元素; tril: 抽取主下三角矩阵; triu:抽取主上三角矩阵;472.4.7.矩阵的一些特殊操作矩阵的变维47例: a=1,2,3;4,5,6;7,8,9 diag(a) tril (a) triu (a)例:a=1 2 3 4 5;6 7 8 9 10;11 12 13 14 15; 16 17 18 19 20;21 22 23 24 25 b=3 0 16;17 -6 9;0 23 -4;9 7 0;4
23、13 11求 (1)c=a*b; (2)将矩阵c右下角3x2子矩阵赋给d. 48例: 48矩阵的扩展例: a=1,2,3;4,5,6;7,8,9; b=a;1 2 3 %增加一行 c=a,1 2 3 %增加一列a = 1 2 3 4 5 6 7 8 9b = 1 2 3 4 5 6 7 8 9 1 2 3c = 1 2 3 1 4 5 6 2 7 8 9 349矩阵的扩展a =b =c =492.5 向量向量是矢量运算的基础行向量列向量 502.5 向量向量是矢量运算的基础502.5.1 向量的构造逐个输入a=1 3 9 10 15 16%采用空格和逗号分隔构成行向量b=1; 3; 9; 10
24、; 15; 16 %采用分号隔开构成列向量利用冒号表达式“:”生成向量x=1:2:9%初值=1,终值=9,步长=2z=1:5%初值=1,终值=5,默认步长=1利用函数生成向量 x=linspace(1, 9, 5)%初值=1,终值=9,元素数目=5512.5.1 向量的构造逐个输入512.5.2 向量的运算点积:dot函数叉积:cross函数 a = 1 2 3; b = 4 5 6; c = dot(a, b) d = cross(a, b) c =32d = -3 6 -3 522.5.2 向量的运算点积:dot函数522.6 数组数组运算方式是一种元素对元素的运算(不按照线性代数的规则)
25、 ;除了加、减法与矩阵相同以外,乘、除、幂的数组运算符都是通过在标准的运算符前面加一个圆点来生成。532.6 数组数组运算方式是一种元素对元素的运算(不按照线性代数组运算 x=1 2 3; 4 5 6; 7 8 9; y=9 8 7; 6 5 4; 3 2 1; x+y%数组和矩阵的加法规则相同ans = 10 10 10 10 10 10 10 10 10 x.*y%数组乘法:对应元素相乘ans = 9 16 21 24 25 24 21 16 9 x*y%矩阵乘法:按照线性代数理论进行ans = 30 24 18 84 69 54 138 114 9054数组运算 x=1 2 3; 4 5
26、 6; 7 8 9 matlab语言把多项式表达成一个行向量,该向量中的元素是按多项式降幂排列的。如:f(x)= an xn+an-1xn-1+ a1x+a0 ; 用行向量表示: p=an an-1 a1 a0 。多项式相关函数:poly (a)产生特征多项式系数向量a为矩阵;a为向量 a=1 2 3;4 5 6;7 8 0; p=poly(a)p =1.00 -6.00 -72.00 -27.002.7 多项式55 matlab语言把多项式表达成一个行向量,该向量中的 p1=poly2str(p,x) 显示数学多项式的形式:p1 =x3 - 6 x2 - 72 x 27 a=1 2 3;4
27、5 6;7 8 0; p=poly(a)p = 1.00 -6.00 -72.00 -27.00 r=roots(p) 求多项式的根r = 12.12 -5.73 显然 r是矩阵a的特征值 -0.39注意:matlab规定多项式系数向量用行向量表示,一组根用列向量表示。56 p1=poly2str(p,x) 显示数学多项conv多项式乘运算例:a(x)=x2+2x+3; b(x)=4x2+5x+6;求:c = (x2+2x+3)(4x2+5x+6) a=1 2 3;b=4 5 6; c=conv(a,b) c = 4.00 13.00 28.00 27.00 18.00 p=poly2str(
28、c,x)p = 4 x4 + 13 x3 + 28 x2 + 27 x + 1857conv多项式乘运算例:a(x)=x2+2x+3; b(x)deconv多项式除运算 a=1 2 3; c = 4.00 13.00 28.00 27.00 18.00 d=deconv(c,a)d =4.00 5.00 6.00d,r=deconv(c,a)余数c除a后的商58deconv多项式除运算 a=1 2 3; d,rpolyder多项式微分命令格式:polyder(p): 求p的微分polyder(a,b): 求多项式a,b乘积的微分p,q=polyder(a,b): 求多项式a,b商的微分例: a
29、=1 2 3 4 5; poly2str(a,x)ans = x4 + 2 x3 + 3 x2 + 4 x + 5 b=polyder(a)b = 4 6 6 4 poly2str(b,x)ans =4 x3 + 6 x2 + 6 x + 459polyder多项式微分命令格式:59Polyval、polyvalm多项式求值例 多项式求值s=3 5 -4 2a=2.7polyval(s,a)60Polyval、polyvalm多项式求值例 多项式求值60矩阵的多项式求值例 矩阵的多项式求值s=3 5 -4 2A=randn(4);polyvalm(s,A)3*A*A*A+5*A*A-4*A+2*eye(size(A)B=rand
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度城市轨道交通设备维护与检修合同范本3篇
- 二零二五年度房产证办理专业委托代理合同
- 2025年度私人购车二手车寄售及经纪服务合同3篇
- 2025年度环保型爬架租赁及维护合同3篇
- 二零二五年度企业孵化器项目引进与孵化合同3篇
- 2025版网络数据保管员聘用合同标准版2篇
- 二零二五年度新型纱窗材料研发与应用合同2篇
- 二零二五年度城市轨道交通招标合同管理规范6篇
- 课程设计打印图纸模板
- 二零二五年度合同担保书撰写指南与合同担保合同审查3篇
- 2024年露天煤矿地质勘查服务协议版
- 部编版四年级上册道德与法治期末测试卷
- DB11T 1805-2020 实验动物 病理学诊断规范
- 人教版小学六年级下册音乐教案全册
- 2024年资格考试-WSET二级认证考试近5年真题附答案
- 中国移动-AI+智慧城市安全解决方案白皮书2024
- 个体工商营业执照变更委托书
- 2024版【人教精通版】小学英语六年级下册全册教案
- 人教版历史2024年第二学期期末考试七年级历史试卷(含答案)
- 预算法及实施条例测试题(含答案)
- 2024届新高考数学大题训练:数列(30题)(解析版)
评论
0/150
提交评论