《MATLAB第一节初步.ppt》由会员分享,可在线阅读,更多相关《MATLAB第一节初步.ppt(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数学实验数学实验 第一节第一节 MATLAB MATLAB初步初步 主讲人:主讲人:田献珍田献珍 Q Q Q Q :46545640 46545640 Tel :0772-3517084 Tel :0772-3517084广西工学院鹿山学院1参考书目数学建模与数学实验数学建模与数学实验赵静,但琦主编,高等教育出版社,赵静,但琦主编,高等教育出版社,2008.2008.数值计算数值计算张军主编,清华大学出版社,张军主编,清华大学出版社,2008.7.2008.7.数学建模及其基础知识详解数学建模及其基础知识详解费浦生,羿旭明主编,武汉大费浦生,羿旭明主编,武汉大 学出版社,学出版社,2006.5
2、.2006.5.数学建模与数学实验数学建模与数学实验张圣勤主编,复旦大学出版社,张圣勤主编,复旦大学出版社,2008.9.2008.9.MATLAB 7.0MATLAB 7.0张圣勤主编,机械工业出版社,张圣勤主编,机械工业出版社,2006.3.2006.3.网络资源:网络资源:2教学内容广西工学院鹿山学院广西工学院鹿山学院第一节第一节 MATLAB 初步初步 第二节第二节 符号计算符号计算第三节第三节 绘图绘图第四节第四节 程序设计程序设计第五节第五节 数值计算数值计算第六节第六节 插值、拟合插值、拟合3一、一、MATLAB MATLAB 概述概述第一讲第一讲 MATLAB MATLAB 初
3、步初步 二、基本(查询)命令二、基本(查询)命令 三三 、基本赋值和运算、基本赋值和运算4一一.MATLAB.MATLAB概述概述51.MATLAB 1.MATLAB 概述概述v1984年由美国 MathWorks 公司推向市场;v英文 MATrix LABorotory(矩阵实验室)缩写;v广泛应用于工程计算、数值分析领域;v功能强大、简单易学、编程效率高;v线性代数、自动控制理论、数字信号处理、时间序列分析、动态系统仿真、图像处理等课程的基本教学工具.1.MATLAB 概述概述62.MATLAB 2.MATLAB 特点特点(1 1)数值计算和符号计算功能)数值计算和符号计算功能v微积分:微
4、分、积分、求极限、泰勒展开、级数求和;微积分:微分、积分、求极限、泰勒展开、级数求和;v代数:求逆、特征值、行列式、代数方程解的化简、数学代数:求逆、特征值、行列式、代数方程解的化简、数学表达式的指定精度;表达式的指定精度;v数值分析:插值和拟合、数值微分和积分、函数逼近、代数值分析:插值和拟合、数值微分和积分、函数逼近、代数方程和微分方程的数值解和符号解。数方程和微分方程的数值解和符号解。v统计计算:均值、方差、概率、参数估计、假设检验、相统计计算:均值、方差、概率、参数估计、假设检验、相关性和回归分析、统计绘图、随机数产生器等;关性和回归分析、统计绘图、随机数产生器等;v优化问题的求解:线
5、性规划、非线性规划等问题的求解;优化问题的求解:线性规划、非线性规划等问题的求解;2.MATLAB 特点特点7(2 2)MATLAB MATLAB语言语言v命令行的交互式操作、程序方式工作;命令行的交互式操作、程序方式工作;v很容易地实现很容易地实现C C或或FORTRANFORTRAN语言的几乎全部功能。语言的几乎全部功能。(3 3)图形功能图形功能v 低级图形命令:图形句柄操作;低级图形命令:图形句柄操作;v 高级图形命令:图形命令;高级图形命令:图形命令;v 高高级级图图形形命命令令可可用用于于 绘绘制制二二维维、三三维维图图形形,并并可可进进行行图图形和坐标的标识、视角和光照设计、色彩
6、精细控制等等。形和坐标的标识、视角和光照设计、色彩精细控制等等。2.MATLAB 特点特点8(4 4)应用工具箱)应用工具箱工具箱分为两大类:功能性工具箱和学科性工具箱工具箱分为两大类:功能性工具箱和学科性工具箱v 功能性工具箱:功能性工具箱:主要用来扩充其符号计算功能、可视建主要用来扩充其符号计算功能、可视建模仿真功能及文字处理功能等;模仿真功能及文字处理功能等;v 学科性工具箱:学科性工具箱:专业性比较强,如控制系统工具箱、信专业性比较强,如控制系统工具箱、信号处号处 理工具箱、神经网络工具箱、最优化工具箱、金融工理工具箱、神经网络工具箱、最优化工具箱、金融工具箱等,用户可以直接利用这些工
7、具箱进行相关领域的科学具箱等,用户可以直接利用这些工具箱进行相关领域的科学研究。研究。2.MATLAB 特点特点9CPUCPU:最低要求PentiumII(奔腾II),或更高。内存:内存:最好是256M或更多。硬盘:硬盘:至少预留200M以上的空间,或更多。系统:系统:windows98/NT/2000/XP或其他相关产品。预装软件:预装软件:(1)安装Office97/2000/XP,用予运行MATLAB中与EXCEL相关的软件。(2)visualC/C+6.0/7.0或Fortran5.0 (3)PDF文件浏览器。3.MATLAB3.MATLAB运行环境运行环境10(一)(一)MATLAB
8、MATLAB的启动的启动(1 1)通通过过“开开始始”按按钮钮,选选择择“程程序序”菜菜单单项项,然然后后打打开开“MATLAB”“MATLAB”菜单中的菜单中的“MATLAB”“MATLAB”程序;程序;(2 2)建建立立快快捷捷方方式式的的功功能能,将将MATLABMATLAB程程序序以以快快捷捷方方式式放放在桌面上。只要在桌面上双击该图标即可启动在桌面上。只要在桌面上双击该图标即可启动MATLABMATLAB。4.MATLAB4.MATLAB集成环境集成环境11(二)(二)MATLAB MATLAB命令窗口命令窗口(1)菜单栏)菜单栏 菜菜单单栏栏共共包包含含FileFile、EditE
9、dit、WindowWindow、debugdebug、desktopdesktop和和HelpHelp六项。六项。File菜单项菜单项:New:用于建立用于建立M M文件、图形窗口。文件、图形窗口。M-FileM-File:打开打开M M文件编辑器。文件编辑器。FigureFigure:打开一个空白的图形窗口。打开一个空白的图形窗口。VariableVariable:打开工作空间窗口。打开工作空间窗口。ModelModel:打开创建新模型窗口。打开创建新模型窗口。GUI GUI:打开创建新图形用户界面对话框。打开创建新图形用户界面对话框。4.MATLAB集成环境集成环境12 Open:打开一
10、个已经建立的打开一个已经建立的M M文件文件 Close Command Window:关闭当前命令窗口关闭当前命令窗口 Import data:将文件中的数据导入到将文件中的数据导入到 MATLAB MATLAB 工作空间工作空间 Save Workspace As:把把当当前前工工作作空空间间的的所所有有变变量量用用后后缀缀为为.mat.mat的文件保存起来的文件保存起来 Set Path:更改更改 MATLAB MATLAB 执行命令时的搜索路径执行命令时的搜索路径 Page Setup:设置页面布局、页眉、页脚中所用的字体等设置页面布局、页眉、页脚中所用的字体等 Print:设置打印参
11、数设置打印参数 Print Selection:打印窗口中选定的内容打印窗口中选定的内容 4.MATLAB集成环境集成环境13EditEdit菜单项:菜单项:Undo、Redo、Cut、Copy和Paste等:分分别别用用于于撤撤销销、重复上一次操作、剪切、复制和粘贴。重复上一次操作、剪切、复制和粘贴。Paste Special:将将存存放放在在缓缓冲冲区区内内的的内内容容按按照照一一定定的的格格式式存放在剪贴板变量中。存放在剪贴板变量中。Select All:用于选定当前窗口中所有内容。用于选定当前窗口中所有内容。Delete:删除预先选定的内容。删除预先选定的内容。Find:当前目录中的当
12、前目录中的M-M-文件中查找相应内容。文件中查找相应内容。Clear Command Window:清清除除命命令令窗窗口口中中显显示示内内容容,但不会删除工作空间中内容。(命令:但不会删除工作空间中内容。(命令:clcclc)Clear Command History:清除历史记录。清除历史记录。4.MATLAB集成环境集成环境14Debug菜单菜单Open M-File:打开一个要调试的打开一个要调试的M-文件文件Step:逐个语句运行逐个语句运行Step In:进入下一个语句进入下一个语句Step Out:退出调试退出调试Clear breakpoints in all file:清除所
13、有文件断点清除所有文件断点Stop if errors/warning:遇到错误或警告断点停止运行遇到错误或警告断点停止运行4.MATLAB集成环境集成环境15Desktop菜单菜单 Desktop layout:选择窗口布局选择窗口布局 Default:默认布局默认布局 All tabbed:同时显示同时显示5个窗口个窗口 Save layout:存储版式存储版式 Organize layout:组织版式,由用户自己定义组织版式,由用户自己定义 profiler:评述器口评述器口4.MATLAB集成环境集成环境16WindowsWindows菜单菜单 Close all Documents:
14、关闭所有打开的编辑窗口,关闭所有打开的编辑窗口,当某一个窗口被打开时,当某一个窗口被打开时,MATLABMATLAB会自动在会自动在WindowsWindows这这一栏产生这个窗口的名称。一栏产生这个窗口的名称。HelpHelp菜单菜单Demos:打开功能演示。打开功能演示。4.MATLAB集成环境集成环境17命令窗口的工具栏命令窗口的工具栏 工作空间新建 剪切 粘贴 浏览器 新仿真模型 打开 复制 撤消 路径浏览器 帮助4.MATLAB集成环境集成环境 18【例】【例】在在MATLABMATLAB命令窗口输入命令:命令窗口输入命令:键入键入 3*4 3*4 回车回车 ans=12 ans=1
15、2。Command windows 命令窗口的命令编辑区命令窗口的命令编辑区 键入命令并按下回车键键入命令并按下回车键后,后,MATLAB就会执行所输入就会执行所输入的命令,并在命令后面给出计算结果。的命令,并在命令后面给出计算结果。4.MATLAB集成环境集成环境19 二、基本(查询)命令二、基本(查询)命令201.1.help+命令名命令名/函数名函数名 帮助命令,显示系统中所有相关项目帮助命令,显示系统中所有相关项目 例如:help plot helpcov2.2.What+目录名目录名 显示该目录内容命令显示该目录内容命令 例如:what Matlab 显示Matlab目录下的所有M-
16、文件。213 3Type+M-M-文件名文件名 显示显示当前工作目录下某当前工作目录下某 M-M-文件内容命令文件内容命令 例如:type chase14 4Lookfor+关键字关键字 寻找命令或字符串的功能寻找命令或字符串的功能例如:lookfor clc lookfor acos 225 5Which+命令命令/函数名函数名 显示函数所在的文件位置,给出路径显示函数所在的文件位置,给出路径例如:which chase1 which path6 6Load+.txt.txt数据数据 or or 变量名变量名 将记事本中的数据加载到工作空间中将记事本中的数据加载到工作空间中例如:D=load
17、(F:d.txt)Note:d.txt中必须是纯数据格式 237.从读从读EXCEL取数据取数据filename,pathname=uigetfile(*.xls);%获取源文件名、文件路径,在变量工作空间中有显示file=pathname filename;%定义该文件名x=xlsread(file);%定义变量名,并读取数据y=x(:,6);%抽取第6列数据247 7who,whos 显示当前变量显示当前变量 whos命令更详细。8 8save +变量名变量名 保存结果命令保存结果命令 例如:save D 以D.mat格式将变量存入当前工作目录下例259 9Disp(变量名)(变量名)显示
18、文本或变量内容命令显示文本或变量内容命令 例如:x=1 2 3 disp(x)y=aaaaaaa disp(y)1010Dir 显示当前目录下所有内容目录显示当前目录下所有内容目录 例如:dir26三三.基本赋值和基本赋值和运算运算广西工学院鹿山学院广西工学院鹿山学院27(一)变量名、(一)变量名、特殊变量表特殊变量表MATLABMATLAB中变量的中变量的命名规则命名规则是:是:(1 1)变量名必须是)变量名必须是不含空格不含空格的单个词;的单个词;(2 2)变量名)变量名区分大小写区分大小写;(3 3)变量名最多)变量名最多不超过不超过1919个个字符;字符;(4 4)变量名)变量名必须以
19、字母打头必须以字母打头,之后可以是,之后可以是 任意字母、数字或下划线,变量名中任意字母、数字或下划线,变量名中 不允许使用标点符号不允许使用标点符号.广西工学院鹿山学院广西工学院鹿山学院28比如:比如:键入 lamda=27 回车 lamda=27 键入 beta=40 回车 beta=40 键入 exp(lamda)回车 ans=5.3205e+011 键入 sin(beta)回车 ans=0.7451 键入 tan(lamda*beta)回车 ans=-0.8558 (一)变量名、(一)变量名、特殊变量表特殊变量表29特殊变量表特殊变量表(一)变量名、(一)变量名、特殊变量表特殊变量表3
20、0关系运算符关系运算符(一)变量名、(一)变量名、特殊变量表特殊变量表31比如:比如:键入 lamda=27n 回车 lamda=27 键入 beta=40 回车 beta=40 键入 lamda/beta 回车 ans=0.6750 键入 lamdabeta 回车 ans=1.4815 键入 tan(lamda*beta).+lamdabeta 回车 ans=0.6256(一)变量名、(一)变量名、特殊变量表特殊变量表32常见数学函数常见数学函数(一)变量名、(一)变量名、特殊变量表特殊变量表33NoteNote:在算术、关系、逻辑运算中,算术运算优先级最高,:在算术、关系、逻辑运算中,算术
21、运算优先级最高,逻辑运算优先级最低。逻辑运算优先级最低。(一)变量名、(一)变量名、特殊变量表特殊变量表34v 矩矩阵阵是是MATLABMATLAB最最基基本本的的数数据据对对象象,MATLABMATLAB的的大大部部分分运运算算或或命命令令都都是是在在矩矩阵阵运运算算的的意意义义下下执执行的。行的。v 在在MATLABMATLAB中中,不不需需对对矩矩阵阵的的维维数数和和类类型型进进行行说说明明,MATLABMATLAB会会根根据据用用户户所所输输入入的的内内容容自自动动进进行配置行配置。广西工学院鹿山学院广西工学院鹿山学院(二)(二)矩阵变量矩阵变量 35 1.建立矩阵方法:建立矩阵方法:
22、直接输入法、利用直接输入法、利用M M文件建立矩阵文件建立矩阵 (1 1)直接输入法:)直接输入法:将矩阵的元素用将矩阵的元素用方括号方括号括起来,括起来,按矩阵行的顺序输入各元素,同一行的各元素之间按矩阵行的顺序输入各元素,同一行的各元素之间用空格或用空格或逗号逗号分隔,不同行的元素之间用分隔,不同行的元素之间用分号分号分隔。分隔。(也可以用回车键代替分号也可以用回车键代替分号)例例1 1 键入命令键入命令:A=1 2 3;4 5 6;7 8 9:A=1 2 3;4 5 6;7 8 9 输出结果是:输出结果是:A=1 2 3 A=1 2 3 4 5 6 4 5 6 7 8 9 7 8 9(二
23、)(二)矩阵变量矩阵变量36 (2 2)利利用用M M文文件件建建立立矩矩阵阵:对对于于比比较较大大且且比比较较复复杂的矩阵,可以通过杂的矩阵,可以通过M M文件建立矩阵。文件建立矩阵。第一步:使用编辑程序输入文件内容。第一步:使用编辑程序输入文件内容。第第二二步步:把把输输入入的的内内容容以以纯纯文文本本方方式式存存盘盘(设设文文件件名名为为mymatrix.m)mymatrix.m)。第第三三步步:在在MATLABMATLAB命命令令窗窗口口中中输输入入mymatrixmymatrix,就就会会自自动动建立一个名为建立一个名为AMAM的矩阵,可供以后显示和调用。的矩阵,可供以后显示和调用。
24、例例2 键入键入p=1 1 1 1 2 2 2 2 3 3 3 3 注:注:MATLAB按按列优先列优先存储,对大小写变量有区分;存储,对大小写变量有区分;(二)(二)矩阵变量矩阵变量37*矩阵中元素的简单操作矩阵中元素的简单操作A(r,:)A(r,:)矩阵矩阵A A的第的第r r行;行;A(:,r)A(:,r)矩阵矩阵A A的第的第r r列;列;A(:)A(:)依次提取矩阵依次提取矩阵A A的每一列,将的每一列,将A A拉伸为一个列向量;拉伸为一个列向量;A(i1:i2,:)=A(i1:i2,:)=删除删除A A的第的第i1-i2i1-i2行,构成新矩阵;行,构成新矩阵;A(:,j1:j2)
25、=A(:,j1:j2)=删除删除A A的第的第j1-j2j1-j2列,构成新矩阵;列,构成新矩阵;A BA B;AA;BB将矩阵将矩阵A A和和B B拼接成新矩阵;拼接成新矩阵;A(i1:i2,j1:j2)A(i1:i2,j1:j2)取矩阵取矩阵A A的第的第i1-i2i1-i2行、第行、第j1-j2j1-j2列构成新矩阵;列构成新矩阵;A(i2:-1:i1,:)A(i2:-1:i1,:)以逆序提取矩阵以逆序提取矩阵A A的第的第i1-i2i1-i2行,构成新矩阵;行,构成新矩阵;(二)(二)矩阵变量矩阵变量38 说明:说明:在在MATLABMATLAB中中,冒冒号号是是一一个个重重要要的的运
26、运算算符符。利利用用它它可可以以产产生生向向量量,还还可可用用来来拆拆分分矩矩阵阵。冒冒号号表表达达式式的的一般格式是:一般格式是:(二)(二)矩阵变量矩阵变量 e1:e2:e3e1:e2:e3其中其中e1e1为初始值,为初始值,e2e2为步长,为步长,e3e3为为终止值。冒号表达式可产生一个由终止值。冒号表达式可产生一个由e1e1开始到开始到e3e3结束,结束,以步长以步长e2e2自增的行向量。自增的行向量。39 例例 求解线性方程组求解线性方程组AX=BAX=B,其中,其中 在在MATLABMATLAB命令窗口输入命令:命令窗口输入命令:a=1,1.5,2,9,7a=1,1.5,2,9,7
27、;0,3.6,0.5,-4,40,3.6,0.5,-4,4;7,10,-3,22,337,10,-3,22,33;3,7,8.5,21,63,7,8.5,21,6;3,8,0,90,-20;3,8,0,90,-20;b=3;-4;20;5;16;b=3;-4;20;5;16;x=ab x=ab得到的结果是:得到的结果是:x=x=3.5653 3.5653 -0.9255 -0.9255 -0.2695 -0.2695 0.1435 0.1435 0.0101 0.0101(二)(二)矩阵变量矩阵变量402.2.行向量的建立行向量的建立矩阵的特殊情况矩阵的特殊情况x=a b c d e f x=
28、a b c d e f 创建包含指定元素的行向量;创建包含指定元素的行向量;x=first:lastx=first:last创建从创建从firstfirst开始,加开始,加1 1计数,到计数,到lastlast结结 束的行向量束的行向量.x=first:increment:last x=first:increment:last 创建从创建从firstfirst开始,加开始,加incrementincrement计数,到计数,到lastlast结束的行向量结束的行向量.x=linspace(firstx=linspace(first,lastlast,n n)创建从创建从firstfirst开始
29、,到开始,到lastlast结束,有结束,有n n个元素的行向量个元素的行向量.x=logspace(firstx=logspace(first,lastlast,n n)创建从创建从firstfirst开始,到开始,到lastlast结束,有结束,有n n个元素的对数分隔行向量个元素的对数分隔行向量.(二)(二)矩阵变量矩阵变量413.3.列向量的建立列向量的建立直接产生直接产生 例例 c=1 c=1;2 2;3 3;44转置产生转置产生 例例 b=1 2 3 4;c=b b=1 2 3 4;c=b(二)(二)矩阵变量矩阵变量 说明:以说明:以空格空格或或逗号逗号分隔的元素是不同列的元素,分
30、隔的元素是不同列的元素,而以而以分号分号分隔的元素是不同行的元素分隔的元素是不同行的元素.42 设:设:a=a1,a2,an,ca=a1,a2,an,c是标量是标量.则:则:a+c=a1+c,a2+c,an+ca+c=a1+c,a2+c,an+c *向量与标量的运算向量与标量的运算(二)(二)矩阵变量矩阵变量 a.*c=a1*c,a2*c,an*ca.*c=a1*c,a2*c,an*c a./c=a1/c,a2/c,an/c(a./c=a1/c,a2/c,an/c(右除)右除)a.c=c/a1,c/a2,c/an(a.c=c/a1,c/a2,c/an(左除)左除)a.c=a1c,a2c,anc
31、 a.c=a1c,a2c,anc c.a=ca1,ca2,can c.a=ca1,ca2,can43 输入:输入:x=1:50;(1+x.2).1 或 1./(1+x.2)比如:设比如:设x=1:50,x=1:50,求:求:y=1/(1+x2)y=1/(1+x2)的值的值44*向量与向量的运算向量与向量的运算设:设:a=a1,a2,an,b=b1,b2,bna=a1,a2,an,b=b1,b2,bn则:则:a+b=a1+b1,a2+b2,an+bna+b=a1+b1,a2+b2,an+bn(二)(二)矩阵变量矩阵变量 a.*b=a1*b1,a2*b2,an*bna.*b=a1*b1,a2*b2
32、,an*bn a./b=a1/b1,a2/b2,an/bn a./b=a1/b1,a2/b2,an/bn a.b=b1/a1,b2/a2,bn/an a.b=b1/a1,b2/a2,bn/an a.b=a1b1,a2b2,anbn a.b=a1b1,a2b2,anbn45访问一个元素:访问一个元素:x(i)x(i)表示访问数组表示访问数组x x的第的第i i个元素个元素.访问一块元素:访问一块元素:x(a x(a:b b:c)c)表示访问数组表示访问数组x x的第的第a a个元素开始,以步长个元素开始,以步长b b到第到第c c个元素个元素(但不超过但不超过c),bc),b可以为负数,可以为负
33、数,b b缺省时为缺省时为1.1.*向量元素的操作向量元素的操作(二)(二)矩阵变量矩阵变量直接使用元素编址序号:直接使用元素编址序号:x(a b c d)x(a b c d)表示提表示提取数组取数组x x的第的第a a、b b、c c、d d个元素构成一个新的数组个元素构成一个新的数组x(a)x(b)x(c)x(d).x(a)x(b)x(c)x(d).46例例 求方程求方程 x4+7x3+9x-20=0 x4+7x3+9x-20=0的全部根。的全部根。在在MATLABMATLAB命令窗口输入命令窗口输入:p=1,7,0,9,-20;p=1,7,0,9,-20;%建立多项式系数向量建立多项式系数向量 x=roots(p)x=roots(p)%求根求根得到的结果是:得到的结果是:x=x=-7.2254 -7.2254 -0.4286+1.5405i -0.4286+1.5405i -0.4286-1.5405i -0.4286-1.5405i 1.0826 1.0826(二)(二)矩阵变量矩阵变量47