




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一应用仿真软件进行数值计算和数据可视化
1、掌握MATLAB在线帮助功能的使用;
2、熟悉MATLAB运行环境和MATLAB语言的
主要特点;
3、掌握MATLAB语言的基本语法规则及基本操
作命令的使用;
4、学会M文件的建立和使用方法以及应用
MATLAB实现二维和三维图形的绘制方法;
5、具有使用MATLAB语言编程和调试的能力。实验目的参考书目精通版张志涌等编著北京航空航天大学出版社MATLAB电子仿真与应用韩利竹等编著国防工业出版社MATLAB控制系统设计欧阳黎明编著国防工业出版社应用MATLAB建模与仿真陈桂明等编著科学出版社MATLAB扩展编程何强,何英编著清华大学出版社MATLAB应用程序接口指南刘志坚编著科学出版社MATLAB高级应用-图形图像处理清源计算机工作室编著机械工业出版社MATLAB简介一、MATLAB的发展史
MATLAB名字由MATrix和LABoratory
两词的前三个字母组合而成。那是20世纪七十年代,时任美国新墨西哥大学计算机系主任的CleveMoler出于减轻学生编程负担的动机,为学生设计了一组调用LINPACK和EISPACK矩阵软件工具包库程序的的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的MATLAB。1984年由Little、Moler、SteveBangert合作成立MathWorks公司,并把MATLAB正式推向市场。从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。1997年春,版问世,紧接着是、,以及和1999年春的版直到现在的和版。现今的MATLAB拥有更丰富的数据类型和结构、更友善的面向对象、更快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。二、MATLAB语言的主要特点(1)具有丰富的数学功能包括矩阵各种运算(正交变换、三角分解、特征值等)、各种特殊函数(贝塞尔函数、勒让德函数、伽码函数、贝塔函数、椭圆函数)、各种数学运算功能(微积分、插值、求极值、方程求根、FFT、解常微分方程等)。(2)具有很好的图视系统可方便地画出两维和三维图形。高级图形处理:色彩控制、句柄图形、动画等。图形用户界面GUI制作工具,可以制作用户菜单和控件。使用者可以根据自己的需求编写出满意的图形界面。(3)可以直接处理声音和图形文件
声音文件(如:WAV文件)、图形文件(如:bmp、gif、pcx
、tif
、jpeg等文件)。(4)具有若干功能强大的应用工具箱
SIMULINK、COMM、DSP、SIGNAL等。(5)使用方便,具有很好的扩张功能。(6)具有很好的帮助功能
可以M文件转变为独立于平台的EXE可执行文件。
使用MATLAB语言编写的程序可以直接运行,无需编译。
提供十分详细的帮助文件(PDF、HTML、demo文件)。
联机查询指令:help指令(例:helpelfun,helpexp,helpsimulink),lookfor关键词(例:lookfor
fourier
)。
MATLAB的应用接口程序API是MATLAB提供的十分重要的组件,由一系列接口指令组成。用户就可在FORTRAN或C中,把MATLAB当作计算引擎使用。
购买(下载)Matlab
软件Matlab的安装插入光盘,自动运行;或点击安装程序三、MATLAB运行环境介绍(一)MATLAB提供两种运行方式(1)命令方式直接在命令窗口输入命令来实现计算或作图功能(2)M文件运行方式单击FILENEWM-FILE打开M文件输入运行界面,输入程序文件。(具体又分为脚本文件和函数文件两种方式)。该运行方式优点是可以调试也可以重复使用。(二)MATLAB中的窗口简介
(1)命令窗口(CommandWindow)a.启动MATLAB命令窗口双击MATLAB图标,就可进入命令窗口,此时意味着系统处于准备接受命令的状态,可以在命令窗口中直接输入命令语句。b.MATLAB语句形式》变量=表达式;键入回车键时,该语句被执行。窗口自动显示出语句执行的结果。如果希望结果不被显示,则只要在语句之后加上一个分号“;”c.命令行编辑器方向键和控制键可以编辑修改已输入的命令回调上一行命令回调下一行命令命令窗口的分页输出moreoff:不允许分页moreon:允许分页more(n):指定每页输出的行数回车前进一行,空格键显示下一页,q结束当前显示。多行命令(…)如果命令语句超过一行或者太长希望分行输入,则可以使用多行命令继续输入。如:》S=1-12+13+4+…9-4-18;(2)M文件窗口(3)起始面板(LaunchPad)(4)工作空间窗口(Workspace)(5)命令历史窗口(CommandHistory)(6)当前目录窗口(CurrentDirectory)(7)图形窗口(FigureNo…)(8)GUI制作窗口(三)变量和数值显示格式
1、变量(1)变量的命名:变量的名字必须以字母开头(不能超过31个字符),之后可以是任意字母、数字或下划线;变量名称区分字母的大小写;变量中不能包含有标点符号。(2)一些特殊的变量ans:用于结果的缺省变量名i、j:虚数单位pi:圆周率nargin:函数的输入变量个数eps:计算机的最小数nargout:函数的输出变量个数inf:无穷大realmin:最小正实数realmax:最大正实数nan:不定量flops:浮点运算数(3)变量操作在命令窗口中,同时存储着输入的命令和创建的所有变量值,它们可以在任何需要的时候被调用。如要察看变量a的值,只需要在命令窗口中输入变量的名称即可:》a2、数值显示格式任何MATLAB的语句的执行结果都可以在屏幕上显示,同时赋值给指定的变量,没有指定变量时,赋值给一个特殊的变量ans,数据的显示格式由format命令控制。format只是影响结果的显示,不影响其计算与存储;MATLAB总是以双字长浮点数(双精度)来执行所有的运算。如果结果为整数,则显示没有小数;如果结果不是整数,则输出形式有:formatshort短格式(5位定点数)formatlong长格式(15位定点数)formatshorte短格式e方式9.9123e+001formatlonge长格式e方式formatbank2位十进制formathex十六进制格式(四)简单的数学运算1、常用的数学运算符+,—,*(乘),/(左除),\(右除),^(幂)在运算式中,MATLAB通常不需要考虑空格;多条命令可以放在一行中,它们之间需要用分号隔开;逗号告诉MATLAB显示结果,而分号则禁止结果显示。2、常用数学函数abs,sin,cos,tan,asin,acos,atan,sqrt,exp,imag,real,sign,log,log10,conj(共扼复数)等
(五)MATLAB的工作空间1、MATLAB的工作空间包含了一组可以在命令窗口中调用的参数who:显示当前工作空间中所有变量的一个简单列表whos:则列出变量的大小、数据格式等详细信息clear:清除工作空间中所有的变量clear变量名:清除指定的变量
(六)MATLAB指令中常用标点功能小结(七)MATLAB指令窗的常用控制指令what:显示当前目录下所有与matlab相关的文件及它们的路径。cdpath:由当前目录进入path目录cd..:返回上一级目录cd:显示当前目录deletefilename:删除文件filename(八)CurrentDirectory、路径设置器和文件管理1、CurrentDirectory它可展示当前目录下最完整的文件目录列表,具有:运行文件,装载MAT文件,边界文件等功能。路径设置(1)建立用户目录可用md指令或图形窗口指令。(2)把用户目录设置成当前目录方法一:可通过matlab窗口中“目录设置栏”和“浏览键”设置。方法二:通过cd指令设置假设待设置的用户目录是c:\mydir
,则可通过指令cd
c:\mydir将其设置为当前目录。3当前路径的扩展和修改(1)若用户有多个目录需同时与matlab交换信息,则应将它们放置在matlab的搜索路径上,使得该目录上的文件可被调用。(2)设置方法通过路径设置对话框(引出该对话框法)在指令窗中运行pathtool;在matlab桌面菜单中选择【File:SetPath】注:此方式下路径修改可有当前有效修改和永久有效修改两种状态。利用path指令格式如下:path(path,’c:\mydir’)把c:\mydir设置在搜索路径尾端Path(‘c:\mydir’,path)把c:\mydir设置在搜索路径首端注:此法仅有当前有效修改状态(九)WorkspaceBrowser和ArrayEditor1Workspace现场菜单的应用2ArrayEditor数组编辑器和大数组的输入点亮Workspace浏览器中的任意一数组,双击,或选现场菜单【OpenSelection】就可引出数组编辑器。如下大数组的输入在指令窗向一个新变量赋“空”阵在Workspace浏览器中双击该变量,打开数组编辑器。在数组编辑器上方输入行数和列数逐格填写元素,直到完成。(十)帮助系统1、在命令窗口中利用help命令显示MATLAB的所有函数都是以逻辑群组方式进行组织的,而MATLAB的目录结构就是以这些群组方式来编排的。helphelp:显示如何使用helplookfor命令:返回包含指定关键词的那些项helpmatfun:矩阵函数-数值线性代数helpgeneral:通用命令helpgraphics:通用图形函数helpelfun:基本的数学函数helpelmat:基本矩阵和矩阵操作helpdatafun:数据分析和傅立叶变换函数helpops:操作符和特殊字符helppolyfun:多项式和内插函数helplang:语言结构和调试helpstrfun:字符串函数helpcontrol:控制系统工具箱函数2、“导航/浏览器”交互界面帮助可用helpwin(helpdesk)、窗口菜单或工具条帮助图标引出。该界面由帮助导航器(HelpNavigator)和帮助浏览器(HelpBrowser)两部分组成。3、PDF帮助(为让用户获得高质量的可打印帮助)4、演示帮助(demos)运行DesktopEnviroment中的示例
矩阵的直接排列输入矩阵用方括号“[]”括起例:>>
A=[123;456;789]矩阵同一行中的元素之间用
空格
或
逗号
分隔矩阵行与行之间用
分号
分开直接输入法中,分号可以用
回车
代替例:向量与矩阵运算
Matlab
的操作对象是
矩阵矩阵元素可以是任何数值表达式例:>>
x=[-1.3,sqrt(3),(1+2+3)*4/5]矩阵元素赋值矩阵元素的单独赋值例:>>
x(5)=abs(x(1))例:>>
x(5)=abs(x(6))
??注:Matlab自动将向量x的长度扩展到5,并将未赋值部分置零。大矩阵可以把小矩阵作为其元素矩阵元素赋值例:>>
A=[A;111213]在原矩阵的下方加一行单个元素的引用例:>>
A(2,3)矩阵元素的引用多个元素的引用:冒号的特殊用法利用小括弧和元素所在的位置(下标)x(i):向量x中的第i个元素A(i,j):矩阵A中的第i行,第j列元素a:b:c产生一个由等差序列组成的向量;a是首项,b是公差,c确定最后一项;若b=1,则b可以省略。例:>>
x=1:2:5>>
y=1:2:6例:>>
x=2:1:5>>
y=2:5例:>>
x=3:2:1多个元素的引用(续)例:>>
x(1:3)矩阵元素的引用>>
A(3,1:3)A(i:j,m:n)表示由矩阵A的第i到第j行和第m到第n列交叉线上的元素组成的子矩阵。可利用冒号提取矩阵的整行或整列。例:>>
A(1,:)>>
A(:,1:2)>>
A(:,:)冒号的作用提取矩阵的部分元素:冒号运算符
A(:)A的所有元素
A(:,:)
二维矩阵A的所有元素
A(:,k)A的第k列,A(k,:)A的第k行
A(k:m)A的第k到第m个元素
A(:,k:m)A的第k到第m列组成的子矩阵可利用Matlab
自带函数来生成一些特殊的矩阵例:>>
C=magic(3)常见的矩阵生成函数zeros(m,n)生成一个m行n列的零矩阵,m=n时可简写为zeros(n)ones(m,n)生成一个m行n列的元素全为1的矩阵,
m=n时可写为ones(n)eye(m,n)生成一个主对角线全为1的m行n列矩阵,
m=n时可简写为eye(n),即为n维单位矩阵diag(X)X为矩阵时,diag(X)为X的主对角线向量;X是向量时,diag(X)产生以X为主对角线的对角矩阵rand(m,n)产生0~1间均匀分布的随机矩阵m=n时简写为rand(n)矩阵的转置矩阵的转置与共轭转置
’
共轭转置
.’
转置,矩阵元素不取共轭例:>>
A=[12;2i3i]>>
B=A’>>
C=A.’点与单引号之间不能有空格!改变矩阵的形状改变矩阵的形状:reshapereshape(A,m,n)
将原矩阵按
列方向
进行排列成一个m×n的新矩阵重组后得到的新矩阵的元素个数必须与原矩阵元素个数相等!矩阵的大小查看矩阵的大小:size
size(A)
列出矩阵A的行数和列数
size(A,1)
返回矩阵A的行数
size(A,2)
返回矩阵A的列数例:>>
A=[123;456]>>
size(A)>>
size(A,1)>>
size(A,2)
length(x)返回向量
X
的长度
length(A)等价于
max(size(A))矩阵基本运算
矩阵的加减:对应分量进行运算要求参与加减运算的矩阵具有相同的维数例:>>
A=[123;456];B=[321;654]>>
C=A+B;D=A-B;
矩阵的普通乘法要求参与运算的矩阵满足线性代数中矩阵相乘的原则例:>>
A=[123;456];B=[21;34];>>
C=A*B矩阵基本运算
矩阵的除法:/、\右除和左除
若A可逆方阵,则A\B
<==>A的逆左乘B<==>inv(A)*BB/A
<==>A的逆右乘B<==>B*inv(A)若A是方阵,p
是正整数,则A^p
表示A的p次幂,即p个A相乘。
矩阵的乘方(幂):^矩阵的数组运算
数组运算:对应元素进行运算点与算术运算符之间不能有空格!数组运算包括:点乘、点除、点幂
相应的数组运算符为:.*
,./
,.\
,.^参与运算的对象必须具有相同的形状!例:>>
A=[123;456];B=[321;654];>>
C=A.*B;D=A./B;E=A.\B;F=A.^B;线性方程的组的求解我们将线性方程的求解分为两类:一类是方程组求唯一解或求特解,另一类是方程组求无穷解即通解。可以通过系数矩阵的秩来判断:若系数矩阵的秩r=n(n为方程组中未知变量的个数),则有唯一解若系数矩阵的秩r<n,则可能有无穷解。线性方程组的无穷解=对应齐次方程组的通解+非齐次方程组的一个特解;其特解的求法属于解的第一类问题,通解部分属第二类问题。求线性方程组的唯一解或特解利用矩阵除法求线性方程组的特解(或一个解)方程:AX=b解法:X=A\b例求方程组的解解:在Matlab编辑器中建立M文件:A=[5600015600015600015600015];B=[10001]';R_A=rank(A)%求秩X=A\B%求解运行后结果如下R_A=5X=这就是方程组的解。求非齐次线性方程组的通解非齐次线性方程组需要先判断方程组是否有解,若有解,再去求通解。因此,步骤为:第一步:判断AX=b是否有解,若有解则进行第二步第二步:求AX=b的一个特解第三步:求AX=0的通解第四步:AX=b的通解=AX=0的通解+AX=b的一个特解。matlab绘图——matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。一、二维绘图(一)plot——最基本的二维图形指令plot的功能:plot命令自动打开一个图形窗口Figure用直线连接相邻两数据点来绘制图形根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x,y轴用对数坐标表示plot的调用格式
plot(x)——缺省自变量绘图格式,x为向量,以x元素值为纵坐标,以相应元素下标为横坐标绘图plot(x,y)——基本格式,以y(x)的函数关系作出直角坐标图,如果y为n×m的矩阵,则以x为自变量,作出m条曲线plot(x1,y1,x2,y2)——多条曲线绘图格式
plot(x,y,’s’)——开关格式,开关量字符串s设定曲线颜色和绘图方式,使用颜色字符串的前1~3个字母,如yellow—yel表示等。或plot(x1,y1,’s1’,x2,y2,’s2’,…)S的标准设定值如下:
字母颜色标点线型y黄色·点线m粉红○圈线c亮蓝××线r大红++字线g绿色-实线b蓝色星形线w白色:虚线k黑色-·(--)点划线1.单窗口单曲线绘图例1:x=[0,0.48,0.84,1,0.91,0.6,0.14]plot(x)2.单窗口多曲线绘图例2:t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)yy1y2例3:y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);
y3=cos(t);y4=cos(t+0.25);y5=cos(t+0.5);
plot(t,[y',y1',y2',y3',y4',y5'])y3=cos(t);y4=cos(t+0.25);y5=cos(t+0.5);plot(t,y3);holdon;plot(t,y4);plot(t,y5);5.可任意设置颜色与线型例4(例2):plot(t,y,'r-',t,y1,'g:',t,y2,'b*')6.图形加注功能将标题、坐标轴标记、网格线及文字注释加注到图形上,这些函数为:title——给图形加标题xlable——给x轴加标注ylable——给y轴加标注text——在图形指定位置加标注gtext——将标注加到图形任意位置gridon(off)——打开、关闭坐标网格线legend——添加图例axis——控制坐标轴的刻度例:t=0:0.1:10y1=sin(t);y2=cos(t);plot(t,y1,'r',t,y2,'b--');x=[1.7*pi;1.6*pi];y=[-0.3;0.8];s=['sin(t)';'cos(t)'];text(x,y,s);title('正弦和余弦曲线');legend('正弦','余弦')xlabel('时间t'),ylabel('正弦、余弦')gridaxissquare246810时间t(三)特殊二维绘图函数
bar––––绘制直方图polar––––绘制极坐标图hist––––绘制统计直方图stairs––––绘制阶梯图stem––––绘制火柴杆图rose––––绘制统计扇形图comet––––绘制彗星曲线errorbar––––绘制误差棒图compass––––复数向量图(罗盘图)feather––––复数向量投影图(羽毛图)
quiver––––向量场图
area––––区域图pie––––饼图convhull––––凸壳图scatter––––离散点图例,绘制阶梯曲线x=0:pi/20:2*pi;y=sin(x);stairs(x,y)例:绘制极坐标绘图t=0:2*pi/90:2*pi;y=cos(4*t);polar(t,y)例:绘制火柴杆绘图t=0:0.2:2*pi;y=cos(t);stem(y)例:绘制直方图t=0:0.2:2*pi;y=cos(t);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年武汉科技职业学院辅导员考试真题
- 《平面镜成像》教学设计
- 2024年西安航空职工大学辅导员考试真题
- 2024年南充科技职业学院辅导员考试真题
- 2024年佛山市三水区公立医疗卫生事业单位招聘考试真题
- 2025届高三数学“8+3+3”小题期末专项练(17)双曲线方程及其性质(新高考地区专用)(含答案或解析)
- 输液治疗时患者的护理讲课件
- 包装材料抗菌处理-洞察及研究
- 抗癌药介绍讲课件
- 2025届江苏省高邮市阳光双语英语七年级第二学期期中调研模拟试题含答案
- 家装修泥水工合同协议
- 2023承压设备产品焊接试件的力学性能检验
- ESG趋势下企业财务管理新挑战
- 2024年公安机关理论考试题库500道(基础题)
- 2024年11月-矿山隐蔽致灾因素普查
- DBJ51T 163-2021 成都轨道交通设计防火标准
- 加热炉安全操作规程培训课件
- 学校红十字会工作手册
- 特种设备隐患排查与整治
- 2024年人教版七年级下册生物期末检测试卷及答案
- 药剂师知识科普大赛单选题100道及答案解析
评论
0/150
提交评论