MATLAB之(一)数组、矩阵和函数及运算.ppt

上传人:xin****828 文档编号:15456141 上传时间:2020-08-11 格式:PPT 页数:33 大小:566.82KB
收藏 版权申诉 举报 下载
MATLAB之(一)数组、矩阵和函数及运算.ppt_第1页
第1页 / 共33页
MATLAB之(一)数组、矩阵和函数及运算.ppt_第2页
第2页 / 共33页
MATLAB之(一)数组、矩阵和函数及运算.ppt_第3页
第3页 / 共33页
资源描述:

《MATLAB之(一)数组、矩阵和函数及运算.ppt》由会员分享,可在线阅读,更多相关《MATLAB之(一)数组、矩阵和函数及运算.ppt(33页珍藏版)》请在装配图网上搜索。

1、MATLAB 软件使用简介,之一,MATLAB是MATrix LABoratory的缩写。它是一个高性能的科技计算软件,它具有强大的数值计算、图形和编程的功能。,MATLAB在数据处理、科学计算、系统工程、自动控制、无线电、机械制造等领域有着广泛的应用。,目前国内比较流行的MATLAB版本是V5.x(WINDOWS版),V6.x,下面介绍MATLAB的简单使用方法。,MATLAB具有的优势与特点,1.具有友好的工作平台和编程环境,用户界面精致,2.具有强大的科学计算及数据处理能力,可以解决:,矩阵计算和线性方程组求解; 微分方程及偏微分方程组的求解; 符号运算; 傅立叶变换和数据的统计分析;

2、工程中的优化问题; 稀疏矩阵运算; 复数的各种运算等等。,3.具有出色的图形处理功能,4.具有应用广泛的模块集和工具箱,一般来说是由特定领域专家开发的,用户可以直接使用工具箱学习、应用和评估不同的方法而不需要自己编写代码。,目前MATLAB已经把工具箱延伸到了科学研究和工程应用诸多领域,如: 数据采集、数据库接口、概率统计、样条拟合、优化算法、偏微分方程求解、神经网络、小波分析、信号处理、图象处理、系统辩识、控制系统设计、鲁棒控制、金融分析等等。,5.具有使用的程序接口和发布平台 MATLAB与FORTRAN语言和C语言等高级语言有接口,交互使用。,1一些基本操作和命令,1 命令行编辑,hom

3、e:光标移至行首 end: 光标移至行末 esc:清除一行 :光标左移一个字符,:光标右移一个字符 :调出前一命令行 :调出下一命令行,2 续行号“.”:,当一个命令的长度超过一行时,应将该行分为两行,这时在第一行键入回车键换行之前须使用续行号“.”,遇到这一符号MATLAB会将后续行作为这一命令的继续。,3 帮助:,help程序(主题)名,如 help eye,2矩阵、数组与函数,MATLAB的主要数据对象是矩阵,标量、数组、行向量、列向量都是它的特例,最基本的功能是进行矩阵运算。MATLAB对矩阵和数组的操作有一些特殊规定。,一、矩阵的输入和运算,常用的矩阵输入方法有:直接输入每个元素;语

4、句或函数生成;M-文件中生成等。,1 矩阵的直接输入,MATLAB中不用描述矩阵的类型和维数,它们由输入的格式和内容决定。逐一输入矩阵的元素,具体做法是:在方括号内逐行键入矩阵各元素,同行元素之间用逗号或空格分隔,两行之间用分号分隔。对于大矩阵的输入,两行之间可用回车键代替分号,也可使用续行号。 如:,A=1,2,3;4,5,6;7,8,0 回车,A= 1 2 3 4 5 6 7 8 0,或 A=1,2,3 4,5,6 7,8,0 回车,A= 1 2 3 4 5 6 7 8 0,B=1,2,3;4,5,6;7,8,0 11 12 13;14 15,16 回车,B= 1 2 3 4 5 6 7

