数学软件Matlab——快速入门完整版_第1页
数学软件Matlab——快速入门完整版_第2页
数学软件Matlab——快速入门完整版_第3页
数学软件Matlab——快速入门完整版_第4页
数学软件Matlab——快速入门完整版_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2本讲主要内容本讲主要内容n Matlab 介绍介绍n Matlab 的基本用法的基本用法 3数学软件数学软件l 程序设计语言:程序设计语言:BASIC,Pascal,FORTRAN,C,.l 数值计算软件:数值计算软件: Matlab,Scilab,Octave,.l 符号计算软件:符号计算软件:Mathematica,Maple,.l 交互式数学软件:交互式数学软件:MathCAD,Calcwin,.l 统计软件:统计软件:SAS,Excel,SPSS,Minitab,.l 数学规划软件:数学规划软件:Lingo,Lindo,.l 工程计算工程计算软件:软件:Ansys,Fluent,Ph

2、oenics,. l 其它:其它:几何画板,几何画板,MathLab, .l 数学相关软件数学相关软件4本讲主要内容本讲主要内容n Matlab 介绍介绍n Matlab 的基本用法的基本用法 5Matlab 介绍介绍l 在欧美各高等院校,在欧美各高等院校,Matlab 是线性代数、数值分析、数理统是线性代数、数值分析、数理统计、自动控制、数字信号处理、动态系统仿真、图像处理等课计、自动控制、数字信号处理、动态系统仿真、图像处理等课程的基本教学工具,已成为程的基本教学工具,已成为大学生必须掌握的基本技能之一。大学生必须掌握的基本技能之一。l Matlab是一种广泛应用于是一种广泛应用于工程计算

3、工程计算及及数值分析数值分析领域的新型高级语言,自领域的新型高级语言,自 1984 年推向市场以来,经过多年的发展与竞年推向市场以来,经过多年的发展与竞争,现已成为国际公认的最优秀的工程争,现已成为国际公认的最优秀的工程应用开发环境。应用开发环境。Matrix Laboratory 矩阵实验室矩阵实验室Matlab6Matlab 的发展的发展l Matlab 的发展的发展l 1980年,年,Moler 教授用教授用 Fortran 语言编写了集语言编写了集命令翻译命令翻译、 科学计算科学计算于一身的一套交互式软件系统。于一身的一套交互式软件系统。l 1984年,年,Moler 等成立了等成立了

4、 The MathWorks 的公司,用的公司,用 C 语言语言完全改写完全改写 Matlab,并推出第一个商业版。并推出第一个商业版。l 到九十年代,在国际上到九十年代,在国际上 30 几个数学类科技应用软件中,几个数学类科技应用软件中, Matlab 在数值计算方面独占鳌头。在数值计算方面独占鳌头。l 目前,目前,Matlab 已成为世界顶尖的数学应用软件就影响而言,已成为世界顶尖的数学应用软件就影响而言, 至今仍然没有一个别的计算软件可与至今仍然没有一个别的计算软件可与 Matlab 匹敌。匹敌。7l Matlab 的发行版本的发行版本1984年,年,Matlab 1.0 (DOS版,版

5、,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每年更新两次每年更新两次目前最新版为目前最新版为 R2017a (2015年年3月发布)月发布)Matlab 的发展的发展8Matlab 的功能与特点的功能与特

