matlab-2009-

上传人:j7****6 文档编号:62239101 上传时间:2018-12-18 格式:PPT 页数:116 大小:803.50KB
返回 下载 相关 举报
matlab-2009-_第1页
第1页 / 共116页
matlab-2009-_第2页
第2页 / 共116页
matlab-2009-_第3页
第3页 / 共116页
matlab-2009-_第4页
第4页 / 共116页
matlab-2009-_第5页
第5页 / 共116页
点击查看更多>>
资源描述

《matlab-2009-》由会员分享,可在线阅读,更多相关《matlab-2009-(116页珍藏版)》请在金锄头文库上搜索。

1、应用软件实践之 Matlab软件简介,北京化工大学理学院,什么是 MATLAB?,MATLAB 代表MATrix LABoratory 它的首创者是美国新墨西哥大学计算机系的系主任Cleve Moler博士,他在教授线性代数课程发现其他语言很不方便,便构思开发了MATLAB。最初采用FORTRAN语言编写,20世纪80年代后出现了MATLAB的第二版,全部采用C语言编写. 1984年Moler博士和一批数学家及软件专家创建了MathWorks公司,专门开发MATLAB。,MATLAB的发展历史,1984年,MATLAB第1版(DOS版) 1992年,MATLAB 4.0版 1994年,MATL

2、AB 4.2版 1997年,MATLAB 5.0版 1999年,MATLAB 5.3版 2000年,MATLAB 6.0版 2001年,MATLAB 6.1版 2002年,MATLAB 6.5版 2004年,MATLAB 7.0版 2008年, MATLAB 7.6版(支持4线程计算) 2009年, MATLAB 7.8版(支持8线程计算) 是一种解释性语言,一种演草纸式的科学计算语言,MATLAB 能干什么?,MATLAB可以进行: 数学计算、算法开发、数据采集 建模、仿真、原型 数据分析、开发和可视化 科学和工程图形应用程序的开发,包括图形用户界面的创建。 MATLAB广泛应用于: 数值计

3、算、图形处理、符号运算、数学建模、系统辨识、小波分析、实时控制、动态仿真等领域。,掌握 MATLAB ,MATLAB的构成: MATLAB开发环境:进行应用研究开发的交互式平台 MATLAB 数学与运算函数库:用于科学计算的函数 MATLAB 语言:进行应用开发的编程工具 图形化开发:二维、三维图形开发的工具 应用程序接口 (API):用于与其他预言混编 面向专门领域的工具箱:小波工具箱、神经网络工具箱、信号处理工具箱、图像处理工具箱、模糊逻辑工具箱、优化工具箱、鲁棒控制工具箱等几十个不同应用的工具箱。,掌握 MATLAB ,基本数学运算 矩阵运算 图形绘制 数值计算 MATLAB语言编程,掌

4、握 MATLAB ,基本数学运算 矩阵运算 图形绘制 数值计算 MATLAB语言编程,MATLAB界面: 命令窗口、图形窗口、编辑窗口、帮助窗口。,常用MATLAB系统命令,help 在线帮助 who 显示当前变量 whos 显示当前变量的详细信息 clear 清空工作间的变量和函数 pack 整理工作间的内存 load 把文件调入变量到工作间 save 把变量存入文件中 echo 命令回显 what 显示指定的matlab文件 dir 显示目录内容,基本数学运算,在MATLAB下进行基本数学运算,只需将运算式直接打在提示号 后面,并按Enter键。 MATLAB将计算 的结果以ans显示。,

