第2章-MATLAB数据及其运算课件

上传人:沈*** 文档编号:241627152 上传时间:2024-07-11 格式:PPT 页数:51 大小:483.50KB
返回 下载 相关 举报
第2章-MATLAB数据及其运算课件_第1页
第1页 / 共51页
第2章-MATLAB数据及其运算课件_第2页
第2页 / 共51页
第2章-MATLAB数据及其运算课件_第3页
第3页 / 共51页
点击查看更多>>
资源描述
矩阵是MATLAB最基本、最重要的数据对象。Matlab数据类型:l数值数据:双精度型、单精度数、带符号整数和 无符号整数。l字符数据。l结构体(Structure)(Cell)数据类型。l稀疏矩阵(Sparse)。l逻辑型数据:在MATLAB中,以数值1(非零)表示 “真”,以数值0表示“假”。2.1 MATLAB数据的特点第2章 MATLAB数据及其运算1一二请在这里输入您的主要叙述内容整体概述三请在这里输入您的主要叙述内容请在这里输入您的主要叙述内容21、赋值语句 表达式由变量、常量、运算符和函数组成。MATLABMATLAB对键入的表达式进行翻译和计算,赋值语句的形式通常为:变量=表达式;或简单地写作:表达式;分号是可选的,如果该语句的最后一个字符是分号,则在执行词句时不在屏幕上显示结果。rho=(sqrt(5)-1)/2rho=(sqrt(5)-1)/2 得:rho=0.6180rho=0.6180 a=abs(3+4i)a=abs(3+4i)得:a=5a=5若一个表达式太长,可用三个句号将其延伸到下一行:z=10*sin(pi/3)*.z=10*sin(pi/3)*.sin(pi/3);sin(pi/3);2.2 变量及其操作32 变量(Variables)变量无需类型及维数说明,变量命名规则如下:、变量名对大小写敏感。(a a与A A是两个不同的变量)、变量名的首字符必须是字母。3 3、函数的命名规则与变量相同。4 4、变量名应避免使用系统的关键字。如forfor,whilewhile等,见表2.1.2.1.例如:变量、函数或m m文件命名为2 2x x 1.m if 1.m if 则会出错。c clear:lear:可以删除工作空间的变量。41内存变量的显示与删除 who和whos:用于显示在MATLAB工作空间中已经驻留的变量名清单。who命令只显示出驻留变量的名称 whos在给出变量名的同时,还给出它们的 大小、所占字节数及数据类型等信息。2.2.2 变量的管理 clear:用于删除MATLAB工作空间中的变量。5数据的保存与装载save:将工作空间的数据保存到磁盘上。数据存储格式有二进制形式或ASCII格式。load:将磁盘上的数据文件装载到工作空间。常用格式:save 文件名 变量名表 -append-ascii load 文件名 变量名表-ascii 其中:文件名:可以带路径,但不需带扩展.mat变量名表中:变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔。当变量名表省略时,保存或装入全部变量。-ascii:使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理。Append:控制将变量追加到MAT文件中。6常量(Numbers)一些数的例子:3 -99 9.6397238 1.60210e-20 6.02252e23 -3.14159j 3e5i pi使用命令format type,来控制数的显示格式。72.2.3 数据的输出格式8指 令说 明示 例format默认的数据格式,同short格式一致271.82显示为271.82002718.2显示为2.7182e+003format short具有固定的显示格式,保留小数点后四位有效数字,对于大于1000的数值,使用科学计数法表示format long具有固定的15位有效数字2.71828182845905format short e具有5位有效数字的科学计数法表示2.7183e+000format long e具有15位有效数字的科学计数法表示2.718281828459046e+000format short g紧凑的显示方法,在format short和format short e中自动选择数据的显示格式2.7183format long g紧凑的显示方法,在format long和format long e中自动选择数据的显示格式2.71828182845905format hex使用16进制的数据形式表示4005bf0a8b14576aformat+在使用该格式显示大矩阵时,分别使用正号、负号或者空格显示矩阵元素中的正数、负数或者0+format bank使用金融的数据显示方法,小数点后只有两位有效数字2.72format rat使用近似的分数表示数值1457/53692.3 MATLAB矩阵的表示2.2.3.1 3.1 矩阵MATLABMATLAB中最基本的数据结构是矩阵(matrix)matrix)。n1*11*1的矩阵-标量(scalar):5scalar):5n只有一行或一列的矩阵-向量(vector):vector):1 3 5 71 3 5 7 行向量列向量3*3矩阵102.3.2 矩阵元素赋值 矩阵不需维数说明和类型定义,存储单元完全由计算机自动分配。每个变量代表一个矩阵,矩阵的每个元素都看作复数,默认的数据类型为双精度型。(1 1)输入矩阵最简单的方法是输入矩阵的元素表,n每行的元素之间用空格或逗号隔开,n用“;”号作为元素表中每一行的结束符,n并用 将元素表括起来。例如,在命令窗口输入语句:a=1 2 3a=1 2 3;4 5 64 5 6;7 8 97 8 9则结果为:a=1 2 3 a=1 2 3 4 5 6 4 5 6 7 8 9 7 8 911?12矩阵赋值的其它方式(2 2)向量的生成向量的生成归纳为:from:step:tofrom:step:to结构。如:y=0y=0:2 2:1010得:y=0,2,4,6,8,10y=0,2,4,6,8,10如果step=1step=1,则可省略:如:x=1:5x=1:5 则生成一个行向量,x=1 2 3 4 5 x=1 2 3 4 5(3 3)从外部数据文件装载矩阵(4 4)使用函数或程序生成矩阵:如ones(3,2),magic(3)ones(3,2),magic(3)等。13创建向量n定数线性采样法:在设定的“总点数”下,均匀采 样生成向量(一维“行”数组)使用函数linspace 和logspace linspace是用来创建线性间隔向量的函数linspace 的基本语法 X=linespace(X1,X2,n)X1为向量的第一个元素,X2为向量的最后一个元素,n为向量具有的元素个数,函数将根据n的数值平均计算元素之间的间隔,间隔计算公式为若在表达式中忽略参数n,则系统默认地将向量设置为100个元素14创建向量(续)例 使用linspace函数创建向量X=linspace(1,2,5)X=1.0000 1.2500 1.5000 1.7500 2.000015创建向量(续)logspace是用来创建对数空间的向量logspace 的基本语法 X=logspace(X1,X2,n)该函数创建的向量第一个元素值为10X1,而最后一个元素的数值为10X2,n为向量的元素个数,元素彼此之间的间隔按照对数空间的间隔设置若在表达式中忽略参数n,则系统默认地将向量设置为50个元素例 使用logspace函数创建向量X=logspace(1,3,3)X=10 100 1000162.2.3.3 3.3 矩阵元素的使用x=a(1,3)+a(2,2)+a(3,1)x=a(1,3)+a(2,2)+a(3,1)矩阵变量名(下标或序号)a a(3 3,2 2)的值为8 8(或a a(6 6)的值为8 8);n下标(Subscript):(Subscript):(行号,列号),),行号从上到下,列号从左到右。n序号(Index)(Index):矩阵元素的存储是按列进行的,顺序是从上到下,从左到右。a=1 2 3 4 5 6 7 8 9172.2.3.4 3.4 矩阵拆分(1)取子矩阵 在一个下标处单独一个冒号,表示取出该下标处所对应的全部行或列。na(:,k)表示取矩阵a的第k列全部元素。a(m,:)表示取矩阵a的第m行全部元素。na(m:m+k,:)表示取a矩阵的第mm+k行元素的全部元素。na(:)将矩阵a 的所有元素按列堆叠起来,成为一个列向量。18例如:b=a(:,3)%取出A矩阵的第三列。(注:%为注释符)c=a(1:2,:)%取出A矩阵的1到2行。d=a(1:2,1:2)%取出A矩阵1到2行的1至2列。19(2)利用空矩阵删除矩阵的元素 a=a的维数为0。例:a(2,:)=;得:a=8 1 6 4 9 2202.2.3.5 3.5 复数(Complex Number)操作n复数由实部(real part)和虚部(imaginary part)组成。n虚数单位用i或j来表示。6+5i =6+5j21运算符(Operators)+Addition-Subtraction*Multiplication/DivisionLeft division Power2.4 Matlab数据的运算(Operators)22(1 1)矩阵加减运算:n两个同维矩阵,才能进行加减运算,对应无素相加减。n一个标量与矩阵相加减时,结果为这个标量与矩阵的每一个元素相加减。x=2,-1,0;3 2-4;x=2,-1,0;3 2-4;y=ones(2,3);y=ones(2,3);x-y=?x-y=?1,-2,-1;2,1,-5 1,-2,-1;2,1,-5 x+1=?x+1=?3,0,1;4,3,-3 3,0,1;4,3,-3 2.4.1 算术运算23(2)矩阵乘法 满足a a的列数等于b b的行数,则e=e=a*ba*b;n一个标量与矩阵相乘时,结果为这个标量与矩阵的每一个元素相乘。如:x=1,3,1;x=1,3,1;2,3,1;2,3,1;y=1,2;y=1,2;3,0;3,0;7,4;7,4;z=x*y,w=2*x z=x*y,w=2*x z=?w=?z=?w=?17,6;18,8 17,6;18,8 2,6,2;4,6,22,6,2;4,6,224(3)矩阵除法 在线性代数中,本没有矩阵除法,它是由逆矩阵引申来的。nMATLABMATLAB中,矩阵求逆(Matrix inverseMatrix inverse)的函数为:Y=inv(X)Y=inv(X)n方程A*X=BA*X=B的解为:X=inv(A)*B=ABX=inv(A)*B=AB,ABAB称为A A左除B B,左除时要求两矩阵行数相等。n方程X*A=BX*A=B的解为:X=B*inv(A)=B/AX=B*inv(A)=B/A,A/BA/B称为A A右除B B,右除时要求两矩阵列数相等。25求解线性方程6x1+3x2+4x3=3-2x1+5x2+7x3=-48x1-4x2-3x3=-7A=6 3 4;-2 5 7;8 -4 -3;b=3;-4;-7;x=inv(A)*bx=0.6000 7.0000 -5.400026(4)矩阵的乘方 一个矩阵的乘方运算可以表示成Ax,要求A为方阵,x为标量。例如:A=1,2;4,5;B=A2得:B=9,12;24,33 27(5)矩阵点运算 矩阵中对应元素进行运算,要求两个矩阵的维数相同。设X=1 2 3;Y=4 5 6;X=1 2 3;Y=4 5 6;运算式输出结果说明Z=X.*YZ=X.*YZ=4 10 18Z=4 10 18X*YX*Y能成立吗?Z=X.YZ=X.YZ=4.0 2.5 2.0Z=4.0 2.5 2.0元素群有左除右除之分吗?Z=X.YZ=X.YZ=1 32 729Z=1 32 729Z=X.2Z=X.2Z=1 4 9Z=1 4 9X2X2能成立吗?Z=2.X YZ=2.X Y Z=2 4 8 16 32 64Z=2 4 8 16 32 6428矩阵乘法与点乘算式答案A*B?Error using=*Inner matrix dimensions must agree.A.*B29 点运算是MATLAB很有特色的运算,在实际应用中起着很重要的作用。当x=-2*pi:0.01:2*pi,求y=sinx*cos8x的值。x=-2*pi:0.01:2*piy=sin(x)*cos(8*x)?y=sin(x).*cos(8*x)30(6)常用数学函数n三角函数以弧度为单位计算。nround:四舍五入到最邻的整数nrem求余数函数名含义sin正弦函数cos余弦函数tan正切函数sqrt求平方根log自然对数log1010为底的对数abs求绝对值或模gcd最大公因子lcm最小公倍数31基本矩阵运算运算命令说 明A矩阵转置An矩阵求幂,n可以为任意实数A*B矩阵相乘A/B矩阵右除(一般的除法,A/B=AB)AB矩阵左除(一种倒置的除法,AB=BA)A+B矩阵相加A-B矩阵相减inv矩阵求逆,注意不是所有的矩阵都有逆矩阵det求方阵的行列式rank求矩阵的秩eig求矩阵的特征向量和特征值svd对矩阵进行奇异值分解norm求矩阵的范数32三角函数基本数学函数函数说明函数说明函数说明sin正弦函数tanh双曲正切函数csch双曲余割函数sinh双曲正弦函数atan反正切函数acsc反余割函数asin反正弦函数atan2四象限反正切函数acsch反双曲余割函数asinh反双曲正弦函数atanh反双曲正切函数cot余切函数cos余弦函数sec正割函数coth双曲余切函数cosh双曲余弦函数sech双曲正割函数acot反余切函数acos反余弦函数asec反正割函数acoth反双曲余切函数acosh反双曲余弦函数asech双曲反正割函数tan正切函数csc余割函数n三角函数以弧度为单位计算。33指数运算函数函数说明函数说明exp指数函数realpow实数幂运算函数log自然对数函数reallog实数自然对数函数log10常用对数函数realsqrt实数平方根函数log2以2为底的对数函数sqrt平方根函数pow22的幂函数nextpow2求大于输入参数的第一个2的幂34复数运算函数基本数学函数(续)函数说明函数说明abs求复数的模,若参数为实数则求绝对值real求复数的实部angle求复数的相角unwrap相位角按照360线调整complex构造复数isreal判断输入的参数是否为实数conj求复数的共轭复数cplxpair复数阵成共轭对形式排列image 求复数的虚部35圆整和求余函数基本数学函数(续)函数说明函数说明fix向0取整的函数mod求模函数floor向-取整的函数rem求余数ceil向+取整的函数sign符号函数round 向最近的整数取整的函数36矩阵(数组)操作函数 函数说 明size获取矩阵的行、列数,对于多维数组,获取数组的各个维的尺寸length获取向量长度,若输入参数为矩阵或多维数组,则返回各个维尺寸的最大值ndims获取矩阵或多维数组的维数numel获取矩阵或数组的元素个数disp显示矩阵或者字符串内容cat合并不同的矩阵或数组reshape保持矩阵元素的个数不变,修改矩阵的行数和列数repmat复制矩阵元素并扩展矩阵fliplr交换矩阵左右对称位置上的元素flipud交换矩阵上下对称位置上的元素flipdim获取指定的方向翻转交换矩阵元素find获取矩阵或者数组中非零元素的索引372.3.2 关系运算Equal =Not equal =Less than Less than or equal =关系运算的结果只可能是0或1n0 表示该关系为假n1 表示该关系为真38关系运算的法则:(1)比较量是标量:直接比较两数的大小。若关系成立,结果为1,否则为0。(2)比较量是两个同维矩阵:两矩阵相同位置的元素逐个比较。结果是一个维数与原矩阵相同的矩阵,其元素由0或1组成。(3)一个标量,一个矩阵:标量与矩阵的每一个元素逐个比较,结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。39例:建立4阶方阵A,判断A的元素是否能被3整除A=magic(4)p=(rem(A,3)=0)A=16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1rem(A,3)1 2 0 1 2 2 1 2 0 1 0 0 1 2 0 1p=0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0402.3.3逻辑运算逻辑量只能取0(假)和1(真)两个值。输入(与)and(或)or(非)not(异或)Exclusive orABA&BA|BAxor(A,B)00001001011110010111110041逻辑运算法则(1)两个同维矩阵:矩阵相同位置上的元素按规则逐个进行。运算结果与原矩阵同维,其元素由1或0组成。(2)一个是标量,一个是矩阵:标量与矩阵中的每个元素按规则逐个进行。运算结果与矩阵同维,其元素由1或0组成。在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。42逻辑运算符的优先级例:u=0 0 1 1 0 1;v=0 1 1 0 0 1;u|vans=0 1 1 1 0 1OperatorPriorityHighest&|Lowest例:u=p|pp和非p求或43find函数 功能:找出矩阵中非零元素的下标或序号。nI=find(EXPR)n R,C=find(EXPR)其中:R代表行,C代表列例:建立矩阵A,找出在10,20区间的元素的位置。A=4,15,-45,10,6;56,0,17,-45,0A=4 15 -45 10 6 56 0 17 -45 0find(A=10&A=10ans=0 1 0 1 0 1 0 1 0 0A=10&A=10&A=a&ch=z);%找小写字母的位置ch(k)=ch(k)-(a-A);%将小写字母变成相应的大写字母char(ch)length(k)%统计小写字母的个数48提问与解答环节Questionsandanswers49添加标题添加标题添加标题添加标题此处结束语点击此处添加段落文本.您的内容打在这里,或通过复制您的文本后在此框中选择粘贴并选择只保留文字50谢谢聆听THANKYOUFORLISTENING演讲者:XX时间:202X.XX.XX51
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!