6、点l Matlab 具有很强的数值计算功能具有很强的数值计算功能l Matlab 以以矩阵矩阵作为数据操作的基本单位,作为数据操作的基本单位, 但无需预先指定矩阵维数(但无需预先指定矩阵维数(动态定维动态定维)l 按照按照 IEEE 的数值计算标准进行计算的数值计算标准进行计算l 提供十分丰富的数值计算函数,方便计算,提高效率提供十分丰富的数值计算函数,方便计算,提高效率l Matlab 命令命令与数学中的符号、公式非常接近与数学中的符号、公式非常接近, 可读性强,容易掌握可读性强,容易掌握l Matlab 是一个交互式软件系统是一个交互式软件系统l 输入一条命令,立即就可以得到该命令的运行结

7、果输入一条命令,立即就可以得到该命令的运行结果9Matlab 的特点与功能的特点与功能l Matlab 的符号计算功能的符号计算功能Matlab 可以进行一些常见的符号计算可以进行一些常见的符号计算l Matlab 的编程功能的编程功能Matlab具有程序结构控制、函数调用、数据结构、输入输具有程序结构控制、函数调用、数据结构、输入输出、面向对象等程序语言特征,且出、面向对象等程序语言特征,且简单易学、编程效率高简单易学、编程效率高l Matlab 的绘图功能的绘图功能Matlab提供丰富的绘图命令,提供丰富的绘图命令,很方便实现数据的可视化很方便实现数据的可视化10l Matlab 丰富的工

8、具箱(丰富的工具箱(toolbox)Matlab 的特点与功能的特点与功能根据专门领域中的特殊需要而设计的各种可选工具箱根据专门领域中的特殊需要而设计的各种可选工具箱l Matlab 的的 Simulink 动态仿真集成环境动态仿真集成环境提供建立系统模型、选择仿真参数和数值算法、启动仿提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该系统进行仿真、设置不同的输出方式来观察真程序对该系统进行仿真、设置不同的输出方式来观察仿真结果等功能仿真结果等功能Symbolic Math PDEOptimizationSignal processImage ProcessStatisticsCont

9、rol SystemSystem Identification 11l 获取获取 Matlab 软件软件Matlab 的安装的安装l 插入光盘,自动运行;插入光盘,自动运行; 或点击安装程序或点击安装程序 setup.exen 本课程必须安装的部件本课程必须安装的部件 Matlab Symbolic Math Toolboxl 详细安装方法见课程主页(以详细安装方法见课程主页(以R2009a为例)为例)12本讲主要内容本讲主要内容n Matlab 介绍介绍n Matlab 的基本用法的基本用法 13Matlab 的基本用法的基本用法l Matlab 的启动的启动l 使用使用 Windows “

10、开始开始” 菜单菜单l 运行运行 Matlab 系统启动程序系统启动程序 matlabl 双击双击 Matlab 快捷图标快捷图标l Matlab 的退出的退出l 在在 Matlab 主窗口主窗口 File 菜单中选择菜单中选择 Exit Matlabl 在在 Matlab 命令窗口输入命令窗口输入 exit 或或 quitl 单击单击 Matlab 主窗口的主窗口的“关闭关闭”按钮按钮14Matlab 的工作界面的工作界面当前工作当前工作空间空间当前目录当前目录中的文件中的文件命令窗口命令窗口命令命令历史记录历史记录命令行提示符命令行提示符当前当前目录目录15l Matlab 变量的命名规则

11、变量的命名规则Matlab 变量变量l 以以字母开头字母开头 l 后面可以跟后面可以跟 字母字母、数字数字 和和 下划线下划线l 长度一般不要超过长度一般不要超过 63 个字符个字符l 字母区分字母区分 大小大小 写写l Matlab 语句的一般形式语句的一般形式变量变量 = 表达式表达式l 表达式是用运算符将有关运算量连接起来的式子表达式是用运算符将有关运算量连接起来的式子l 计算表达式的结果,并赋给赋值号计算表达式的结果,并赋给赋值号“=”左边的变量左边的变量Matlab 命令的执行:命令的执行:回车回车16l 查看已定义的变量:查看已定义的变量:who、whos变量的查看变量的查看l 清

12、除变量:清除变量:clearwho显示当前工作空间中的所有变量显示当前工作空间中的所有变量whos显示所有变量的详细属性显示所有变量的详细属性clear清除工作空间中的所有变量清除工作空间中的所有变量clear all清除所有变量,包括全局变量、函数链接等清除所有变量,包括全局变量、函数链接等clear 变量名变量名 清除指定的变量清除指定的变量17l 特殊变量:特殊变量: ans注:应尽量避免给系统预定义变量重新赋值!注:应尽量避免给系统预定义变量重新赋值!l 系统预定义的变量系统预定义的变量系统预定义系统预定义变量变量pi圆周率圆周率 ,其值为,其值为 imag(log(-1)inf, I

13、nf无穷大无穷大NaN, nanNot-a-Number,一个不定值,如,一个不定值,如 0/0eps浮点运算相对精度浮点运算相对精度i, j虚部单位虚部单位18Matlab 数值运算数值运算l 默认是双精度实数,默认是双精度实数,可用浮点数或科学计数法表示可用浮点数或科学计数法表示例:例:3, 0.4, 1.603e-12l 浮点运算的浮点运算的相对误差为相对误差为 eps,大约为大约为 2.2 10-16l 浮点数表示范围为浮点数表示范围为:10-308 10308l 复数的输入复数的输入例:例:z=3+4i (4 与与 i 之间不能有空格之间不能有空格)l Matlab 中的数与算术表达

14、式中的数与算术表达式注:复数作为矩阵元素输入时,加号两边不要加空格注:复数作为矩阵元素输入时,加号两边不要加空格! !19l 命令分隔符命令分隔符l 算术运算算术运算 Matlab 数值运算数值运算+ - * 加,减,乘,幂加,减,乘,幂/ 右除,左除右除,左除l 一行可以写多个语句,语句间用一行可以写多个语句,语句间用逗号或分号逗号或分号隔开隔开l 若不想在屏幕上输出结果,可以在语句最后加分号若不想在屏幕上输出结果,可以在语句最后加分号 l 如果语句很长,可用如果语句很长,可用续行符续行符 “”(三个点)续行(三个点)续行 续行符的前面最好留一个空格续行符的前面最好留一个空格l 分号的作用分

15、号的作用l 续行符续行符20l 定义矩阵:直接输入法定义矩阵:直接输入法l 矩阵用方括号矩阵用方括号 “ ” 括起括起l 矩阵同一行中的元素之间用矩阵同一行中的元素之间用 空格空格 或或 逗号逗号 分隔分隔l 矩阵行与行之间用矩阵行与行之间用 分号分号 分开,也可以用分开,也可以用 回车回车 代替代替A=1 2 3; 4 5 6; 7 8 9矩阵的输入矩阵的输入l Matlab 的操作对象的操作对象 矩阵矩阵例:例:21l 矩阵元素可以是任何数值表达式矩阵元素可以是任何数值表达式例:例:x=-1.3, sqrt(3), (1+2+3)*4/5矩阵元素赋值矩阵元素赋值l 矩阵元素的单独赋值矩阵元

16、素的单独赋值例:例:x(2)=6.8例:例:x(5)=abs(x(6) ?动态定维功能:动态定维功能:自动扩展向量的长度,自动扩展向量的长度, 并将没有赋值的部分置零并将没有赋值的部分置零 例:例:x(5)=abs(x(1)22l 大矩阵可以把小矩阵作为其元素大矩阵可以把小矩阵作为其元素矩阵元素赋值矩阵元素赋值例:例: A=A ; 11 12 13在原矩阵的下方加一行在原矩阵的下方加一行思考:思考:如何在原矩阵的右边添加一列?如何在原矩阵的右边添加一列?l 空矩阵空矩阵例:例: B=23l 单个元素的引用单个元素的引用例:例: x=A(2,3)+A(1,2)矩阵元素的引用矩阵元素的引用x(i)

17、 向量向量 x 中的第中的第 i 个元素个元素A(i,j)矩阵矩阵 A 中的第中的第 i 行,第行,第 j 列元素列元素l 多个元素的引用:冒号的特殊用法多个元素的引用:冒号的特殊用法a:b:cl 产生一个由等差序列组成的向量产生一个由等差序列组成的向量l a 是首项,是首项,b 是公差,是公差,c 确定最后一项确定最后一项l 若若 b = 1,则则 b 和其前面的冒号可以省略和其前面的冒号可以省略例:例:x=1:2:5 y=1:2:6例:例:x=2:1:5 y=2:5例:例:x=3:1:024例:例:y=x(1:3)矩阵元素的引用矩阵元素的引用l 多个元素的引用(续)多个元素的引用(续)x(

18、i:j) 向量向量 x 中的第中的第 i 到第到第 j 个元素个元素A(i:j,m:n)由第由第 i 至至 j 行和第行和第 m 至至 n 列组成的列组成的子矩阵子矩阵例:例:B=A(2:3,1:3) y=A(1,1:3)x(i:end) 向量向量 x 中的第中的第 i 个到最后一个元素个到最后一个元素A(i:end,m:n)A(i:j,m:end)第第 i 行到最后一行与行到最后一行与 m 至至 n 列(子矩阵)列(子矩阵)第第 m 列到最后一列与列到最后一列与 i 至至 j 行(子矩阵)行(子矩阵)25矩阵元素的引用矩阵元素的引用l 多个元素的引用(续)多个元素的引用(续)A(:,k) 矩

19、阵的第矩阵的第 k 列列A(i,:)矩阵的第矩阵的第 i 行行A(i:j,:)矩阵的第矩阵的第 i 行到第行到第 j 行行A(:,m:n)矩阵的第矩阵的第 m列到第列到第 n 列列A(:,:)整个矩阵整个矩阵x(:)取向量的所有元素,并按取向量的所有元素,并按列向量列向量方式输出方式输出A(:)将矩阵的所有元素将矩阵的所有元素按列按列排成一个排成一个列向量列向量26矩阵元素的引用矩阵元素的引用l 多个元素的引用:不连续元素的选取多个元素的引用:不连续元素的选取A(i1, i2, ., ip,j1, j2, ., jq) 矩阵第矩阵第 i1, i2, ., ip 行和第行和第 j1, j2, .

20、, jq 列组成的子矩阵列组成的子矩阵例:例:A(1,3,4, 2,3)例:例:A(1,4,3, 2,3)l 删除指定的行或列删除指定的行或列A(i,:)= 删除第删除第 i 行行A(:,j)=删除第删除第 j 列列27矩阵基本运算矩阵基本运算l 矩阵的加减矩阵的加减:对应分量进行运算对应分量进行运算l 矩阵的普通乘法矩阵的普通乘法参与加减运算的矩阵具有参与加减运算的矩阵具有 相同的维数!相同的维数!A=1,2; 3,4; B=5,6; 7,8C=A+B D=B-A例例:参与运算的矩阵须满足线性代数中矩阵相乘的原则!参与运算的矩阵须满足线性代数中矩阵相乘的原则!A=1,2,3; 4,5,6;

21、B= 2,1; 4,3C=B*A例例:28矩阵基本运算矩阵基本运算l 矩阵的除法:矩阵的除法:若若 A 可逆方阵,则可逆方阵,则AB A 的逆左乘的逆左乘 B inv(A)*BB/A A 的逆右乘的逆右乘 B B*inv(A)l 矩阵的幂:矩阵的幂:若若 A 是方阵,是方阵,p 是正整数,则是正整数,则Ap = A 的的 p 次幂,即次幂,即 p 个个 A 相乘相乘 右除右除左除左除l 矩阵的转置与共轭转置矩阵的转置与共轭转置A共轭转置共轭转置A.普通转置,不取共轭,普通转置,不取共轭,点与单引号之间不能有空格点与单引号之间不能有空格A = 1, 2-3i; 3, 1+4iB = AC = A

22、.例例:29翻转与旋转翻转与旋转l 矩阵的翻转与旋转矩阵的翻转与旋转例例:注意矩阵旋转与转置的区别注意矩阵旋转与转置的区别!fliplr(A)左右左右翻转翻转flipud(A)上下翻转上下翻转rot90(A)rot90(A,k)逆时针旋转逆时针旋转 90 度度逆时针旋转逆时针旋转 k90 度度A = 1 2 3;4 5 6B = fliplr(A)C = flipud(A)D = rot90(A)E = rot90(A,-1)30改变矩阵的形状改变矩阵的形状l 改变矩阵的形状:改变矩阵的形状:reshape(A,m,n)将矩阵元素按将矩阵元素按 列方向列方向 进行重新排列成一个进行重新排列成一

23、个 mn 的新矩阵的新矩阵新矩阵的元素个数必须与原矩阵元素个数相等!新矩阵的元素个数必须与原矩阵元素个数相等!A=1,2,3; 4,5,6; 7,8,9; 10,11,12B=reshape(A,4,3)例例:C=reshape(A,2,6)C=reshape(A,5,2)31查看矩阵的大小查看矩阵的大小l 查看矩阵的大小:查看矩阵的大小:size、lengthsize(A)返回矩阵返回矩阵 A 的行数和列数的行数和列数size(A,1)返回矩阵返回矩阵 A 的行数的行数size(A,2)返回矩阵返回矩阵 A 的列数的列数length(x)length(X)若若 x 是向量,则返回是向量,则返

24、回 x 的长度的长度若若 X 是矩阵,则返回行数和列数中大的一个是矩阵,则返回行数和列数中大的一个numel(A)返回返回 A 的的元素的个数元素的个数A=1,2,3; 4,5,6size(A)size(A,1)size(A,2)length(A), numel(A)x=1:5; length(x)例例:32Matlab帮助系统帮助系统l 如何寻找帮助如何寻找帮助help 显示指定命令的简短使用说明显示指定命令的简短使用说明doc以网页形式显示完整的使用帮助以网页形式显示完整的使用帮助help sizedoc size例例:l 查找命令查找命令lookfor 按指定的关键词查询与之相关的命令按指定的关键词查询与之相关的命令which显示命令或函数所在的目录显示命令或函数所在的目录l 其它相关命令其它相关命令cd、dir、more更多更多 Matlab 命令,参见课程主页命令,参见课程主页33几个小技巧几个

温馨提示

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

评论

0/150

提交评论