MATLAB矩阵及其运算.ppt
《MATLAB矩阵及其运算.ppt》由会员分享,可在线阅读,更多相关《MATLAB矩阵及其运算.ppt(44页珍藏版)》请在三一办公上搜索。
1、第二章 数值计算功能,2.1 Matlab的数据类型2.2 向量及其运算2.3 矩阵及其运算2.4 数组及其运算2.5 多项式运算,2.1 Matlab的数据类型,1、变量 在MATLAB中,变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符。在MATLAB中,变量名区分字母的大小写。2、常量MATLAB有一些预定义的常量:,请练习在命令窗口打入Pi、1/0 0/0,在Matlab中,定义变量时应避免与常量名相同,以免改变这些常量的值。如果已改变了某个常量的值,可以通过“Clear+常量名”命令恢复该变量的初始设定值。,例如:pi100 pi=100 clear pipi,3
2、、数字变量,在MATLAB下进行基本数学运算,只需将运算式直接打入提示号()之后,并按入Enter键即可。MATLAB会将运算结果直接存入一个变量ans,代表MATLAB运算后的答案(Answer),并显示其数值于屏幕上。258*369 ans=95202也可输入 x=258*369 x=95202 计算值赋给了变量x,1、MATLAB语句的一般形式:变量=表达式例如:x=100;y=10*x;z=x2;w=sqrt(z)计算优先级,和sqrt的优先级最高,*、/次之,+、-的优先级最低。如 1+2*34 ans=1632、数字的输入输出格式在MATLAB中数值有多种显示形式,在默认情况下,若
3、数据为整数,则以整型表示;若为实数,则保留小数点后4位的浮点型表示。,输入输出格式format命令来控制:FORMAT SHORT 5位 FORMAT LONG 15位 FORMAT RAT 有理数表达具体可用 help format 查看MATLAB将所有变量均存成double的形式,不需要进行说明。以sqrt(2)为例来具体展示各种不同各式对显示的影响。format short,sqrt(2)ans=1.4142 format rational,sqrt(2)ans=1393/985,MATLAB基本数学函数(ELFUN),三角函数 sin 正弦函数 sinh 双曲正弦函数 asin 反正
4、弦函数 asinh 反双曲正弦函数 cos 余弦函数 cosh 双曲余弦函数 acos 反余弦函数 acosh 反双曲余弦函数 tan 正切函数 tanh 双曲正切函数 atan 反正切函数 atan2 四像限反正切函数 atanh 反双曲正切函数 sec 正割函数 sech 双曲正割函数 asec 反正割函数 asech 反双曲正割函数 csc 余割函数 csch 双曲余割函数 acsc 反余割函数 acsch 反双曲余割函数 cot 余切函数 coth 双曲余切函数 acot 反余切函数 acoth 反双曲余切函数,2、指数函数 exp 指数函数 log 自然对数函数 logl0 常用(以
5、10为底)对数函数 log2 以2为底对数函数 sqrt 平方根函数3、复数函数 abs 模函数 angle 相角函数 conj 复共轭函数 imag 复矩阵虚部 real 复矩阵实部4、舍入函数和剩余函数 fix 朝零方向舍入 floor 朝负方向舍入 ceil 朝正方向舍入 round 四舍五入函数 mod(带符号)求余函数 sign 符号函数,函数使用说明:(1)三角函数以弧度为单位计算。(2)abs函数可以求实数的绝对值、复数的模、字符串的ASCII码值。(3)用于取整的函数有fix、floor、ceil、round,要注意它们的区别。输入命令:x=1+2i;y=3-sqrt(17);
6、z=(cos(abs(x+y)-sin(78*pi/180)/(x+abs(y),三、字符串1、关于字符串的约定在matlab中所有的字符串都用单引号设定后输入或赋值例如.S=very goodSize 命令用来查看字符数组s的维数s=matlab;size(s)ans=1 6 s=matlab;a=size(s);a(2)ans=6,2.字符数组的生成函数char可以用来生成字符数组例如.S3char(v,e,r,y);显示行向量,若s3,显示列向量;3、字符串和数组之间的转换(1)字符串转换为数值代码,用double例如:double(s3)(2)字符数组转换为字符串,用cellstr s
7、3=char(v,e,r,y);cellstr(s3)ans=very字符串和数字间的转换 num2str 数字转换为字符串 int2str 整数转换为字符串 mat2str 矩阵转换为字符串 str2num 转换字符串为数字 a=1:5;b=num2str(a),练习1.计算:当x分别等于x=5,y=6 时,(提示:在matlab中用表示次方运算是23,还要注意小括号的运用)2.计算:(提示:在matlab中三角函数都是弧度制,)3.用char法创建字符数组,并把该数组进行字符串和数字间的转换操作。4应用基本数学函数构造一些函数,并求一些函数值。,四、向量及其运算,1、向量的生成(1)直接输
8、入向量 向量元素需要用“”括起来,元素之间可以用空格、逗号分隔生成行向量或分号分隔,生成列向量。(2)利用冒号表达式生成向量基本形式为:x=x0:step:xn 可以省略Xn是尾元素数值限,而非尾元素值,当xn-x0恰为step值的整数倍时,Xn是尾元素值。如:a=12:3:35a=12 15 18 21 24 27 30 33Step可以为负,C=12:-2:5 b=12 10 8 6 Step=1时可省略。c=1:6,例如:计算的正弦,余弦值 x=0:15:105x=0 15 30 45 60 75 90 105 y=sin(x/180*pi)y=0 0.2588 0.5000 0.707
9、1 0.8660 0.9659 1.0000 0.9659 z=cos(x/180*pi)z=1.0000 0.9659 0.8660 0.7071 0.5000 0.2588 0.0000-0.2588(3)线性等分向量的生成调用格式:y=linspace(x1,x2)生成100维的行向量,使得y(1)=x1,y(100)=x2;y=linspace(x1,x2,n)生成n维的行向量,使得y(1)=x1,y(n)=x2;,a=linspace(1,100,6);aa=1.0000 20.8000 40.6000 60.4000 80.2000 100.00002、向量的基本运算:加减与数乘
10、a-1ans=0 19.8000 39.6000 59.4000 79.2000 99.0000a*2ans=2.0000 41.6000 81.2000 120.8000 160.4000 200.0000 3、点积、叉积及混合积的实现(1)点积dot(a,b)返回向量a,b的数量积。a和b必须同维。例:计算向量a=(1,2,3)和b=(3,4,5)的点积,a=1 2 3;b=3,4,5;dot(a,b)ans=26或 sum(a.*b)dot(a,b,dim)返回向量a,b在维数为dim的点积 dot(a,b,1)ans=3 8 15(2)叉积:C=cross(a,b)例 计算垂直于向量a
11、=(1,2,3)和b=(3,4,5)的向量 a=1 2 3;b=3,4,5;c=cross(a,b)c=-2 4-2,(3)混合积计算上面向量a,b,c的混合积 dot(a,cross(b,c)ans=24三、矩阵及其运算1、矩阵的生成(1)用赋值语句定义:多用于小矩阵的输入,以 为标识,同行元素以“,”或空格分开,行与行之间用“;”或回车符分隔。矩阵的元素可以是数字、字符串或表达式。表达式中不能包含没有定义的变量。a=1,2,3,4,5;6,7,8,9,10 a=1 2 3 4 5 6 7 8 9 10,(2)创建M文件输入大矩阵 M文件是一种可以在MATLAB环境下运行的文本文件,它可分为
12、命令式文件和函数式文件两种。这里用到命令式文件,用它的最简单的形式来创建大型矩阵。(1)启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵:%example.mexm=4 5 6 7 8 9 5,6 4 3,2 4 1 3 6 8 9 5 7,8,3,5,6,5(2)把输入的内容以纯文本方式存盘(设文件名为example.m)。(3)在MATLAB命令窗口中输入example.m,即运行该M文件,就会自动建立一个名为example的矩阵,可供以后使用。,(3)扩充、修改矩阵 先用赋值语句定义一个数组,再用数组编辑器Array Editor进行修改:b=1;再在Workspace 中选择b
13、,取右键的Open Selection,可以修改维数,并输入元素的值。bb=1 2 3 4 5 6 7 8练习(1)请创建一个2*3的矩阵,然后利用编辑器将其扩充为4*5矩阵。(2)请用赋值语句建立一个矩阵(3)利用冒号表达式生成向量的方式计算函数 在x0,1,2,3,4,5,6,7,8各点的函数值。,2、矩阵的运算,例 矩阵相乘 a=2 1-3-1;3 1 0 7;-1 2 4-2a=2 1-3-1 3 1 0 7-1 2 4-2 b=a%矩阵b是矩阵a的转置矩阵b=2 3-1 1 1 2-3 0 4-1 7-2 a*aans=14 3-10 21 3 6 5 2-10 5 25-5 21
14、2-5 54 a*aans=15 0-10 0 59-15-10-15 25,练习:1.自己随意构造符合运算要求的矩阵进行加减乘的运算;2.A=1,2,3,计算A与A的积,2.矩阵与常数的运算 矩阵与常数间的运算即为矩阵的每一个元素与常数的运算。需注意的是当做除法运算时,常数只能做除数。例 A=2,3,4;5,6,7 A=2 3 4 5 6 7 C1=A*2 C1=4 6 8 10 12 143.矩阵的逆运算例:inv(A)求矩阵A的逆矩阵。a=2 1-3-1;3 1 0 7;-1 2 4-2;1 0-1 5;inv(a)inv(a)*a,当矩阵是长方阵时,无法求得矩阵的逆,此时可以用pinv
15、(A)求矩阵A的伪逆,例:a=1,2;3,4;5,6a=1 2 3 4 5 6 b=pinv(a)b=-1.3333-0.3333 0.6667 1.0833 0.3333-0.4167 b*a%是2*2的单位阵ans=1.0000 0.0000 0 1.0000 a*b%是3*3的矩阵,非单位阵ans=0.8333 0.3333-0.1667 0.3333 0.3333 0.3333-0.1667 0.3333 0.8333,4.矩阵的除法-左除和右除/AB表示A左除B,相当于是inv(A)*B;A/B表示A右除B,相当于是A*inv(B)例 a=1,2;3,4;5,6a=1 2 3 4 5
16、 6 b=5,6;7,8;9,10b=5 6 7 8 9 10 c=abC=-3.0000-4.0000 4.0000 5.0000 d=a/bd=2.0000 0-1.0000 1.5000 0-0.5000 1.0000 0 0,e=bae=5.0000 4.0000-4.0000-3.0000 f=b/af=0.0000 0 1.0000-0.5000 0 1.5000-1.0000 0 2.0000说明:可以用矩阵求逆和矩阵除法求解线性方程组对于线性方程组Ax=b,我们有两种解法:利用逆矩阵求解:x=inv(A)*b利用矩阵的左除求解:x=Ab,5.矩阵的行列式运算行列式函数det(A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 矩阵 及其 运算
链接地址:https://www.31ppt.com/p-6512029.html