5、8 0 11 12 13,或 B=1,2,3;4,5,6;7,8,0;11, 12 13;14 15,16,矩阵中的元素可以用它的行、列数表示,如: a=A(2,1) 回车(A的第2行第1列元素),a= 4,注:,1 A输入后一直保留在工作空间中,可随时调用。,2 可以直接修改矩阵的元素。如:,A(2,1)=7回车,A= 1 2 3 7 5 6 7 8 0,又如:A(4,4)=1 回车,A = 1 2 3 0 7 5 6 0 7 8 0 0 0 0 0 1,原来矩阵没有第4行和第4列,MATLAB自动增加行列数,对未输入的元素赋值0,2函数生成矩阵,MATLAB提供了一些函数来生成特殊矩阵,常

6、见命令有:,(1) zeros(生成零矩阵) ; (2) eye(生成对角元为1 矩阵) ; (3) ones(生成元素全为1的矩阵); (4) rand(生成在(0,1)均匀分布随机矩阵); (5) randn(生成正态分布随机矩阵);,W=zeros(2,3),W= 0 0 0 0 0 0,V=eye(2,4),V = 1 0 0 0 0 1 0 0,U=ones(3),U = 1 1 1 1 1 1 1 1 1,X=rand(2,3),X = 0.9501 0.6068 0.8913 0.2311 0.4860 0.7621,3矩阵的裁剪与拼接,从一个矩阵中取出若干行(列)构成新的矩阵称

7、为裁剪,MATLAB中“:”的使用是非常重要的裁剪工具,如:,C=A(2:3,:),C = 7 5 6 0 7 8 0 0,注:A(2:3,:)中“2:3”表示取2至3行,“:”表示取所有的列。,D = 5 6 0 8 0 0,D=C(:,2:4),A(3,:),ans = 7 8 0 0,将几个矩阵接在一起称为拼接。左右拼接时要求行数相同,上下拼接时要求列数相同。如:,E=C,ones(2,1),E = 7 5 6 0 1 7 8 0 0 1,F=A(1:2,:);eye(1,4),F = 1 2 3 0 7 5 6 0 1 0 0 0,4矩阵的运算,“+”加法;“”减法;“ ”转值;“*”

8、乘法;“”乘幂;“”左除;“/”右除。矩阵运算要符合矩阵运算规律,若不符合运算规律,将产生错误信息。这里只将左除和右除的用法叙述如下:,设A可逆,AX=B的解是A左除B,即X=AB;XA=B的解是A右除B,即X=B/A,如:,A=1,2,3;4,5,6;7,8,0 A = 1 2 3 4 5 6 7 8 0,b=366;804;351 b = 366 804 351,X=Ab X = 25.0000 22.0000 99.0000,B=A B = 1 4 7 2 5 8 3 6 0,d=b d = 366 804 351,Y=d/B Y = 25.0000 22.0000 99.0000,X=

9、b/A X = 561 -222 99,二、数组及其运算,一行一列的矩阵是向量或数组,在MATLAB中向量和数组虽然形式一致,但却是两个不同的概念,遵循不同的运算规则。数组是元素为连续存储的数据的集合,数组运算的最重要特征是按元素进行运算。,1 数组的输入,可以像1n矩阵(即行向量)一样输入,如:,a=2,3,4,5 a = 2 3 4 5,数组常用“:”来方便地生成一些特殊的数组。如:,a=1:5(从1到5公差为1的等差数组) a = 1 2 3 4 5,b=1:2:7(从1到7公差为2的等差数组) b = 1 3 5 7,c=6:-3:-6(从6到-6公差为-3的等差数组) c = 6 3

10、 0 -3 -6,e=0:2:8,ones(1,3)(等差数组和行向量的拼接) e = 0 2 4 6 8 1 1 1,2数组的运算,数组除作为1n矩阵(行向量)遵循矩阵运算外,MATLAB还为数组提供了一些特殊运算。两个数组间的运算是将对应元素作运算而得到的一个新的数组。一个数与一个数组间的运算是该数逐个与数组元素作运算而得到的数组。数组运算符有:,“+”加法;“-”减法;“.*”乘法;“.”乘幂;“.”左除;“./”右除。为了与矩阵运算相区别,乘法、除法、乘幂号前加上一个点“.”,为了避免二义性,最好在运算符的“.”前留一个空格。,a=1,2,3,4,5,b=1,3,5,7,9,c=a .