5、基本数学运算,【例】求 的算术运算结果。 (12+2*(7-4)/32 ans = 2 我们也可给运算式的结果设定一个变量x: x = (5*2+1.3-0.8)*102/25 x = 42 变量x的值可以在下个语句中调用: y= 2*x+1 y = 85,例:计算,在命令窗口中输入 sqrt(18)+(7*sin(pi/6)/(5+cos(pi/6),注意: (1)“” 为命令提示符; (2)字母要区分大小写,所有命令和函数名都必 须用小写。,变量命名规则,1.变量名的大小写敏感。 2.变量的第一个字符必须为英文字母,而且不能超过31个字符。 3.变量名可以包含下连字符、数字,但不能为空格符

6、、标点 。 注:数值型变量和符号型变量在MATLAB中是不相同的,它们之间不能直接进行转化。MATLAB提供了一个将数值型转化成符号型的命令,即sym(syms)。,MATLAB提供基本的算术运算有:,加 (+)、减 (-)、乘 (*)、除 (/)、幂次方 (), 范例为:5+3, 5-3, 5*3, 5/3, 53 MATLAB书写表达式的规则与“手写算式”差不多相同,但要求所有表达式都是以纯文本形式输入。 如果一个指令过长可以在结尾加上.(代表此行指令与下一行连续), 例如: 1*2+3*4+5*6+7*8+9*10+11*12+. 13*14+15*16 ans = 744,MATLAB

7、常用数学函数,三角函数和双曲函数,MATLAB常用数学函数,指数函数,复数函数,其他函数,掌握 MATLAB ,基本数学运算 矩阵运算 图形绘制 数值计算 MATLAB语言编程,矩阵的MATLAB表示,直接输入 A=1 2, 3; 4 5 6;7, 8 9 冒号操作符 a=0:1:10 1-10,差为1 a=linspace(0,1,10) linspace(x0,x1,n) 其中n代表的是点的数目,即分成n-1等分。 步长应当是(x1-x0)/(n-1) a=logspace(1,2,10) 产生了10个数,范围是:101-102,特点:等比数列,n=length(A):取出矩阵A的行数和列

8、数的最大值. m,n=size(A):取出矩阵A的行数m和列数n.,向量的快捷生成,利用冒号”:”生成等差数列,a=i:j初值:终值 如果ij,则生成空向量. a=i:k:j初值:步长:终值 如果i0,或者ij且kj,且k0,则生成空向量.,例1.利用冒号生成等差数列.,X1:5 %初值:终值 X 1 2 3 4 5,Y0:2:10 %初值:步长:终值 Y 0 2 4 6 8 10,利用linspace函数生成向量,a=linspace(i,j). 生成有100个元素的行向量,在i,j,之间等分分布. a=linspace(i,j,n). 生成有n个元素的行向量,在i,j,之间等分分布.,利用

9、logspace函数生成向量,a=logspace(i,j). 生成有50个元素的对数等分行向量,第一个元素是10i,最后一个元素是10j. a=logspace(i,j,n). 生成有n个元素的对数等分行向量,第一个元素是10i,最后一个元素是10j. a=logspace(i,pi). 生成有50个元素的对数等分行向量,第一个元素是10i,最后一个元素是pi.,矩阵的调用,假如A是一个已知10*10的方阵,那么: A(:,3)是A的第3列元素构成的列向量; A(5,:)是A的第5行元素构成的行向量; A(1:5,3)是A的前5行的第3列元素构成的列向量; A(1:5,7:10)是A的前5行

10、,第7到第10列元素构成的子矩阵; A(1 3 5 ,2 4 6)是A的第1、3、5行,第2、4、6列元素构成的子矩阵; A(:,7:-1:3)是A的第7、6、5、4、3列元素构成的子矩阵. A(:,2 4)=用于把A的第2、4列删除,形成A的一个子矩阵.,矩阵的运算,矩阵的代数运算 转置 B=A 加减乘 A+B A-B A*B 左除 AB 即AX=B的解X=A-1B 右除 A/B 即XB=A的解X=AB-1 翻转 fliplr flipud rot90 乘方 AB 点运算 A.*B A./B A.B A.B A. 函数,矩阵处理 trace(A) 迹(对角线元素的和) diag(A) A对角

11、线元素构成的向量; diag(x) 向量x的元素构成的对角矩阵. tril(A) A的下三角部分 triu(A) A的上三角部分 flipud(A) 矩阵上下翻转 fliplr(A) 矩阵左右翻转 reshape(A, m, n) 矩阵A的元素重排成m行n列矩阵,矩阵的MATLAB指令,矩阵分析 rank(A) 秩 det(A) 行列式; inv(A) 逆矩阵; null(A) Ax=0的基础解系; orth(A) A列向量正交规范化 norm(x) 向量x的范数 norm(A) 矩阵A的范数,矩阵的MATLAB指令,MATLAB中矩阵特征值和特征向量的求解方法,矩阵的特征值与特征向量 d=e

12、ig(A) 返回方阵A的全部特征值组成的特征向量d V,D= eig(A) 返回矩阵A的特征值D与特征向量矩阵V,满足 AV=VD poly(A) 求矩阵A的特征多项式,例. 求矩 阵 的特征多项式、特征值和特征向量。 A=4 6 0;-3 -5 0;-3 -6 1 P=poly(A) V,D= eig(A),注:求矩阵A的特征根 D=roots(poly(A) 。,2. 矩阵的相似对角化,例. 化上述矩 阵A为对角阵。 D=V-1AV,矩阵的几种基本变换操作 (1) 通过在矩阵变量后加的方法来表示转置运算 a=10,2,12;34,2,4;98,34,6; a ans = 10 34 98

13、2 2 34 12 4 6,(2) 矩阵求逆 inv(a) ans = -0.0116 0.0372 -0.0015 0.0176 -0.1047 0.0345 0.0901 -0.0135 -0.0045 (3) 矩阵的特征值 u,v=eig(a) u = -0.2960 0.3635 -0.3600 -0.2925 -0.4128 0.7886 -0.9093 -0.8352 0.4985 v = 48.8395 0 0 0 -19.8451 0 0 0 -10.9943,(4) 取出上三角和下三角 triu(a) ans = 10 2 12 0 2 4 0 0 6 tril(a) ans

14、 = 10 0 0 34 2 0 98 34 6 (5)LU 分解 l,u=lu(a) l = 0.1020 0.1500 1.0000 0.3469 1.0000 0 1.0000 0 0 u = 98.0000 34.0000 6.0000 0 -9.7959 1.9184 0 0 11.1000,矩阵的逻辑运算,运算符 & (与) |(或) (非) 结果是一个0-1矩阵。当逻辑表达式的值为真时,赋值1,否则为0 逻辑函数 all :当某列的元素都为真时,返回值为1,否则返回0。最终运算结果为一个0-1行向量 any :当向量中至少有一个元素为真时,返回值为1,否则返回0。最终运算结果为一

15、个0-1行向量 find:用于查找向量中的真元素的下标,返回由所有真元素下标构成的列向量。,矩阵的比较关系,在MATLAB里共有六个关系运算符 大于 =大于等于 = 等于 =不等于 关系运算符将生成一个0-1矩阵,当运算数相应元素为真时,对应位置上生成1,否则为0。,矩阵元素的数据变换,floor(A) 向取整 ceil(A) 向取整 round(A) 四舍五入取整 fix(A) 按离0近的方向取整,下标操作,矩阵下标(按列优先排列) 用两个下标来表示。第i行j列的元素用A(i,j)来表示 用一个下标来表示。对于矩阵按列操作,可用单下标引用A(i) 。 在下标的表达式中使用冒号表示矩阵的一部分。 下标引用从序号1开始。,下标操作,A= 1 2 3 4 5 6 7 8 9 A(4)+A(8),行列删除,B=1 2 3;4 5 6; 7 8 9; B(2,: )= B= 1 2 3 7 8 9,矩阵的尺寸,为了判断矩阵的尺寸,Matlab提供了以下函数: m,n=size(A) %返回矩阵的行数m和列数n M=size(A) %在矩阵M中返回矩阵的行数、列数 len=length(A) %返回矩阵A行数和列数中的最大值,特殊矩阵,单位矩阵

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号