第2章-MATLAB的基本语法课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第2章-MATLAB的基本语法课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 基本 语法 课件
- 资源描述:
-
1、第2章 MATLAB数据 2.1 MATLAB数据的特点 2.2 变量和赋值 2.3 MATLAB矩阵 2.4 MATLAB运算 2.5 字符串 2.6 结构和单元2.1 MATLAB数据的特点1)矩阵是MATLAB最基本、最重要的数据对象。单个数据(标量)可以看成是矩阵的特例。2)MATLAB数据类型-只有一种双精度型双精度型v 数值数据:双精度型双精度型(64)、单精度数(32)、带符号整数和无符号整数。v 字符数据(8)。v 结构(Structure)和单元(Cell)。v 多维矩阵和稀疏矩阵(Sparse)。2.2 变量和赋值2.2.1 变量的命名v在MATLAB中,变量名是以字母开头
2、,后接字母、数字或下划线的字符序列,最多19个字符。v在MATLAB中,变量名区分字母的大小写。MATLAB提供的标准函数名以及命令名必须用小写字母。2.2.2 赋值语句 赋值就是把数赋予代表常量或变量的标识符。赋值就是把数赋予代表常量或变量的标识符。MATLAB中的变量或常量都代表矩阵。中的变量或常量都代表矩阵。MATLAB赋值语句有两种格式:(1)变量=表达式(或数)(2)表达式一般地,运算结果在命令窗口中显示出来。如一般地,运算结果在命令窗口中显示出来。如果在语句的最后加分号,那么,果在语句的最后加分号,那么,MATLAB仅仅仅执行赋值操作,不再显示运算的结果。仅执行赋值操作,不再显示运
3、算的结果。在在MATLAB语句后面可以加上注释,注释以语句后面可以加上注释,注释以%开头,后面是注释的内容。开头,后面是注释的内容。矩阵的值放在矩阵的值放在“”中,同一行元素之间以中,同一行元素之间以“,”或或空格空格分开;分开;句尾用句尾用“,”或或回车回车,此时显示,此时显示结果;若不希望显示结果以结果;若不希望显示结果以“;”号结尾再回车。号结尾再回车。a=1 2 3;4 5 6;7 8 9a=1 2 3 4 5 6 7 8 9x=-1.3 sqrt(3)(1+2+3)/5*4x=-1.3000 1.7321 4.8000v 变量的元素用圆括号变量的元素用圆括号“()”中的数字中的数字(
4、下标)表示。一维矩阵(数组)中的(下标)表示。一维矩阵(数组)中的元素用一个下标表示;二维矩阵用两个元素用一个下标表示;二维矩阵用两个下标表示,以逗号分开下标表示,以逗号分开a=1 2 3 4 5 6 7 8 9a(2,3)ans=6x(2)ans=1.7321x=-1.3 sqrt(3)(1+2+3)/5*4v 如果赋值元素的下标超出原来矩阵的如果赋值元素的下标超出原来矩阵的大小,矩阵的行列会自动扩展大小,矩阵的行列会自动扩展x(5)=abs(x(1)x=Columns 1 through 5 -1.3000 1.7321 4.8000 0 1.3000 a(4,3)=6.5a=1.0000
5、 2.0000 3.0000 4.0000 5.0000 6.0000 7.0000 8.0000 9.0000 0 0 6.5000a(5,:)=5,4 3a=1.0000 2.0000 3.0000 4.0000 5.0000 6.0000 7.0000 8.0000 9.0000 0 0 6.5000 5.0000 4.0000 3.0000给给a的第五行全的第五行全行赋值,用行赋值,用:号号v 把把a的第的第2行和第行和第4行及第行及第1列和第列和第3列交列交点上的元素提出,构成一个新矩阵点上的元素提出,构成一个新矩阵ba=1.0000 2.0000 3.0000 4.0000 5.0
6、000 6.0000 7.0000 8.0000 9.0000 0 0 6.5000 5.0000 4.0000 3.0000b=a(2 4,1 3)b=4.0000 6.0000 0 6.5000v 要抽去要抽去a中的第中的第2行,第行,第4行,第行,第5行,可用空行,可用空矩阵矩阵 的概念的概念v 空矩阵空矩阵是指没有元素的矩阵,元素都消失掉是指没有元素的矩阵,元素都消失掉 零矩阵零矩阵元素是存在的,只是值为零元素是存在的,只是值为零a(2,4,5,:)=a=1 2 3 7 8 9a=1.0000 2.0000 3.0000 4.0000 5.0000 6.0000 7.0000 8.00
7、00 9.0000 0 0 6.5000 5.0000 4.0000 3.0000复数 实数是复数的特例,复数的虚数部分实数是复数的特例,复数的虚数部分用用i或或j表示表示 c=3+5.2i c=3.0000+5.2000i复数的赋值方法两种复数的赋值方法两种将矩阵元素逐个赋予复数将矩阵元素逐个赋予复数z=1+2i,3+4i;5+6i,7+8iz=1.0000+2.0000i 3.0000+4.0000i 5.0000+6.0000i 7.0000+8.0000i将矩阵的实部和虚部分别赋值将矩阵的实部和虚部分别赋值z=1,3;5,7+2,4;6,8*iz=1.0000+2.0000i 3.00
8、00+4.0000i 5.0000+6.0000i 7.0000+8.0000i如果在前面其它程序中曾给如果在前面其它程序中曾给i,j赋过值,则赋过值,则i,j此时已不是虚数符号。此时应键入此时已不是虚数符号。此时应键入 clear i,j 把曾赋值的把曾赋值的i,j清除掉,恢复为虚数标识符清除掉,恢复为虚数标识符MATLAB中所有的运算符和函数对复数中所有的运算符和函数对复数有效有效f=sqrt(1+2i)f=1.2720+0.7862i f*fans=1.0000+2.0000i变量检查v 在调试程序时,要检查工作空间中的变量及其阶数 变量检查用who命令whoYour variables
9、 are:a ans b c f x z 详细特征用详细特征用whos命令命令whos Name Size Bytes Class a 2x3 48 double array ans 1x1 16 double array(complex)b 2x2 32 double array c 1x1 16 double array(complex)f 1x1 16 double array(complex)x 1x5 40 double array z 2x2 64 double array(complex)Grand total is 22 elements using 232 bytes每个实元
10、素占8个字节复元素占16个字节 介绍介绍Inf(无穷大无穷大infinite)和和NaN(非数(非数not a number)Inf (1/0)1/0Warning:Divide by zero.ans=Inf NaN(0/0,0*Inf,Inf/Inf)Inf/Infans=NaN基本赋值矩阵ans预设的计算结果的变量名预设的计算结果的变量名pi内建的内建的值值Inf值,无限大值,无限大()NaN无法定义一个数目无法定义一个数目()i 或或 j 虚数单位虚数单位i=j=-1Nargin 函数输入参数个数函数输入参数个数nargout函数输出参数个数函数输出参数个数realmax最大的正实数最
11、大的正实数realmin最小的正实数最小的正实数flops浮点运算次数浮点运算次数epsMATLAB定义的正的极小值定义的正的极小值=2.2204e-16名称名称含义含义名称名称含义含义zeros全零矩阵全零矩阵(mXn阶阶)logspace对数均分向量对数均分向量(1Xn阶数组阶数组)ones全么矩阵全么矩阵(mXn阶阶)freqspace频率特性的频率区间频率特性的频率区间rand随机数矩阵随机数矩阵(mXn阶阶)meshgrid画三阶曲面时的画三阶曲面时的X,Y网络网络randn正态随机数矩阵正态随机数矩阵(mXn阶阶):将元素按列取出排成一列将元素按列取出排成一列eye(n)单位矩阵单
12、位矩阵(方阵方阵)prod总乘积总乘积linespace均分向量均分向量(1Xn阶数组阶数组)基本矩阵基本矩阵 矩阵结构形式提取和变换矩阵结构形式提取和变换名称名称含义含义名称名称含义含义fiplr矩阵左右翻转矩阵左右翻转diag产生或提取对角阵产生或提取对角阵fipud矩阵上下翻转矩阵上下翻转tril产生下三角产生下三角fipdim矩阵特定维翻转矩阵特定维翻转triu产生上三角产生上三角Rot90矩阵反时针矩阵反时针90翻转翻转 特殊矩阵特殊矩阵companCompanion矩矩阵阵magic魔方矩阵魔方矩阵galleryHigham矩阵矩阵pascalPascal矩阵矩阵handmardH
13、andmard矩矩阵阵rosser经典的对称特经典的对称特征值测试矩阵征值测试矩阵hankelHankel矩阵矩阵toeplizeToeplize矩阵矩阵hilbHilbert矩阵矩阵vanderVandermonde矩阵矩阵invhilbHilbert逆矩逆矩阵阵wilkinsonWilkinsons特征值测试矩特征值测试矩阵阵 例例2.1 2.1 计算表达式的值,并将结果赋给计算表达式的值,并将结果赋给变量变量x x,然后显示出结果。,然后显示出结果。在MATLAB命令窗口输入命令:x=(5+cos(47*pi/180)/(1+sqrt(7)-2*i)%计算表达式的值x=1.1980+0.
14、6572i 2.2.3 数据的输出格式 MATLAB用十进制数表示一个常数,具体可采用日常记数法和科学记数法两种表示方法。数据输出时用户可以用format命令设置或改变数据输出格式。format命令的格式为:format 格式符 注意,format命令只影响数据输出格式,而不影响数据的计算和存储。2.2.4 预定义变量 在MATLAB工作空间中,还驻留几个由系统本身定义的变量。它们有特定的含义,在使用时,应尽量避免对这些变量重新赋值。2.2.5 内存变量的管理 1.内存变量的显示与删除 who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单。clear命令用于删除MAT
15、LAB工作空间中的变量。注意,预定义变量不能被删除。2.工作空间浏览器 (1)工作空间浏览器的启动 (2)工作空间浏览器的操作 3.内存变量文件v利用MAT文件(.mat)可以把当前MATLAB工作空间中的一些有用变量长久地保留下来。vMAT文件的生成和装入由save和load命令来完成。常用格式为:save 文件名 变量名表 -append-ascii load 文件名 变量名表 -ascii2.3 MATLAB矩阵 2.3.1 矩阵的建立 1.直接输入法 将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔。例如 A=1 2
16、3;4 5 6;7 8 9A=1 2 3 4 5 6 7 8 9 2.利用M文件建立矩阵 对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。例2.2 利用M文件建立MYMAT矩阵。(1)启动有关编辑程序或MATLAB文本编辑器,并输入待建矩阵.(2)把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。(3)运行该M文件,就会自动建立一个名为MYMAT的矩阵,可供以后使用。3.利用MATLAB函数建立矩阵 几个产生特殊矩阵的函数:zeros、ones、eye、rand、randn。这几个函数的调用格式相似,下面以产生零矩阵的zeros函数为例进行说明。其调用格式是:zeros(
17、m)产生mm零矩阵 zeros(m,n)产生mn零矩阵。zeros(size(A)产生与矩阵A同样大小的零矩阵 相关的函数有:length(A)给出行数和列数中的较大者,即length(A)=max(size(A);ndims(A)给出A的维数。例例2.3 2.3 分别建立分别建立3 33 3、3 32 2和与矩阵和与矩阵A A同样大小同样大小的零矩阵。的零矩阵。(1)建立一个33零矩阵:zeros(3)(2)建立一个32零矩阵:zeros(3,2)(3)建立与矩阵A同样大小零矩阵:zeros(size(A)此外,常用的函数还有reshape(A,m,n),它在矩阵总元素保持不变的前提下,将矩
18、阵A重新排成mn的二维矩阵。4.建立大矩阵 大矩阵可由方括号中的小矩阵建立起来。例如 A=1 2 3;4 5 6;7 8 9;C=A,eye(size(A);ones(size(A),A C=1 2 3 1 0 0 4 5 6 0 1 0 7 8 9 0 0 1 1 1 1 1 2 3 1 1 1 4 5 6 1 1 1 7 8 9 2.3.2 冒号表达式 冒号表达式的一般格式:e1:e2:e3 还可以用linspace函数产生行向量:linspace(a,b,n)linspace(a,b,n)与a:(b-a)/(n-1):b等价。2.3.3 矩阵的拆分1.矩阵元素 MATLAB允许用户对一个
19、矩阵的单个元素进行赋值和操作。例如 A(3,2)=200 A=1 2 3 4 5 6 7 200 9 也可以采用矩阵元素的序号来引用矩阵元素。矩阵元素按列编号,先第一列,再第二列,依次类推。以mn矩阵A为例,矩阵元素A(i,j)的序号为(j-1)*m+i。其相互转换关系也可利用sub2ind和ind2sub函数求得。2.矩阵拆分 (1)利用冒号表达式获得子矩阵 A(:,j)表示取A矩阵的第j列全部元素;A(i,:)表示A矩阵第i行的全部元素;A(i,j)表示取A矩阵第i行、第j列的元素。A(i:i+m,:)表示取A矩阵第ii+m行的全部元素;A(:,k:k+m)表示取A矩阵第kk+m列的全部元
20、素,A(i:i+m,k:k+m)表示取A矩阵第ii+m行内,并在第kk+m列中的所有元素。此外,还可利用一般向量和end运算符等来表示矩阵下标,从而获得子矩阵。end表示某一维的末尾元素下标。(2)利用空矩阵删除矩阵的元素 在MATLAB中,定义为空矩阵。给变量X赋空矩阵的语句为X=。注意,X=与clear X不同,clear是将X从工作空间中删除,而空矩阵则存在于工作空间,只是维数为0。将某些元素从矩阵中删除,采用将其置为空矩阵的方法就是一种有效的方法。2.3.4 多维矩阵以三维矩阵为例,常用的方法有4种:(1)对二维矩阵进行扩充得到三维矩阵。(2)若干个同样大小的二维矩阵进行组合得到三维矩
21、阵。(3)除产生单位矩阵的eye函数外,前面介绍的建立矩阵的函数都可以延伸到三维矩阵。(4)用cat函数构建多维矩阵。一般调用格式是:cat(n,A1,A2,An)cat函数把大小相同的若干矩阵,沿第n维方向串接成高维矩阵。当n=1和2时,沿行和列的方向串接,结果是二维矩阵。当n=3时,沿页的方向串接,结果是三维矩阵。2.4 MATLAB运算 2.4.1 2.4.1算术运算算术运算 1.基本算术运算基本算术运算 MATLAB的基本算术运算有:(加加)、(减减)、*(乘乘)、/(/(右除右除)、(左除左除)、(乘方乘方)。注意:运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。2.2.点
22、运算点运算 点运算符有.*、././、.和和.。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。3 3MATLABMATLAB常用数学函数常用数学函数经经 典典 的的 算算 术术 运运 算算 符符 运运 算算 符符MATLAB表达表达式式加加+a+b减减-a-b乘乘*a*b 除除/或或 a/b或或ab 幂幂ab 2.4.2 2.4.2 关系运算关系运算 MATLAB提供了6种关系运算符:(小于)、(大于)、=(大于或等于)、=(等于)、=(不等于)。关系运算符的运算法则。指令指令含义含义小于小于大于大于=大于等于大于等于=等于等于=不等于不等于关系运算关系运算指令指令含
23、义含义&逻辑逻辑 and|逻辑逻辑 or逻辑逻辑 not逻辑运算逻辑运算MATLAB常用数学函数常用数学函数名称名称含义含义名称名称含义含义名称名称含义含义sin正弦正弦csc余割余割atanh反双曲正切反双曲正切cos余弦余弦asec反正割反正割acoth反双曲余切反双曲余切tan正切正切acsc反余割反余割sech双曲正割双曲正割cot余切余切sinh双曲正弦双曲正弦csch双曲余割双曲余割asin反正弦反正弦cosh双曲余弦双曲余弦asech反双曲正割反双曲正割acos反余弦反余弦tanh双曲正切双曲正切acsch反双曲余割反双曲余割atan反正切反正切coth双曲余切双曲余切atan2
24、四象限反正切四象限反正切acot反余切反余切asinh反双曲正弦反双曲正弦 sec正割正割acosh反双曲余弦反双曲余弦 l 三角函数和双曲函数指数函数指数函数名称名称含义含义名称名称含义含义名称名称含义含义expE为底的指数为底的指数log1010为底的对数为底的对数pow22的幂的幂log自然对数自然对数log22为底的对数为底的对数sqrt平方根平方根 复数函数复数函数名称名称含义含义名称名称含义含义名称名称含义含义abs绝对值绝对值conj复数共轭复数共轭real复数实部复数实部angle相角相角imag复数虚部复数虚部 名称名称含义含义名称名称含义含义ceil向向+取整取整rem求余
25、数求余数fix向向0取整取整round向靠近整数取整向靠近整数取整floor向向-取整取整sign符号函数符号函数mod模除求余模除求余 矩矩阵阵变变换换函函数数名称名称含义含义名称名称含义含义fiplr矩阵左右翻转矩阵左右翻转diag产生或提取对角阵产生或提取对角阵fipud矩阵上下翻转矩阵上下翻转tril产生下三角产生下三角fipdim矩阵特定维翻转矩阵特定维翻转triu产生上三角产生上三角Rot90矩阵反时针矩阵反时针90翻转翻转 取取整整函函数数和和求求余余函函数数名称名称含义含义名称名称含义含义min最小值最小值max最大值最大值mean平均值平均值median中位数中位数std标准
展开阅读全文