




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、Matlab矩阵运算1.变数也可用来存放向量或矩阵,并进行各种运算.如下面的列向量运算:x=1 3 5 2; y=2*x+1 y = 3 7 11 5 2.变数命名的规则 (1)第一个字母必须是英文字母 (2)字母间不可留空格(3)最多只能有19个字母,MATLAB会忽略多余字母 我们可以随意更改、增加或删除向量的元素: y(3) = 2 %更改第三个元素 y = 3 7 2 5 y(6) = 10 %加入第六个元素 y = 3 7 2 5 0 10 y(4) = %删除第四个元素 y = 3 7 2 0 10 MATLAB会忽略所有在百分比符号(%)之后的文字,因为百分比之后的文字为程式的注解3.常用线性代数函数B=A矩阵转置 C=A+B矩阵相加C=A*B矩阵相乘C=AK矩阵幂C=A.*B矩阵点乘,即两维数相同的矩阵各对应元素相称expm(A)指数矩阵inv(A)逆矩阵det(A)矩阵行列式的值rank(A)计算矩阵的秩eig(A)矩阵的特征值X,D=eig(A)矩阵的特征向量X和以特征值为元素的对角阵DP=poly(A)矩阵的特征多项式R=roots(p)特征多项式方程的根Conv(p1.p2)两多项式相乘上面所列的都是有关矩阵的操作函数。如eig(A)可求出A的特征根及其特征向量,具体执行方法为:输入A矩阵A=0 1;-6 -5 A=0 1-6 -5E=eig(A) %求出方阵A的特征根EE=-2-3 V,D=eig(A) %求出方阵A的特征向量V及其A的对角型DV=0.4472 -0.3162-0.8944 0.9487D=-2 00 -3 4.考虑一个“数学问题”, 该问题用半数学语言描述就是:如何生成一个 3x3 矩阵, 并将自然数 1, 2, ., 9 分别置成这 9 个矩阵元素,才能使得每一行、每一列、且主、反对角线上元素相加都等于一个相同的数。这样的矩阵称为“魔方矩阵”。用 MATLAB 的 magic() 函数,我们可以由下面的命令立即生成这样的矩阵:A=magic(3)A=8 1 6 3 5 7 4 9 2 还可以由B=magic(10)一次生成 10x10 的魔方矩阵。如果想求出矩阵的行列式和特征值,可以分别由 det(B) 与 eig(B) 立即得出结果二、特殊矩阵 zeros函数是形成元素皆为0 的矩阵;ones函数是形成元素皆为 1 的矩阵; eye则是产生一个单位矩阵,之所以称为eye是取其发音与原来单位矩阵符号I相同,而又避免与定义复数中的虚 部所用的符号i雷同,所以改以eye替代。上述三个函数的使用语法都相似,如zeros(m)可以产生一个mm的正方 矩阵,而zeros(m,n)产生的是mn的矩阵。也可以使用这三个函数将一mn矩阵原来元素全部取代成0, 1 或 是单位矩阵的值,不过要加上size指令来指出其矩阵大小是m,n,所以语法为zeros(size(A),其中A是原来矩阵。 A=zero(2) %0的矩阵 A= 0 0 0 0 B=zeros(2,3) B= 0 0 0 0 0 0 C=1 2; 3 4; 5 6; size(C) %使用 size 指令得到C矩阵的大小 ans = 3 2 D=zeros(size(C) %加上size指令将矩阵C 原来的元素全部以0取代A=ones(2),B=ones(2,3) %1的矩阵 A= 1 1 1 1B= 1 1 1 1 1 1 三、Matlab矩阵运算函数 1.先介绍几个与矩阵转角有关的函数:rot90,fliplr,flipud,它们的用法及说明.请参考以下的例子。 A=2 1 0; -2 5 -1; 3 4 6; B=rot90(A) %将A矩阵逆时针转90度 B = 0 -1 6 1 5 4 2 -2 3 A=1 2; 4 8; -2 0; B=fliplr(A); % 将A矩阵从左向右翻 C=flipud(A); % 将A矩阵从上向下翻 B, CB = 2 1 8 4 0 -2 C = -2 0 4 8 1 22.另外函数 reshape 则是用来调整矩阵改形,即是在矩阵的元素总数不变下,改变其列及行的大小。见以下范例。A=2 5 6 -1; 3 -2 10 0; B=reshape(A,4,2); % 将A矩阵改成 4x2 的矩阵 C=reshape(A,1,8); % 将A矩阵改成 8x1 的矩阵 B,C B= 2 6 3 10 5 -1 -2 0C= 2 5 6 1 3 -2 10 03.我们如果要将矩阵内的特定元素读取出来,或是将特定元素以其它值取代,以下的函数diag, triu, tril 提供了这方面的功能。diag是只保留原矩阵的主对角线 (main diagonal) 的元素,其余的元素以零取代。triu, tril 则是分别产生上三角形及下三角形矩阵,其余的元素也以零取代。以下的例子详细的说明这三个函数的用法: V=1 2 3; A=diag(V) A= 1 0 0 0 2 0 0 0 3A=1:2:7; 3:3:12; 4:-1:1; 1:4 A= 1 3 5 7 3 6 9 12 4 3 2 1 1 2 3 4 B=triu(A) B= 1 3 5 7 0 6 9 12 0 0 2 1 0 0 0 4 A=1:2:7; 3:3:12; 4:-1:1; 1:4 A= 1 3 5 7 3 6 9 12 4 3 2 1 1 2 3 4 C=triu(A,-1) C= 1 3 5 7 3 6 9 12 0 3 2 1 0 0 3 4 D=triu(A,3) D= 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 04.我们在前面已说明过 MATLAB 的运算是以阵列(array)及矩阵 (matrix) 方式在做运算,而这二者在MATLAB的 基本运算性质不同,阵列强调元素对元素的运算,而矩阵则采用线性代数的运算方式。我们就来说明矩阵运算 的特点。 以下将阵列及矩阵的运算符号及其意义列出 利用这些运算符号即可进行以下的矩阵运算。A=2 5 1; 7 3 8; 4 5 21; 16 13 0; A %A的转置矩阵 A= 2 7 4 16 5 3 5 13 1 8 21 0A=4 -1 3; B=-2 5 2; dot_prod= sum(A.*B) %二个阵列做内积 dot_prod= -7 c=dot(A,B) %以dot函数也可做内积运算 c= -7A=4; -1; 3; dot_prod= sum(A.*B);%如果A是行阵列则先做转置,再做内积 F=2 5 -1; G=0 1 -3; out_prod=F*G;%二矩阵做外积A=2,5,1; 0,3,-1; B=1,0,2; -1,4,-2; 5,2,1; C=A*B %矩阵相乘,注意二个矩阵的大小须相容 C= 2 22 -5 -8 10 -75.函数polyvalm是以矩阵方式做多项式函数计算,有别于polyval是以阵列方式计算函数值。它的语法为 polyvalm(a,X),其中X为一矩阵而a则是一多项式。以下的例子可说明其用法。 X=1 1 1; 2 2 2; 3 3 3; a=1 1 1;%注意a=X*X+X+I f=polyvalm(a,X) f= 8 7 7 14 15 14 21 21 22 6.逆矩阵、矩阵秩与行列式 MATLAB的逆矩阵函数和秩函数语法分别为inv(A), rank(A),:例如: A=2 1; 4 3; rank(A) 2 %表示A秩数为2且等于矩阵的列数 inv(A) %逆矩阵 ans=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国建筑装饰设计项目创业计划书
- 中国肌肉刺激器项目创业计划书
- 中国BOSS系统项目创业计划书
- 中国挂面制造项目创业计划书
- 2025版简易服务合同范本
- 中国AFC自动售票检票系统项目创业计划书
- 高压力缩比进气道优化设计方法-洞察阐释
- 安全教考试试题及答案
- 社区农田建设合作合同书
- 知识产权保护意识-洞察阐释
- 《城市道路与交通》课件
- 高处作业吊篮危险源辨识及风险评价表
- 反对本本主义的背景内容及其意义课件
- 火电厂危险化学品安全管理课件
- 《中国近现代史纲要(2023版)》课后习题答案合集汇编
- 常用应用文写作格式
- (国卫版)老年人能力评估
- 国开2023秋《人文英语3》第1-4单元作文练习参考答案
- (完整版)雨水收集系统施工方案
- 电磁场与电磁波智慧树知到课后章节答案2023年下同济大学
- 中国女性生理健康白皮书
评论
0/150
提交评论