matlab第二章矩阵

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2.1变量和数据操作2.2MATLAB矩阵2.3矩阵分析2.4矩阵与数组运算2.5稀疏矩阵2.6字符串2.7单元数据和结构数据第2章MATLAB数据及其运算2.1变量和数据操作1.变量命名①变量名是以字母开头,后接字母、数字或下划线的字符序列,字母间不可留空格②最多63个字符③变量名区分字母大小写Matlab中的所有标点符号必须在英文状态下输入2.1.1变量与赋值例如:b=0.2222b=0.2222;0.22222回车保留变量ans0.22222x=sin(30)/52.定义MATLAB变量:赋值方式赋值变量=赋值表达式方式1:MATLAB提供的一些内部函数常数返回值ans默认变量名,保存最近的结果。如果不给表达式指定一个输出变量,MATLAB会自动将结果保存到ans变量中eps浮点相对精度10-52realmax计算机可以表示的最大浮点数21024realmin计算机可以表示的最小浮点数2-1022pi圆周率i,j虚数单位inf无限值。类似n/0的表达式生成的结果为inf,其中n为非0实数NaN表示不合法的数值值,不定值。类似0/0和inf/inf的表达式生成的结果,与NaN有关的算术运算结果,以及n/0,n为复数时的计算结果都是NaNcomputer计算机类型versionMATLAB版本字符串2.1.2常量(Matlab预定义变量)预定义变量有特定的含义,在使用时,应尽量避免对这些变量重新赋值。例.计算表达式的值,并显示计算结果。在MATLAB命令窗口输入命令:x=1+2i;y=3-sqrt(17);z=(cos(abs(x+y))-sin(78*pi/180))/(x+abs(y))输出结果是:z=-0.3488+0.3286iMATLAB工作空间窗口workspace专门用于内存变量的管理。在工作空间窗口中可以显示所有内存变量的属性。当选中某些变量后,再单击Delete按钮,就能删除这些变量。当选中某些变量后,再单击Open按钮,将进入变量编辑器。通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元素。1.内存变量的删除与修改2.1.3内存变量的管理Who命令用于显示在MATLAB工作空间中已经驻留的变量名清单。只显示出驻留变量的名称whos命令在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息。clear命令用于删除MATLAB工作空间中的变量。利用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat。MAT文件的生成和装入由save和load命令来完成。savefilename.matvariableloadfilename.matvariable常用格式为:2.内存变量文件保存和调用save文件名变量名表load文件名变量名表1.MATLAB用十进制数表示一个常数,在一般情况下,MATLAB内部每一个数据元素都是用双精度数来表示和存储的。2.数值量和数据格式显示在缺省情况下,当结果是整数时,MATLAB将它作为整数显示;当结果是实数,MATLAB以小数点后4位的精度近似显示。2.1.4数据的输出格式(数值型数据)Format命令的格式格式解释例format短格式(缺省显示格式),同short3.1416formatshort短格式(缺省显示格式),只显示5位3.1416formatlong长格式,双精度数15位,单精度数7位3.14159265358979formatshorte短格式e方式(科学计数格式)3.1416e+000formatlonge长格式e方式3.141592653589793e+000formatshortg短格式g方式3.1416formatlongg长格式g方式3.14159265358979formatcompact压缩格式formatloose自由格式format+/formatbank/formatrat/formathex(详情查看联机帮助)2.2.1矩阵的创建2.2.2矩阵的重组2.2.3矩阵信息命令2.2MATLAB矩阵2.2.1矩阵的创建1.直接输入法2.冒号的特殊用法3.特殊函数创建法2.2.1矩阵的创建123456789矩阵用方括号“[]”括起A=[123;456;789]矩阵同一行中的元素之间用空格或逗号分隔矩阵行与行之间用分号分开1.直接输入法矩阵元素可以是任何数值表达式矩阵元素可以是不含未知数的变量的表达式例:x=[-1.3,sqrt(3),(1+2+3)*4/5]例:x=5;y=[-1.3,cos(x),x/5]R=[123;456],M=[111213;141516]CN=R+i*M,CN=1+11i2+12i3+13i4+14i5+15i6+16i复数矩阵输入——矩阵相加法名称含义名称含义名称含义abs绝对值conj复数共轭real复数实部angle相角imag复数虚部复数函数a=[1+2i,2;5,3-8i];c=[a,2*a+i;sin(a/4),3.5+i*a]复数矩阵输入——直接输入法2.冒号的特殊用法冒号(:)生成等差元素向量。a是首相,b是步长,C是最后一项如b=1步长=1可以省略a:cx=[0:0.5:2]x=00.50001.00001.50002.0000y=[0:3]y=01.00002.00003.00004.00005.0000a=[0:3;1:4]a=01231234a:b:cA(:)A的所有元素A(:,:)二维矩阵A的所有元素A(:,k)A的第k列,A(k,:)A的第k行A(k:m)A的第k到第m个元素A(:,k:m)A的第k到第m列组成的子矩阵A(i:j,m:n)表示由矩阵A的第i到第j行和第m到第n列交叉线上的元素组成的子矩阵。例:A(1,:)A(:,1:3)A(:,:)可利用冒号提取矩阵的整行或整列。矩阵元素的标志:全下标:A(i,j)第i行第j列元素单下标:A(k)第k位置的元素3.提取矩阵的部分元素:冒号运算符sub2indind2sub标志转换linspace函数例:x=linspace(0,pi,12)x=00.28560.57120.85681.14241.42801.71361.99922.28482.57042.85603.1416函数法:生成等差元素向量。从a开始,到b结束,包含n个数据元素的数组linspace(a,b,n)零矩阵zeroszeros(n)产生n×n零矩阵zeros(m,n)产生m×n零矩阵。zeros(size(A))产生与矩阵A同样大小的零矩阵壹矩阵onesones(n)产生n×n壹矩阵ones(m,n)产生m×n壹矩阵。ones(size(A))产生与矩阵A同样大小的壹矩阵单位矩阵eye生成一个主对角线全为1的单位矩阵,eye(n)产生n×n单位矩阵eye(m,n)产生m×n单位矩阵eye(size(A))产生与矩阵A同样大小的单位矩阵随机矩阵rand产生0~1间均匀分布的随机矩阵,如上形式rand(n),rand(m,n),rand(size(A))randn产生均值为0,方差为1的标准正态分布随机矩阵如上形式randn(n),randn(m,n),randn(size(A))randperm创建一个矢量(1×n的矩阵),randperm(4)=3124(1)通用特殊矩阵的生成4.特殊函数创建法例建立随机矩阵:(1)在区间[20,50]内均匀分布的5阶随机矩阵。(2)均值为0.6、方差为0.1的5阶正态分布随机矩阵。命令如下:x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*randn(5)(2)专门学科特殊矩阵魔术矩阵magic(n)矩阵的每行、每列、及两条对角线的元素之和都相等希尔伯特Hilb(n)Hilbert(n)有名病态矩阵,每个元素是希尔伯特矩阵的逆的函数invhilb(n)帕斯卡pascal(n)就是杨辉三角形矩阵,第1行和第1列都为1,其余元素为其相邻的右面和上面元素之和。二次项(x+y)n展开后的系数,随n的增大组成一个三角形表,称为杨辉三角形。范德蒙德vander(v)最后一列全为1,倒数第二列为一个指定的向量V,其他各列是其后列与倒数第二列的点乘托普利兹toeplitz(x,y)矩阵除第一行和第一列外,其他每个元素都与其相邻左上角的元素相同.用法:toeplitz(x,y)或者(x),这里x和y都为向量,生成以x为第一列,y为第一行的toeplitz矩阵伴随矩阵compan(p)其中p是一个多项式的系数向量,高次幂系数排在前,低次幂排在后。(,)()^()AijVinj1(,)1Aijij魔术矩阵magic(3)ans=816357492希尔伯特矩阵hilb(3)ans=1.00000.50000.33330.50000.33330.25000.33330.25000.20001(,)1Aijij范德蒙德(,)()^()AijVinj帕斯卡pascal(3)ans=111123136例求二次项(x+y)5的展开式矩阵次对角线上的元素1,5,10,10,5,1即为展开式的系数。pascal(6)ans=111111123456136101521141020355615153570126162156126252托普利兹z=toeplitz(x,y)z=1.00003.00005.00002.33331.00003.00003.66672.33331.00005.00003.66672.3333x=linspace(1,5,4)x=1.00002.33333.66675.0000y=1:2:5y=135可使用命令:compan(p);p=[1,0,-7,6];求多项式的x3-7x+6的伴随矩阵2.2.2矩阵的重组1.矩阵的合并2.矩阵行列的删除3.矩阵的部分修改4.矩阵的结构改变5.矩阵的抽取1、矩阵合并(1)矩阵构造符[]123456457810116912+=1234564578101169123×23×33×5123456457869+≠1234564578693×22×3在竖直方向合并矩阵A和B:在水平方向合并矩阵A和B:表达式C=[AB]表达式C=[A;B](列相同)(行相同)(2)矩阵合并函数:函数描述cat沿指定的维方向串接成高维数矩阵horzcat沿水平方向串接成高维数矩阵vertcat沿垂向方向串接成高维数矩阵repmat通过复制和叠置矩阵来创建新矩阵Cat(1,A,B)垂直Cat(2,A,B)水平Horzcat(A,B)水平vertcat(A,B)垂直Repmat(A,m,n)2.矩阵的部分修改A(m,n)=a表示修改矩阵中第m行第n列元素;A(m,:)=[a,b,...]表示修改矩阵中第m行所有元素;A(:,n)=[a,b,...]表示修改矩阵中第n列所有元素。A(m;n,k:j)=[a,b,...]表示修改矩阵中第m到n行和k到j列所有元素调用格式:a=magic(6)a=351626192433272123253192222720828331710153053412141643629131811a(1:3,3:6)ans=626192472123252222720a(1:3,3:6)=2a=351222233222223192222828331710153053412141643629131811a(1:3,3:6)=rand(3,4)a=35.00001.00000.42180.95950.84910.75773.000032.00000.91570.65570.93400.743131.00009.00000.79220.03570.67870.39228.000028.000033.000017.000010.000015.000030.00005.000034.0

1 / 129
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功