MATLAB7.X程序设计 第2章 MATLAB 运算基础(2).ppt
《MATLAB7.X程序设计 第2章 MATLAB 运算基础(2).ppt》由会员分享,可在线阅读,更多相关《MATLAB7.X程序设计 第2章 MATLAB 运算基础(2).ppt(74页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第2 2章章 MATLAB MATLAB 运算基础运算基础(2)(2)第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.4 2.4 稀疏数组稀疏数组2.4.1 数组元素的存储数组元素的存储数组元素有完全存储方式和稀疏存储方式两数组元素有完全存储方式和稀疏存储方式两种存储方式。种存储方式。2MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.4.2稀疏数组的建立稀疏数组
2、的建立1 转换函数转换函数转换函数转换函数sparsesparse的格式为的格式为:A=sparse(S)A=sparse(S)功能:功能:将矩阵将矩阵S S转化为稀疏存储方式的矩阵转化为稀疏存储方式的矩阵A A。当矩阵当矩阵S S是稀疏存储方式时,则函数调用相是稀疏存储方式时,则函数调用相当于当于A=SA=S。3MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)sparse(m,n)sparse(m,n)功能:功能:生成一个生成一个mnmn的所有元素都是的所有元素都
3、是0 0的稀疏的稀疏矩阵。矩阵。sparse(u,v,S)sparse(u,v,S)功能:功能:建立一个建立一个max(u)max(u)行、行、max(v)max(v)列并以列并以S S为为稀疏元素的稀疏矩阵,其中稀疏元素的稀疏矩阵,其中u,v,Su,v,S是是3 3个等个等长的向量长的向量,S S是要建立的稀疏矩阵的非是要建立的稀疏矩阵的非0 0元素,元素,u(i)u(i)、v(i)v(i)分别是分别是S(i)S(i)的行和列下标。的行和列下标。4MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础
4、运算基础(2)(2)(2)(2)转换函数转换函数fullfull的格式为:的格式为:full(A)full(A)功能:功能:返回和稀疏存储矩阵返回和稀疏存储矩阵A A对应的完全存对应的完全存储方式矩阵。储方式矩阵。5MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-28演示演示sparse和和full的功能。的功能。u=1:4;v=3:6;S=0.1 0.2 0.3 0.4;spa=sparse(u,v,S)a=full(spa)6MALAB 7.X程序设计程
5、序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2生成函数生成函数稀疏矩阵的生成函数稀疏矩阵的生成函数:spconvertspconvert,spdiagsspdiags,speyespeye spconvert spconvert函数的函数的格式为格式为:B=B=spconvertspconvert(A)(A)功能功能:将矩阵:将矩阵A A所描述的一个稀疏矩阵转化为一所描述的一个稀疏矩阵转化为一个稀疏存储矩阵个稀疏存储矩阵B B。7MALAB 7.X程序设计程序设计第第第第2 2 2 2章章
6、章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-29演示演示spconvert的功能。的功能。A=1 2 3;3 4 5;6 7 8;B=spconvert(A)%生成实数数组生成实数数组A=1 2 3 4;3 4 5 6;6 7 8 9;B=spconvert(A)%生成复数数组生成复数数组8MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)spdiagsspdiags的格式为:的格式为:
7、A=spdiags(B,d,m,n)A=spdiags(B,d,m,n)功能:功能:返回带状稀疏矩阵返回带状稀疏矩阵A A。参数参数m,nm,n为原带状矩阵的行数与列数。为原带状矩阵的行数与列数。B B为为rprp阶矩阵,这里阶矩阵,这里r=min(m,n)r=min(m,n),p p为原带状矩阵所为原带状矩阵所有非零对角线的条数,矩阵有非零对角线的条数,矩阵B B的第的第i i列即为原带列即为原带状矩阵的第状矩阵的第i i条非零对角线,条非零对角线,d d为长度为为长度为p p的向的向量。量。9MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MA
8、TLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-302-30 演示演示spdiagsspdiags的功能。的功能。B=0.1 0 0;0 0.2 0;0 0 0.3;m=3;n=4;d=1 2;A=spdiags(B,d,m,n)10MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)函函数数eyeeye,randrand和和 randnrandn产产生生完完全全存存储储方方式式的的矩矩阵阵,对对应应的的稀稀疏疏矩矩阵阵函函数数是
9、是speyespeye,sprandsprand和和sprandnsprandn。11MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-312-31 分析下列语句的功能。分析下列语句的功能。spa=spa=speyespeye(4,4)(4,4)%建立建立4444的稀疏存储单位矩阵的稀疏存储单位矩阵spa(2,1)=-2 spa(2,1)=-2%增加元素增加元素spa(2,1)spa(2,1)spa(2,2)=0 spa(2,2)=0%删除元素删除元素spa(
10、2,2)spa(2,2)12MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.5 2.5 矩阵和数组的运算矩阵和数组的运算矩阵运算规则是按照矩阵作为运算要素定矩阵运算规则是按照矩阵作为运算要素定义的,义的,数组运算是按照矩阵元素作为运算要素定数组运算是按照矩阵元素作为运算要素定义的。义的。标量运算是矩阵和数组的运算的特例。标量运算是矩阵和数组的运算的特例。13MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB
11、 MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.5.1矩阵和数组的算术运算矩阵和数组的算术运算 1 矩阵和数组的加减运算矩阵和数组的加减运算l两两个个矩矩阵阵必必须须同同型型时时才才可可以以进进行行加加减减运运算算。如如有有一一个个是是标标量量,则则该该标标量量与与矩矩阵阵的的每每个个元元素素进进行加减运算。行加减运算。l数组的加减运算法则与矩阵的加减运算法则相数组的加减运算法则与矩阵的加减运算法则相同。同。14MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(
12、2)(2)(2)(2)例例2-322-32 设设 求求A2B。方法方法1 1:A=4-3 1;2 0 5;B=1 2 0;-1 0 3;A-2*B方法方法2 2:A=4-3 1;2 0 5;B=1 2 0;-1 0 3;b=uminus(2*B)%,返回返回2*B的相反数的相反数A+b15MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2矩阵和数组的乘法运算矩阵和数组的乘法运算矩阵的乘法运算符为矩阵的乘法运算符为*,定义为定义为:设设A=(A=(aijaij)ms,
13、B=()ms,B=(bijbij)sn,)sn,则则A A与与B B的乘积的乘积C CAB=(AB=(cijcij)mn)mn是是 mnmn矩阵,其中矩阵,其中cijcij(i=1,2,(i=1,2,m;j=1,2,n),m;j=1,2,n)等于等于A A的第的第i i行与行与B B的第的第j j列列对应元素的乘积之和。对应元素的乘积之和。数组的乘法运算符为数组的乘法运算符为.*.*,两个矩阵必须同型时才可以,两个矩阵必须同型时才可以进行数组乘法运算。进行数组乘法运算。运算规则为:运算规则为:矩阵矩阵A A和和B B中的对应元素相乘。中的对应元素相乘。如果参加运算的矩阵其中有一个是标量时,矩阵
14、和数如果参加运算的矩阵其中有一个是标量时,矩阵和数组的乘法运算均为标量与矩阵的每个元素进行乘法组的乘法运算均为标量与矩阵的每个元素进行乘法运算。运算。16MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-332-33 求乘积求乘积 AB AB 和和 BABA。A=1 0 3;2 1 0;B=4 1;-1 1;2 0;A*B,B*A17MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基
15、础运算基础运算基础运算基础(2)(2)(2)(2)例例2-342-34 求求(AB)AB)T T和和B BT TAAT T(T T为转置运为转置运 算)。算)。A=1-1 2;2 0 1;B=2-1 0;1 1 3;4 2 1;(A*B)B*A18MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)3矩阵和数组的除法运算矩阵和数组的除法运算矩矩阵阵除除法法运运算算的的运运算算符符为为 和和/,分分别别表表示示左左除除和和右除右除。矩阵除法的矩阵除法的定义为定义为:AB=
16、AAB=A-1-1B B A/B=ABA/B=AB-1-1其其中中A A-1-1和和B B-1-1是是矩矩阵阵A A和和B B的的逆逆,矩矩阵阵B B的的逆逆也也可可用用函数函数invinv求得。求得。19MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)除法运算除法运算的运算符为的运算符为.和和././,分别,分别数组数组为为数组的左除和右除,表示数组的相应元素数组的左除和右除,表示数组的相应元素相除。两个矩阵必须同型时才可以进行数相除。两个矩阵必须同型时才可以进行
17、数组除法运算。组除法运算。定义为:定义为:设设A=(A=(a aijij)mnmn,B=(,B=(b bijij)mnmn,则数组的右除为则数组的右除为C=(C=(c cijij)mnmn=(=(a aijij/b bijij)mnmn,数组的左除为数组的左除为C=(C=(c cijij)mnmn=(=(b bijij/a aijij)mnmn。20MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-352-35 求求解解方方程程组组A=2 2-1 1;4 3-
18、1 2;8 3-3 4;3 3-2-2;b=4 6 12 6;X=Ab%等价语句为等价语句为 X=inv(A)*b21MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.5.2矩阵和数组的乘方运算矩阵和数组的乘方运算l矩阵乘方矩阵乘方运算的运算符为运算的运算符为,运算表达式为,运算表达式为ABAB,矩阵乘方运算的含义是:矩阵乘方运算的含义是:ABAB表示方阵表示方阵A A自乘自乘B B次。次。l数数组组乘乘方方运运算算的的运运算算符符为为.,运运算算表表达达式式为为
19、A.BA.B,其中其中A A和和B B都可以是矩阵或标量。都可以是矩阵或标量。22MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)数组乘方运算有下列形式:数组乘方运算有下列形式:l当当A A为为矩矩阵阵,B B为为正正整整数数时时,则则将将a aijij自自乘乘B B次;次;l当当A A为为矩矩阵阵,B B也也为为矩矩阵阵时时,A A和和B B矩矩阵阵必必须须同型同型,则将,则将a aijij自乘自乘b bijij次。次。l当当A A为为正正整整数数,B B为为矩矩
20、阵阵时时,将将AAb bijij构构成成新新矩阵的第矩阵的第i i行第行第j j列元素。列元素。其中其中a aijij和和b bijij分别表示矩阵分别表示矩阵A A和和B B的第的第i i行行第第j j列元素。列元素。23MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.5.32.5.3矩阵和数组的数学函数矩阵和数组的数学函数 常用的数学函数有三角函数、指数函数和整常用的数学函数有三角函数、指数函数和整值函数等。值函数等。需要注意的是需要注意的是:l MATLA
21、B 6.5MATLAB 6.5以前的版本三角函数的自变量和反以前的版本三角函数的自变量和反三角函数的返回值为弧度;三角函数的返回值为弧度;l MATLAB 7.0MATLAB 7.0版本中提供了三角函数的自变量和版本中提供了三角函数的自变量和反三角函数的返回值分别为角度和弧度的两类函反三角函数的返回值分别为角度和弧度的两类函数。数。24MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例 2-362-36 求求 3030。、6060。和和 9090。的的 正正 弦弦
22、、余弦、正切和余切函数值。余弦、正切和余切函数值。x=30:30:90;sind(x),cosd(x),tand(x),cotd(x)%三角函数的自变量为角度值三角函数的自变量为角度值25MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-37 2-37 求求0.10.1,0.20.2,0.30.3,0.40.4,0.50.5,0.60.6 的反正弦、反余弦和反正切值。的反正弦、反余弦和反正切值。x=0.1:0.1:0.6;asin(x),acos(x),ata
23、n(x)%返回值为弧度返回值为弧度asind(x),acosd(x),atand(x)%返回值为角度返回值为角度26MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-382-38 求求1 1到到1010的自然对数和常用的自然对数和常用 对数。对数。x=1:10;x=1:10;log(x)log(x)%返回值为返回值为自然对数自然对数log10(x)log10(x)%返回值为返回值为常用对数常用对数如果求如果求2 2为底的对数呢?为底的对数呢?log10(x)/
24、log10(2)log10(x)/log10(2)27MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)2.6 2.6 字符串字符串2.6.1字符串的定义字符串的定义MATLABMATLAB将将字字符符串串当当作作一一个个行行向向量量,每每个个元元素素对对应应一一个个字字符符,一一个个字字符符占占两两个个字字节节,并并且且每每一一字字符符(包包括括空空格格)以以其其ASCIIASCII码码的的形形式式存放,其标识方法和数值向量相同。存放,其标识方法和数值向量相同。28
25、MALAB 7.X程序设计程序设计第第第第2 2 2 2章章章章 MATLAB MATLAB MATLAB MATLAB 运算基础运算基础运算基础运算基础(2)(2)(2)(2)例例2-392-39 建立任意的两个字符串,并查看字建立任意的两个字符串,并查看字 符串占用的字节信息。符串占用的字节信息。s1=Northeast Forest Uiversity%赋值方式建立字符串赋值方式建立字符串s1s2=Haerbin Heilongjiang%赋值方式建立字符串赋值方式建立字符串s2s2whos%查看字符串占用的字节信息查看字符串占用的字节信息29MALAB 7.X程序设计程序设计第第第第2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB7.X程序设计 第2章 MATLAB 运算基础2 MATLAB7 程序设计 运算 基础
限制150内