MATLAB经典教程(全).ppt
《MATLAB经典教程(全).ppt》由会员分享,可在线阅读,更多相关《MATLAB经典教程(全).ppt(193页珍藏版)》请在三一办公上搜索。
1、MATLAB基础讲解,DEP.Mathphy of JUSTWang Chengyi,2,MATLAB,1 MATLAB简介,3,Matlab 简介,在欧美各高等院校,Matlab 已经成为线性代数、数值分析、数理统计、自动控制理论、数字信号处理、时间序列分析、动态系统仿真、图像处理等课程的基本教学工具,已成为大学生必须掌握的基本技能之一。Matlab 功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎。,Matlab是一种广泛应用于工程计算及数值分析领域的新型高级语言,自 1984 年推向市场以来,历经二十多年的发展与竞争,现已成为国际公认的最优秀的工程应用开发环境。,4,Matlab
2、 简介,Matlab:Matrix Laboratory 矩阵实验室,Matlab 的发展,1980年,Moler 教授用 Fortran 语言编写了集命令翻译、科学计算于一身的一套交互式软件系统。,1984年,Moler 等成立了 The MathWorks 的公司,用 C 语言完全改写 Matlab,并推出第一个商业版。,增添图形图像处理、符号运算、以及与其他流行软件 的接口功能,使得 Matlab 的功能越来越强大。,到九十年代,在国际上 30 几个数学类科技应用软件中,Matlab 在数值计算方面独占鳌头。,5,目前,Matlab 已成为世界顶尖的数学应用软件,以其强大的工程计算、算法
3、研究、工程绘图、应用程序开发、数据分析和动态仿真等功能,在航空航天、机械制造和工程建筑等领域发挥着越来越重要的作用。就影响而言,至今仍然没有一个别的计算软件可与 Matlab 匹敌。,Matlab 的发行,1984年,Matlab 1.0(DOS版,182K,20多个函数)1992年,Matlab 4.0(93年推出Windows版,加入 simulink)1994年,Matlab 4.2(得到广泛重视和应用)1999年,Matlab 5.3(真正实现32位运算)2002年,Matlab 6.5(采用JIT加速器)2004年,Matlab 7.0自2006年起,Matlab每年更新两次,Mat
4、lab 简介,6,购买(下载)Matlab 软件,Matlab 的安装,插入光盘,自动运行;或点击安装程序 setup.exe,必须安装的部件 Matlab Symbolic Math Toolbox Extended Symbolic Math,这里以 Matlab 为例 自 R2008a 开始增加了激活要求,7,Matlab 的特点与功能,Matlab 具有很强的数值计算功能,Matlab 以矩阵作为数据操作的基本单位,但无需预先指定矩阵维数(动态定维),按照 IEEE 的数值计算标准进行计算,提供十分丰富的数值计算函数,方便计算,提高效率,Matlab 命令与数学中的符号、公式非常接近,
5、可读性强,容易掌握,Matlab 是一个交互式软件系统,输入一条命令,立即就可以得出该命令的结果,8,Matlab 的特点与功能,Matlab 符号计算功能,Matlab 和著名的符号计算语言 Maple 相结合,Matlab 的编程功能,Matlab具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,而且简单易学、编程效率高。通过 Matlab 进行编程完成特定的任务,Matlab 的绘图功能,Matlab提供丰富的绘图命令,很方便实现数据的可视化,9,Matlab 丰富的工具箱(toolbox),Matlab 的特点与功能,根据专门领域中的特殊需要而设计的各种可选工具箱
6、,Matlab 的 Simulink 动态仿真集成环境,提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该系统进行仿真、设置不同的输出方式来观察仿真结果等功能,10,Matlab 的基本用法,Matlab 系统的启动,使用 Windows“开始”菜单 运行 Matlab 系统启动程序 matlab 双击 Matlab 快捷图标,Matlab 系统的退出,在 Matlab 主窗口 File 菜单中选择 Exit Matlab 在 Matlab 命令窗口输入 exit 或 quit 单击 Matlab 主窗口的“关闭”按钮,11,Matlab 的工作界面,命令窗口,当前工作目录,当前工作空
7、间,输入命令的历史记录,命令提示符,12,定义矩阵:直接输入法,矩阵用方括号“”括起,例:A=1 2 3;4 5 6;7 8 9,矩阵同一行中的元素之间用 空格 或 逗号 分隔,矩阵行与行之间用 分号 分开,直接输入法中,分号可以用 回车 代替,例:,矩阵,Matlab 的操作对象是 矩阵,:命令提示符,不用输入 回车:运行所输入的命令,13,矩阵元素可以是任何数值表达式,例:x=-1.3,sqrt(3),(1+2+3)*4/5,矩阵元素赋值,矩阵元素的单独赋值,例:x(5)=abs(x(1),例:x(5)=abs(x(6)?,Matlab自动将向量 x 的长度扩展到 5,并将未赋值部分置零。
8、,14,大矩阵可以把小矩阵作为其元素,矩阵元素赋值,例:A=A;11 12 13,在原矩阵的下方加一行,如何在原矩阵的右边添加一列?,15,单个元素的引用,例:A(2,3),矩阵元素的引用,多个元素的引用:冒号的特殊用法,利用小括弧和元素所在的位置(下标),x(i):向量 x 中的第 i 个元素A(i,j):矩阵 A 中的第 i 行,第 j 列元素,例:x=3:2:1,16,例:x(1:3)A(3,1:3),矩阵元素的引用,A(i:j,m:n)表示由矩阵 A 的第 i 到第 j 行和第 m 到第 n列交叉线上的元素组成的子矩阵。,可利用冒号提取矩阵 的整行或整列。,例:A(1,:)A(:,1:
9、3)A(:,:),17,Matlab帮助系统,18,Matlab 查找命令,lookfor 按指定的关键词查询与之相关的命令,例:lookfor inverse,19,变量命名原则,Matlab 变量,20,分号和续行符的作用,Matlab 变量,若不想在屏幕上输出结果,可以在语句最后加分号,如果语句很长,可用续行符“”(三个点)续行 续行符的前面最好留一个空格,例:,21,变量的查询,Matlab 变量,who 显示工作空间中的所有变量,whos 查看工作空间中变量的详细属性,22,系统预定义变量,Matlab 变量,pi:圆周率,其值为 imag(log(-1),inf,Inf:无穷大,n
10、an,NaN:Not-a-Number,一个不定值,如 0/0,eps:浮点运算相对精度,特殊变量 ans,i,j:虚部单位,即,应尽量避免给系统预定义变量重新赋值!,23,数与算术表达式,Matlab 数值运算,浮点运算的相对误差为 eps,浮点数表示范围为:10-308 10308,复数作为矩阵元素输入时,加号两边不能有空格!,24,数学运算符,+加法,Matlab 数值运算,-减法,*乘法,/和 除法(右除和左除),幂运算,命令分隔符:逗号和分号,25,输出格式,Matlab 的输出,Matlab 以双精度执行所有的运算,运算结果可以在屏幕上输出,同时赋给指定变量;若无指定变量,则系统会
11、自动将结果赋给变量“ans”,Matlab 中数的输出格式可以通过 format 命令指定,format 只改变变量的输出格式,但不会影响变量的值!,26,各种 format 格式,Dr WangZhengsheng-Lecture Notes,27,变量的存储,存储当前工作空间中的变量,save 将所有变量存入文件 matlab.mat,save mydata 将所有变量存入指定文件 mydata.mat,存储指定的变量,save mydata.mat 将所有变量存入文件 mydata.mat,save 文件名 变量名列表,例:save mydata A x z,变量名列表中各变量之间用空格
12、分隔,28,变量的读取,清除当前工作空间中的变量,clear 清除当前工作空间中的所有变量,clear A x 清除指定的变量,Dr WangZhengsheng-Lecture Notes,29,几个小技巧,Matlab 的命令记忆功能:上下箭头键,命令补全功能:Tab 键,可以先输入命令的前几个字符,再按上下键缩小搜索范围,用 Esc 键 删除命令行,Dr WangZhengsheng-Lecture Notes,30,Lecture 2 MATLAB矩阵(数值)运算,Dr WangZhengsheng-Lecture Notes,31,利用函数建立数值矩阵:MATLAB提供了许多生成和操
13、作矩阵的函数,可以利用它们去建立矩阵。例如:reshape函数和diag函数等。reshape函数用于建立数值矩阵。diag函数用于产生对角阵。,利用M文件建立矩阵:对于比较大且比较复杂的矩阵,可以为它专门建立一个M文件。其步骤为:第一步:使用编辑程序输入文件内容。第二步:把输入的内容以纯文本方式存盘(设文件名为 mymatrix.m)。第三步:在MATLAB命令窗口中输入mymatrix,就会自动建立一个名为AM的矩阵,可供以后显示和调用。,建立矩阵,Dr WangZhengsheng-Lecture Notes,32,利用M文件建立矩阵:对于比较大且比较复杂的矩阵,可以为它专门建立一个M文
14、件。其步骤为:第一步:使用编辑程序输入文件内容。第二步:把输入的内容以纯文本方式存盘(设文件名为mymatrix.m)。第三步:在MATLAB命令窗口中输入mymatrix,就会自动建立一个名为AM的矩阵,可供以后显示和调用。子矩阵操作,建立矩阵,Dr WangZhengsheng-Lecture Notes,33,2矩阵的基本运算()矩阵转置()矩阵加和减()矩阵乘法()矩阵除法 Ab=inv(A)*b()矩阵的乘方 a2,Dr WangZhengsheng-Lecture Notes,34,3矩阵的函数 help matfun Matrix functions-numerical line
15、ar algebra.Matrix analysis.norm-Matrix or vector norm.normest-Estimate the matrix 2-norm.rank-Matrix rank.det-Determinant.trace-Sum of diagonal elements.null-Null space.orth-Orthogonalization.rref-Reduced row echelon form.subspace-Angle between two subspaces.,Dr WangZhengsheng-Lecture Notes,35,3矩阵的函
16、数 Linear equations.and/-Linear equation solution;use help slash.inv-Matrix inverse.rcond-LAPACK reciprocal condition estimator cond-Condition number with respect to inversion.condest-1-norm condition number estimate.normest1-1-norm estimate.chol-Cholesky factorization.cholinc-Incomplete Cholesky fac
17、torization.lu-LU factorization.luinc-Incomplete LU factorization.qr-Orthogonal-triangular decomposition.lsqnonneg-Linear least squares with nonnegativity constraints.pinv-Pseudoinverse.lscov-Least squares with known covariance.,36,3矩阵的函数 Eigenvalues and singular values.eig-Eigenvalues and eigenvecto
18、rs.svd-Singular value decomposition.gsvd-Generalized singular value decomposition.eigs-A few eigenvalues.svds-A few singular values.poly-Characteristic polynomial.polyeig-Polynomial eigenvalue problem.condeig-Condition number with respect to eigenvalues.hess-Hessenberg form.qz-QZ factorization for g
19、eneralized eigenvalues.schur-Schur decomposition.,37,3矩阵的函数 Matrix functions.expm-Matrix exponential.logm-Matrix logarithm.sqrtm-Matrix square root.funm-Evaluate general matrix function.Factorization utilities qrdelete-Delete a column or row from QR factorization.qrinsert-Insert a column or row into
20、 QR factorization.rsf2csf-Real block diagonal form to complex diagonal form.cdf2rdf-Complex diagonal form to real block diagonal form.balance-Diagonal scaling to improve eigenvalue accuracy.planerot-Givens plane rotation.cholupdate-rank 1 update to Cholesky factorization.qrupdate-rank 1 update to QR
21、 factorization.,Dr WangZhengsheng-Lecture Notes,38,4建立矩阵的函数常用函数有:eye(size(A)产生与A矩阵同阶的单位矩阵zeros(m,n)产生0矩阵ones(m,n)产生幺矩阵 rand(m,n)产生随机元素的矩阵Size(a)返回包含两个元素的向量。Length(a)返回向量的长度。,Dr WangZhengsheng-Lecture Notes,39,常见矩阵生成函数,Dr WangZhengsheng-Lecture Notes,40,5数组运算(1)数组的加和减(2)数组的乘和除(3)数组的乘方,Dr WangZhengshe
22、ng-Lecture Notes,41,6 应用举例,1、行列式计算;2、求解线性方程组;3、解特征值问题,Dr WangZhengsheng-Lecture Notes,42,Lecture 3 MATLAB图形与可视化(Graphic),Dr WangZhengsheng-Lecture Notes,43,Lecture 3 Matlab图形可视化,基本要求(1)掌握图形窗口的创建与控制,以及图形窗口的基本操作;(2)熟练掌握二维和三维绘图基本的命令、线型控制;(3)初步掌握用特殊的图形来表现特殊数据的性质,如面积图、直方 图、饼图等。(4)掌握坐标轴的控制和图形标注命令及其用法。,Dr
23、WangZhengsheng-Lecture Notes,44,Lecture 3 Matlab图形可视化,A、二维平面图形与坐标系 1.几个基本的绘图命令 a.线性坐标曲线 plot 函数命令 plot 是 MATLAB 二维曲线绘图中最简单、最重要、使用最广泛的一个线性绘图函数。它可以生成线段、曲线和参数方程曲线的函数图形。命令格式:plot(X,Y)plot(x1,y1,x2,y2,):综合调用方式,Dr WangZhengsheng-Lecture Notes,45,Lecture 3 Matlab图形可视化,用命令 plot(x,y)绘制函数 y=cos(x)在两个周期内的图形。x=
24、0:0.01:2*pi;y=cos(x);plot(x,y)在同一图形窗口中用命令 plot(x,y)绘出正弦余弦函数的图形。x=0:0.01:2*pi;y=sin(x);cos(x);plot(x,y),Dr WangZhengsheng-Lecture Notes,46,Lecture 3 Matlab图形可视化,二维函数曲线专用命令 fplot用plot绘图在确定自变量的取值间隔时,一般采用平均间隔,有时会因某处 间距太大,而不能反映出函数的变化情况。fplot是绘制函数 y=f(x)图形的专用命令,它的数据点是自适应产生的,对那些导数变化较大的函数,用 fplot 函数绘出的曲线比等分
25、取点所画出的曲线更加接近真实。fplot 函数命令的调用格式为:X,Y=fplot(fun,lims)fun:函数名字符串;lims:定义 x 的取值区间,lims=xmin,xmax;二维函数曲线专用命令 ezplot,Dr WangZhengsheng-Lecture Notes,47,Lecture 3 Matlab图形可视化,2.线型和颜色 plot 函数可以设置曲线的线段类型、定点标记和线段颜色。,常用的线段、颜色与定点标记参数,Dr WangZhengsheng-Lecture Notes,48,调用格式:plot(x,y,s),s 为类型说明参数,是字符串。s 字符串可以是三种类
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 经典 教程

链接地址:https://www.31ppt.com/p-5439280.html