11、*b a = 1 2 3 4 5 b = 1 3 5 7 9 c = 1 6 15 28 45,d=a.2,e=b.a d = 1 4 9 16 25 e = 1 9 125 2401 59049 f=a./b,g=a.b f = 1.0000 0.6667 0.6000 0.5714 0.5556 g = 1.0000 1.5000 1.6667 1.7500 1.8000,三、语句、变量和表达式,1语句形式,MATLAB的语句的一般表达形式:,变量=表达式,注:,若变量和“=”省略,则名为ans的变量自动建立。 如果你输入一个语句,并以回车结束,则在工作 区中显示计算结果;如果语句以分号“

12、;”结束;MATLAB只进行计算,不显示计算结果。 如果表达式太长,可以用续行号“”将其延续到下一行。 一行中可以写几个语句,它们之间要用逗号或分号分开。,a=1,2,3,4,5;b=1,3,5,7,9; c=a.*b,d=a*b,e=a*b回车,c = 1 6 15 28 45 d = 95,e = 1 3 5 7 9 2 6 10 14 18 3 9 15 21 27 4 12 20 28 36 5 15 25 35 45,2变量,MATLAB的变量由字母、数字和下划线组成,最多31个字符,区分大小写字母,第一个字符必须是字母。对于变量,MATLAB不需要任何类型的说明或维数语句,当输入一

13、个新的变量名时,MATLAB自动建立变量并分配内存空间。,几个特殊变量:,pi 圆周率; eps 最小浮点数; Inf 正无穷大,特指1/0; NaN 不定值,特指0/0; I,j 虚数单位。,a=0,1,0,b=1,0,0,c=a./b a = 0 1 0 b = 1 0 0 c = 0 Inf NaN,c=pi c = 3.1416,3变量的存储,工作空间中的变量可以用save命令存储到磁盘文件中。键入save,将工作空间中全部变量存到. mat 文件中去,若省略,则存到文件matlab.mat中。如:,save madt,save madtl a b (将变量a b存入madtl.mat

14、文件中),4调出,用load命令可以把变量从磁盘文件读入到MATLAB的工作空间。load命令也可以调出文本文件,但是文本文件只能由数字组成的矩阵形式。load命令的用法为:,load,它将指出的磁盘文件中的数据依次读入名称与相同的工作空间中的变量中去。如:,load madt,load madtl,5变量值的显示,作为运算结果的变量值,在表达式计算后在屏幕上显示出来,但在表达式结尾加一个分号“;”,该结果不再显示。,显示格式:,在MATLAB中数据可以用多种格式显示,显示格式用显示命令指定。显示命令主要有:,format short(短格式,省缺显示); format long(长格式);

15、format bank; format rat(分数格式); format short e(短e格式); format long e(长e格式)。,以为例,将显示方式列表如下:,命令 显示 说明,format short ,t=pi,3.1416,4位小数,format long ,t =pi,3.14159265358979,15位小数,format bank,t =pi,3.14,2位小数,format rat,t =pi,355/113,最接近的有理数,format short e,t =pi,3.1416e+000,科学计数,format long e ,t =pi,3.1415926

16、53589793e+000,四、函数,MATLAB提供了大量的函数,按照起用法分为标量函数、向量函数和矩阵函数。,1标量函数,常用的函数列出如下,只作必要的注释:,三角函数:,双曲函数:,其他基本函数:,cos; sin ;tan ;cot; csc; asin; acos; atan; acot; asec ;acsc;,sinh; cosh; tanh ;asinh; acosh ;atanh。,Sqrt(平方根); exp(指数函数) ;log(对数函数) ;log10(以10为底的对数函数); log2(以2为底的对数函数);abs (绝对值或复数模);;real(取实部);imag(

17、取虚部);angle(取幅角);rats(有理逼近)。,注:,这些函数本质上是作用于标量,当它们作用于矩阵(或数组)时,是对矩阵(或数组)的每个元素进行运算。如:,舍入函数:,round(四舍五入);floor(向-方向取值);ceil(向+方向取值); fix(向零方向取整),y = 0 0.5878 0.9511 0.9511 0.5878 0.0000,a=-3.5,4.6,2.8,-2.2;b=round(a),c=floor(a),d=ceil(a), e=fix(a),f=rats(a),b = -4 5 3 -2 c = -4 4 2 -3 d = -3 5 3 -2 e = -

