matlab详细教学课件.ppt
《matlab详细教学课件.ppt》由会员分享,可在线阅读,更多相关《matlab详细教学课件.ppt(347页珍藏版)》请在三一办公上搜索。
1、第一讲 绪论,数值计算软件的产生原因和应用领域。典型数值计算软件的基础知识。我们要学习的数值计算软件是工程科学界的周润发。,2,现实中的一些问题,矩阵运算加减乘除逆,3,现实中的一些问题,函数图形的绘制y=sin(t);y=cos(t)数据处理插值、拟合数值积分、微分微分方程的数值解,4,现实中的一些问题,物理现象的数值模拟BP墨西哥湾漏油事件控制系统的设计,5,数值计算软件实践,目标:了解MATLAB,利用该软件进行矩阵运算,简单编程,简单的数据处理,基本图形绘制,了解动态系统仿真工具。MATLAB是学习和科研的工具。,(一)概述(二)MATLAB基础知识(三)矩阵与数组(四)绘图功能(五)
2、数值与符号运算(六)M语言程序与图形用户界面设计(七)Simulink仿真环境,6,1 MATLAB基础知识,MATLAB是MathWorks公司开发的科学与工程计算软件,它以矩阵运算为基础,把计算、绘图及动态系统仿真等功能有机地融合在一起,同时,它又具有程序设计语言(M语言)的基本特征。它将一个优秀软件的易用性与可靠性、通用性与专业性、一般目的的应用与高深的科学技术应用有机的结合。,7,1.1 MATLAB简介,1980年,美国新墨西哥大学计算机科学系主任Cleve 着手编写供学生使用的子程序接口程序设计者的初衷是为解决线性代数课程的矩阵运算问题取名MATLAB即MATrix LABorat
3、ory 矩阵实验室1984年,推出了MATLAB第一个商业版本,8,1.1 MATLAB简介,1992年MATLAB 4.0版;1997年MATLAB 5.0版;2000年MATLAB 6.0版;2004年MATLAB 7.0版;2005年MATLAB 7.1版;随后每年发布两次以年份命名的版本:如R2006a、R2006b、R2007a、R2007b和最新的版本R2010a。,9,1.1 MATLAB简介,MATLAB 的应用:数值和符号计算工程与科学绘图控制系统的设计与仿真动态系统建模、分析和仿真通讯系统设计与仿真数字图像处理数字信号处理财务与金融工程,10,1.2 MATLAB安装,普通
4、PC基本都能满足MATLAB的安装环境要求,和安装普通软件没有任何区别!,11,1.3 MATLAB集成开发环境,12,1.3.1 工作界面,工作界面菜单工具栏命令窗口历史命令窗口当前工作目录窗口工作空间窗口,13,1.3.2 命令窗口,Command Window用于输入命令并显示除图形以外的所有执行结果。MATLAB用“”作为运算提示符,表明系统处于准备状态。当在提示符后输入一段程序或一段运算式后回车,MATLAB会给出计算结果,并再次进入准备状态。,14,1.3.2 命令窗口,命令以回车结束。命令之间以逗号或者分号分隔。例如:x=720,y=86x=720y=86x=720;y=86y=
5、86若一个命令行很长,可以使用续行符,即三个小黑点。例如:z=1+1/(1*2)+1/(1*2*3)+.1/(1*2*3*4*5),命令输入采用英文字符,15,1.3.2 命令窗口,单击命令窗口右上角的“”按钮,可以使命令窗口脱离主窗口而成为一个独立的窗口。,16,1.3.3 历史命令窗口,Command History用于记录所有执行过的命令(可以单个或全部删除)标明使用时间(启动软件时的时刻,只标一次)可以通过用鼠标双击某一历史命令来重新执行该命令可以成为一个独立的窗口,通过小键盘上的“”和“”键可以在命令窗口中依次显示一行历史命令,17,1.3.4 工作空间窗口,Workspace工作空
6、间窗口将显示当前内存中所有的MATLAB变量的变量名、数据结构、字节数以及类型等信息。,18,1.3.4 当前工作目录,Current Directory当前工作目录是指MATLAB运行文件时的目录。只有在当前工作目录或搜索路径下的文件、函数才可以被运行或调用。如果没有特殊指明,数据文件也将存放在当前目录下。,19,1.3.5 Start按钮,Start按钮,20,1.4 MATLAB通用命令,通用命令是MATLAB中经常使用的一组命令,这些命令可以用来管理目录、函数、变量、工作空间、文件和窗口等。常用命令输入内容的编辑操作符和运算符搜索路径与扩展,21,1.4.1 常用命令,22,1.4.2
7、 输入内容的编辑,命令窗口中,MATLAB提供了控制光标位置和进行简单编辑的键盘按键,部分常用的键盘按键及其功能如下表所示。,23,1.4.3 操作符和运算符,24,1.4.3 操作符和运算符,常用运算的MATLAB表示,数学表示 MATLAB表示,25,1.4.4 搜索路径与扩展,当用户在命令窗口输入一条命令后,MATLAB将按照下列顺序搜索所输入的命令:检查该命令是不是一个变量。检查该命令是不是一个内部函数。检查该命令是否为当前目录下的M文件。检查该命令是否为搜索路径中其他目录下的M文件。都找不到时系统将报错!,My time!,26,1.4.4 搜索路径与扩展,查看搜索路径选择MATLA
8、B主窗口中的【File】|【Set Path】菜单,进入【设置搜索路径】对话框。通过该对话框可为MATLAB添加或删除搜索路径。自己书写的函数有可能并没有保存在搜索路径下。要解决这个问题,只需把程序所在的目录扩展成搜索路径即可。,27,1.4.4 搜索路径与扩展,扩展搜索路径选择主窗口中的【File】|【Set Path】|【Add Folder】。在命令窗口执行“path(path,D:Study)”。在命令窗口执行“addpath D:Study-end”,将新的目录加到整个搜索路径的末尾。如果将end改为begin,可以将新的目录加到整个搜索路径的开始。,28,1.5 帮助系统,MATL
9、AB为用户提供了非常完善的帮助系统。联机帮助系统命令窗口查询帮助系统联机演示系统(Demo),Demo给了大家一个模仿提高的机会一定好好利用!,29,1.5.1 联机帮助系统,进入联机帮助系统有四种方法按F1键选择Help菜单中的“MATLAB Help”选项。单击主窗口工具栏中的Help按钮(小问号)。在命令窗口中输入“helpwin”、“helpdesk”或“doc”命令。,30,1.5.2 命令窗口查询帮助系统,帮助命令help 命令查询函数语法的最基本方法结果直接显示在命令窗口。通过help加函数名来显示该函数的帮助说明。例如,为了显示sin函数的使用方法与功能help sinlook
10、for命令该命令可以帮助用户了解函数的用法。例如,输入命令lookfor sin,31,1.5.3 联机演示系统,进入联机演示系统的方法选择MATLAB主窗口菜单的【Help】|【Demos】选项;在命令窗口输入demos;直接在帮助页面上选择Demos页。,32,1.6 MATLAB 示例,下面以一个简单的例子展示如何使用MATLAB进行简单的应用。,33,1.6.1 数值计算,求解线性方程组在MATLAB命令窗口输入命令:a=2,3,-1;3,-5,3;6,3,-8;b=7;8;9;x=inv(a)*b也可以通过符号计算来解此方程syms x1 x2 x3x1,x2,x3=solve(2*
11、x1+3*x2-x3-7,3*x1-5*x2+3*x3-8,6*x1+3*x2-8*x3-9),34,1.6.2 绘图功能,绘制函数y=300sin(x)/x和y=x2的曲线只需要在命令窗口中输入:x=-20:0.1:20;plot(x,300*sin(x)./x,:,x,x.2);,35,1.6.3 编程计算,汽车性能计算软件,36,小结,初步了解MATLAB。熟悉MATLAB界面,进行简单操作。,第二讲 基础知识,介绍MATLAB的变量、数据类型以及矩阵基本操作。,38,2.1 MATLAB的变量,2.1.1 变量命名与赋值2.1.2 预定义变量2.1.3 变量的管理,39,2.1.1 变
12、量命名与赋值,变量命名在MATLAB中,变量名是以字母开头,后接字母、数字或下画线的字符序列,最多63个字符。例如:x、x_1、xy1在MATLAB中,变量名区分字母的大小写。,不支持中文字符语句,40,2.1.1 变量命名与赋值,赋值MATLAB赋值语句有两种格式:变量名=表达式;在该语句形式下,MATLAB将右表达式的值赋给左边的变量。表达式;在该语句形式下,MATLAB将表达式的值赋给的预定义变量ans。注释以%开头。,%注释支持中文吗?,41,2.1.2 预定义变量,预定义变量可以被重新赋值。,42,2.1.3 变量的管理,显示内存变量显示在工作空间中已经驻留的变量清单。主要命令:wh
13、o%显示变量名whoswhos在给出变量名的同时,还给出它们的维数、所占字节数以及变量的类型。,43,2.1.3 变量的管理,删除MATLAB工作空间中的变量全部删除命令:clear工作空间窗口专门用于内存变量的管理。变量编辑器Array Editor,44,2.1.3 变量的管理,保存内存变量利用MAT文件可以把当前工作空间中的一些有用变量长久地保留下来。MAT是MATLAB保存数据的一种标准格式二进制文件,扩展名是.mat。,45,2.1.3 变量的管理,点击工作空间窗口的save按钮则保存所有变量命令生成与导入MAT文件save 文件名 变量名表load 文件名 变量名表例如:save
14、mydata a bload mydata实现变量定点保存,46,2.2 MATLAB的数据类型,2.2.1 数值类型2.2.2 逻辑类型2.2.3 字符类型和字符串2.2.4 结构体类型,47,2.2.1 数值类型,数值的类型整数浮点数InfNaN数值的输出格式,48,2.2.1 数值类型,整数MATLAB支持1、2、4和8字节的有符号整数和无符号整数。数据类型的名称、表示范围和转换函数如下表所示:,49,2.2.1 数值类型,浮点数MATLAB有单精度和双精度两种浮点数。浮点数的存储空间、表示范围和转换函数如下表所示:,50,2.2.1 数值类型,Inf(inf)&NaNInf和-Inf分
15、别表示正无穷大和负无穷大。除法运算中除数为0或者运算结果溢出都会导致Inf或-Inf的运行结果。NaN在MATLAB中表示一个既不是实数也不是复数的数值。,MATLAB 对除数为0的情况会发出警告但运算仍可进行,51,2.2.1 数值类型,数值的输出格式用“format”命令设置数值输出格式。format 格式符短格式(short)短格式e方式(short e)长格式(long)长格式e方式(long e)银行格式(bank)十六进制格式(hex)“format”命令只影响数值的输出格式,而不影响数据的计算和存储。,What you see!,52,2.2.2 逻辑类型,MATLAB中的逻辑类
16、型(logical)包含true和false,分别由1和0表示。在MATLAB中用函数logical()将任何非零的数值转换为true(即1),将数值0转换为false(即0)。,53,2.2.3 字符类型和字符串,在MATLAB中,数据类型(char)表示一个字符。一个char类型的1n数组称为字符串string。,54,2.2.4 结构体类型,结构体类型是一种由若干属性(field)组成的MATLAB数组,其中的每个属性可以是任意数据类型。,55,2.3 MATLAB矩阵及其基本操作,在MATLAB中,所有的数据均以二维、三维或高维矩阵的形式存储,每个矩阵的单元可以是数值类型、逻辑类型、字
17、符类型或者其他任何数据类型。2.3.1 矩阵的构造2.3.2 矩阵大小的改变2.3.3 矩阵元素的操作2.3.4 矩阵信息的获取2.3.5 矩阵结构的改变,56,2.3.1 矩阵的构造,简单矩阵构造特殊矩阵构造行向量构造,57,2.3.1 矩阵的构造,简单矩阵构造MATLAB矩阵构造符为“”。同一行元素依次放入矩阵构造符内,并且以空格或者逗号分隔;行与行之间用分号分隔。在MATLAB中,生成矩阵时无须对矩阵的维数和类型进行说明,MATLAB会根据用户所输入的内容自动进行配置。矩阵元素也可是表达式(MATLAB将自动计算结果),58,2.3.1 矩阵的构造,简单矩阵构造已建好的小矩阵可拼接成大矩
18、阵,从而利用已建好的矩阵建立更大的矩阵。,59,2.3.1 矩阵的构造,特殊矩阵构造在MATLAB中还提供一些函数用来构造特殊矩阵。,60,2.3.1 矩阵的构造,特殊矩阵构造(续表),61,2.3.1 矩阵的构造,特殊矩阵构造示例,随机矩阵是真的随机!,62,2.3.1 矩阵的构造,行向量构造MATLAB提供了向量构造符“:”。常用的用法如下:a:b以a为起点,且所有取值在a与b之间的向量。a:s:b 返回以a为起点,以s为步长,且所有取值在a与b之间的向量。,默认步长是1,63,2.3.2 矩阵大小的改变,矩阵的合并矩阵行列的删除,64,2.3.2 矩阵大小的改变,矩阵的合并使用构造符“”
19、矩阵合并函数,65,2.3.2 矩阵大小的改变,矩阵行列的删除将要删除矩阵的行或者列赋予一个空矩阵。命令为:删除行矩阵名(n,:)=删除列矩阵名(:,n)=,66,2.3.3 矩阵元素的操作,本小节将介绍存取矩阵元素值的方法。访问单个元素线性引用元素访问多个元素,67,2.3.3 矩阵元素的操作,访问单个元素对于二维矩阵A,访问其第m行第n列元素的命令:A(m,n)对元素进行重新赋值的命令:A(m,n)=55,68,2.3.3 矩阵元素的操作,线性引用元素对于矩阵A,线性引用元素格式为A(k)。通常用于行向量或列向量,也可用于二维矩阵。MATLAB按列优先排列的一个长列向量格式(线性引用元素)
20、来存储矩阵元素。,69,2.3.3 矩阵元素的操作,访问多个元素操作符“:”若A是二维矩阵,其主要用法如下:A(:,:)返回矩阵A的所有元素A(i,:)返回矩阵A第i行的所有元素A(i,k1:k2)返回矩阵A第i行的自k1到k2列的所有元素A(:,j)返回矩阵A第j列的所有元素A(k1:k2,j)返回矩阵A第j列的自k1到k2行的所有元素若A是多维矩阵,也可以通过类似的方法实现对其访问。,70,2.3.4 矩阵信息的获取,本小节介绍如何获取矩阵的信息。矩阵尺寸信息元素的数据类型矩阵的数据结构,71,2.3.4 矩阵信息的获取,矩阵尺寸信息矩阵尺寸函数,72,2.3.4 矩阵信息的获取,元素的数
21、据类型元素数据类型函数,73,2.3.4 矩阵信息的获取,矩阵的数据结构数据结构函数,74,2.3.5 矩阵结构的改变,改变矩阵结构的函数,75,小结,MATLAB的变量MATLAB的数据类型MATLAB的矩阵基本操作,第三讲 矩阵与数组,介绍MATLAB中的矩阵和数组常规运算法则,多项式的相关运算,矩阵的特征分析和分解。,77,主要内容,3.1 矩阵运算3.2 数组运算3.3 多项式运算3.4 线性方程组求解3.5 特殊矩阵生成3.6 矩阵分析3.7 矩阵分解3.8 矩阵的特征值和特征向量3.9 矩阵相似变换,78,3.1 矩阵运算,3.1.1 矩阵加、减(,)运算3.1.2 矩阵乘(*)运
22、算3.1.3 矩阵除(/,)运算3.1.4 矩阵乘方 An,ap3.1.5 矩阵关系运算符3.1.6 矩阵逻辑运算符,79,3.1.1 矩阵加、减(,)运算,两矩阵对应元素相加减。标量可以和任意矩阵相加减,且与所有元素分别进行加减操作。,80,3.1.2 矩阵乘(*)运算,A*B:A矩阵的列数必须等于B矩阵的行数标量则与任意矩阵的所有元素相乘。,81,3.1.3 矩阵除(/,)运算,矩阵右除法(A/B)结果等效于(BA)矩阵左除法(A B),如果除法中有一个是标量 a,A/aa Aa/AA a是否等价?,A B的结果是AX=B解,Error,82,3.1.4 矩阵乘方(An,ap),An:表示
23、A自乘n次幂;如果p是矩阵,a是标量,ap 使用特征值和特征向量自乘到p各元素次幂。,乘方运算比较费时间,83,3.1.5 矩阵关系运算符,矩阵关系运算符,矩阵与矩阵关系:两个矩阵长度相同,对应元素比较,返回具有相同长度的矩阵;矩阵与标量关系:标量与矩阵的所有元素进行运算。,84,3.1.5 矩阵关系运算符,关系运算的运算结果只有0和1两种情况0:不满足条件1:满足条件不能进行运算时MATLAB将报错,85,3.1.6 矩阵逻辑运算符,MATLAB提供元素方式和比特方式逻辑运算符。元素方式逻辑运算符:,86,3.1.6 矩阵逻辑运算符,比特方式逻辑运算符只接受逻辑和非负整数类型的输入变量,它是
24、针对输入变量的二进制表示进行逻辑运算。,87,3.2 数组运算,数组运算指矩阵元素和元素之间的算术运算 3.2.1 数组加减(+,-)3.2.2 数组乘除(,/,)3.2.3 数组乘方()3.2.4 运算优先级,88,3.2.1 数组加减(+,-),对应元素相加减(与矩阵加减等效),89,3.2.2 数组乘除(*,./,.),数组乘(.*)点乘数组对应元素相乘数组必须有相同的行和列,90,3.2.2 数组乘除(,./,.),A./B=B.A A的元素被B的对应元素除B./A=A.B B的元素被A的对应元素除,给出A,B对应元素间的商,91,3.2.3 数组乘方(),元素对元素的幂,92,3.2
25、.4 运算优先级,运算符的优先级决定表达式求值顺序,93,3.2.4 运算优先级,优先级不同先进行优先高的运算优先级相同从左到右依次进行运算可以用括号来改变默认的运算顺序,推荐利用括号来保证运算顺序正确,94,3.3 多项式运算,3.3.1 多项式表示法3.3.2 多项式求值3.3.3 多项式求根3.3.4 多项式乘法和除法3.3.4 多项式微积分,95,3.3.1 多项式表示法,多项式表示行向量,其元素中按多项式降幂排列。例如:f(x)=anxn+an-1xn-1+a0行向量:an an-1 a0函数poly2str()将多项式系数向量转换为完整形式。f,len=poly2str(A,x);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 详细 教学 课件
链接地址:https://www.31ppt.com/p-5439319.html