18、3 4 2 -2 f = -7/2 23/5 14/5 -11/5,2向量函数,x=(0:0.2:1).*pi; y=sin(x),(用于数据分析),有些函数只有当它们作用于(行或列)向量时才有意义,称之为向量函数。这些函数也可作用于矩阵,此时它产生一个行向量,行向量的每个元素是函数作用于相应列向量的结果。常用的有:,max; min; sum(和); length(长度); mean(平均值) median(中值); prod(乘积); sort(从小到大排列)。std (标准差),a=4,3.1,-1.2,0.6,2.8; b=min(a), c=sum(a), d=median(a),

19、e=sort(a),a = 4.0000 3.1000 -1.2000 0.6000 2.8000 b = -1.2000 c = 9.3000 d = 2.8000 e =-1.2000 0.6000 2.8000 3.1000 4.0000,3矩阵函数,矩阵函数可分为两类:构造矩阵的函数和进行矩阵计算的函数。,构造矩阵的函数:,zeros(0矩阵); ones(1矩阵); eye(单位矩阵); rand(均匀分布随机矩阵); randn(正态分布随机矩阵); Randperm(m)(生成从1到m的随机变量排列),diag(生成或提取对角矩阵); triu(生成或提取上三角矩阵); tril

20、(生成或提取下三角矩阵); Meshgrid(三维网图);,A=1,2,3;4,5,6;7,8,10,B=triu(A), C=tril(A),B = 1 2 3 0 5 6 0 0 10,C = 1 0 0 4 5 0 7 8 10,A = 1 2 3 4 5 6 7 8 10,D= diag(A), E=diag(D),D = 1 5 10,E = 1 0 0 0 5 0 0 0 10,常见的矩阵计算函数有:,size(大小);det(行列式);rank(秩);inv(逆);eig(特征值,特征向量与特征值);trace(迹);expm(矩阵指数); poly(特征多项式); lu(lu分

21、解); qr(正交分解); norm(矩阵或向量的范数);cond(条件数)。poly(特征多项式);chol(Cholesky分解),A=8,1,6;3,5,7;4,9,2,B=size(A),A = 8 1 6 3 5 7 4 9 2,B = 3 3,C=det(A),D=rank(A),E=inv(A),C = -360 D = 3,E = 0.1472 -0.1444 0.0639 -0.0611 0.0222 0.1056 -0.0194 0.1889 -0.1028,F=trace(A),G=poly(A),F = 15 G = 1.0000 -15.0000 -24.0000 3

22、60.0000,h=expm(A),h = 1.0e+006 * 1.0898 1.0896 1.0897 1.0896 1.0897 1.0897 1.0896 1.0897 1.0897,将矩阵A分解为单位下三角阵L与上三角阵U之积,L = 1.0000 0 0 0.3750 0.5441 1.0000 0.5000 1.0000 0,U = 8.0000 1.0000 6.0000 0 8.5000 -1.0000 0 0 5.2941,L,U=lu(A),Q,R=qr(A),Q = -0.8480 0.5223 0.0901 -0.3180 -0.3655 -0.8748 -0.424

23、0 -0.7705 0.4760,R = -9.4340 -6.2540 -8.1620 0 -8.2394 -0.9655 0 0 -4.6314,将A分解为正交矩阵Q与上三角阵R之积,X=1,2,3;2,20,30;3,30,94,w=chol(X),将正定矩阵X分解成X=y*y,其中y是上三角阵,X = 1 2 3 2 20 30 3 30 94,w = 1 2 3 0 4 6 0 0 7,D = 78.9151 0 0 0 22.2180 0 0 0 30.8669,C = -0.6559 0.7940 -0.7594 -0.2066 -0.4010 0.6360 -0.7260 -0.4570 -0.1370,C,D=eig(A),B = 78.9151 22.2180 30.8669,B=eig(A),A=fix(50*rand(3,3),A = 47 24 22 11 44 0 30 38 41,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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