2015年数学建模培训matlab课件第1讲入门备用_第1页
2015年数学建模培训matlab课件第1讲入门备用_第2页
2015年数学建模培训matlab课件第1讲入门备用_第3页
2015年数学建模培训matlab课件第1讲入门备用_第4页
2015年数学建模培训matlab课件第1讲入门备用_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

数学建模与数学实验

MATLAB入门

MATLAB作为线性系统的一种分析和仿真工具,是理工科大学生应该掌握的技术工具,它作为一种编程语言和可视化工具,可解决工程、科学计算和数学学科中许多问题。

MATLAB建立在向量、数组和矩阵的基础上,使用方便,人机界面直观,输出结果可视化。矩阵是MATLAB的核心MATLAB的进入与运行方式(两种)首次启动Matlab时,展现在屏幕上的界面为Matlab的默认界面.

默认界面中主要有六个窗口,其分布如下图所示。1.3.1启动与退出Matlab集成环境默认设置下主要窗口布局

Matlab6.5的集成环境包括Matlab主窗口、命令窗口(CommandWindow)、工作空间窗口(Workspace)、命令历史窗口(CommandHistory)、当前目录窗口(CurrentDirectory)和启动平台窗口(LaunchPad)。1.3.1启动与退出Matlab集成环境工作空间命令历史命令窗口

2.Matlab系统的退出

要退出Matlab系统,也有3种常见方法:

(1)在Matlab主窗口File菜单中选择ExitMatlab命令。

(2)在Matlab命令窗口输入Exit或Quit命令。

(3)单击Matlab主窗口的“关闭”按钮。1.3.1启动与退出Matlab集成环境Matlab主窗口是Matlab的主要工作界面。主窗口除了嵌入一些子窗口外,还主要包括菜单栏和工具栏。1.菜单栏

在Matlab6.5主窗口的菜单栏,共包含File、Edit、View、Web、Window和Help6个菜单项。(1)File菜单项:File菜单项实现有关文件的操作。(2)Edit菜单项:Edit菜单项用于命令窗口的编辑操作。(3)View菜单项:View菜单项用于设置Matlab集成环境的显示方式。(4)Web菜单项:Web菜单项用于设置Matlab的Web操作。(5)Window菜单项:主窗口菜单栏上的Window菜单,只包含一个子菜单Closeall,用于关闭所有打开的编辑器窗口,包括M-file、Figure、Model和GUI窗口。(6)Help菜单项:Help菜单项用于提供帮助信息。1.3.2主窗口及子窗口在通常的编程中,一个行只输入一条独立的命令,命令行以回车结束。但一行也可以输入若干条命令,但各命令之间必须以逗号分隔,互相独立的命令也可用分号分隔。例如

p=15,m=35,n=20

p=15;m=35;n=20在编程中,逗号表示换列,相当于一个空格;分号表示换行,分号与回车的作用都是换行.如果一个命令行很长,一个物理行之内写不下,可以在第一个物理行之后加上3个小黑点“…”并按下回车键,然后接着下一个物理行继续写命令的其他部分。3个小黑点称为续行符,即把后面的物理行看作该行的逻辑继续。在Matlab里,有很多的控制键和方向键可用于命令行的编辑。1.3.3Matlab编程输入法工作空间是Matlab用于存储各种变量和结果的内存空间。在该窗口中显示工作空间中所有变量的名称、大小、字节数和变量类型说明,可对变量进行观察、编辑、保存和删除。如果想要把工作空间中的变量及其数据存成文件,只需键入命令:Savefilename.matvariblename不写变量名将会把工作空间中全部数据保存到你所给的文件内.1.3.4工作空间窗口

1.4Matlab帮助系统进入帮助窗口可以通过以下3种方法:

(1)单击Matlab主窗口工具栏中的Help按钮。

(2)在命令窗口中输入helpwin、helpdesk或doc。

(3)选择Help菜单中的“MatlabHelp”选项。1.4.1帮助窗口1.4.2帮助命令Matlab帮助命令包括help、lookfor以及模糊查询1.help命令

在Matlab6.5命令窗口中直接输入help命令将会显示当前帮助系统中所包含的所有项目,即搜索路径中所有的目录名称。同样,可以通过help加函数名来显示该函数的帮助说明。2.lookfor命令

help命令只搜索出那些关键字完全匹配的结果,lookfor命令对搜索范围内的M文件进行关键字搜索,条件比较宽松。lookfor命令只对M文件的第一行进行关键字搜索。若在lookfor命令加上-all选项,则可对M文件进行全文搜索。3.模糊查询

Matlab6.0以上的版本提供了一种类似模糊查询的命令查询方法,用户只需要输入命令的前几个字母,然后按Tab键,系统就会列出所有以这几个字母开头的命令。1.4.2

帮助命令

在帮助窗口中选择演示系统(Demos)选项卡,然后在其中选择相应的演示模块,或者在命令窗口输入Demos,或者选择主窗口Help菜单中的Demos子菜单,打开演示系统。1.4.3演示系统在MathWorks公司的主页()上可以找到很多有用的信息,国内的一些网站也有丰富的信息资源。1.4.4远程帮助系统运行Matlab的可执行文件,自动创建Matlab指令窗(CommandWindow)。初学者可在命令窗键入:>>demo或

intro(入门演示)发现指令不知如何使用时,help命令将告诉你使用。例:>>helpsinSINSine.

SIN(X)isthesineoftheelementsofX.Matlab工作环境在Matlab下进行基本数学运算,只需将运算式直接打入提示号(>>)之后,并按入Enter键即可。例如:

>>(10*19+2/4-34)/2*3ans=234.7500

Matlab可以将计算结果以不同的精确度的数字格式显示,直接在指令视窗键入以下的各个数字显示格式的指令。

formatshort(这是默认的)小数点后4位Formatlong15位数字表示Formatshorte5位科学计数表示Formatlonge15位科学计数表示等等

Matlab利用了↑↓二个游标键可以将所下过的指令叫回来重覆使用

Ctrl+C(即同时按Ctrl及C二个键)可以用来中止执行中的Matlab的工作。

MATLAB入门一、变量与函数二、数组三、矩阵四、MATLAB编程五、实验作业1、变量

MATLAB中变量的命名规则是:(1)变量名必须是不含空格的单个词;(2)变量名区分大小写;(3)变量名最多不超过19个字符;(4)变量名必须以字母打头,之后可以是任意字母、数字或下划线,变量名中不允许使用标点符号.

一、变量与函数特殊变量表2、数学运算符号及标点符号(1)MATLAB的每条命令后,若为逗号或无标点符号,则显示命令的结果;若命令后为分号,则禁止显示结果.(2)“%”后面所有文字为注释.(3)“...”表示续行.三角函数和双曲函数

名称含义名称含义名称含义sin正弦csc余割atanh反双曲正切cos余弦asec反正割acoth反双曲余切tan正切acsc反余割sech双曲正割cot余切sinh双曲正弦csch双曲余割asin反正弦cosh双曲余弦asech反双曲正割acos反余弦tanh双曲正切acsch反双曲余割atan反正切coth双曲余切

acot反余切asinh反双曲正弦

sec正割acosh反双曲余弦

3、数学函数

指数函数名称含义名称含义名称含义expE为底的指数log1010为底的对数pow22的幂log自然对数log22为底的对数sqrt平方根

复数函数名称含义名称含义名称含义abs绝对值conj复数共轭real复数实部angle相角imag复数虚部

取整函数和求余函数

名称含义名称含义ceil向+∞取整rem求余数fix向0取整round向靠近整数取整floor向-∞取整sign符号函数mod模除求余

矩阵变换函数名称含义名称含义fiplr矩阵左右翻转

diag产生或提取对角阵fipud矩阵上下翻转

tril产生下三角fipdim矩阵特定维翻转

triu产生上三角Rot90矩阵反时针90翻转

其他函数

名称含义名称含义min最小值max最大值mean平均值median中位数std标准差diff相邻元素的差sort排序length个数norm欧(Euclidean)长度sum总和prod总乘积dot内积cumsum累计元素总和cumprod累计元素总乘积cross外积

可查阅在线帮助helpwin中Matlab\elfun或helpelfun。

MATLAB的内部函数是有限的,有时为了研究某一个函数的各种性态,需要为MATLAB定义新函数,为此必须编写函数文件.函数文件是文件名后缀为M的文件,这类文件的第一行必须是一特殊字符function开始,格式为:

function因变量名=函数名(自变量名)函数值的获得必须通过具体的运算实现,并赋给因变量.

4、M文件M文件建立方法:1.在Matlab中,点:File->New->M-file2.在编辑窗口中输入程序内容

3.点:File->Save,存盘,M文件名必须与函数名一致。Matlab的应用程序也以M文件保存。例:定义函数f(x1,x2)=100(x2-x12)2+(1-x1)2functionf=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^21.建立M文件:fun.mMATLAB(fun)2.可以直接使用函数fun.m例如:计算f(1,2),只需在Matlab命令窗口键入命令:x=[12]fun(x)

返回x=logspace(first,last,n)

创建从开始,到结束,有n个元素的对数分隔行向量.1、创建简单的数组二、数组MATLAB(shuzu1)x=[abcdef]

创建包含指定元素的行向量x=first:last

创建从first开始,加1计数,到last结束的行向量x=first:increment:last

创建从first开始,加increment计数,last结束的行向量x=linspace(first,last,n)

创建从first开始,到last结束,有n个元素的行向量

2、数组元素的访问MATLAB(shuzu2)(3)直接使用元素编址序号.x([abcd])表示提取数组x的第a、b、c、d个元素构成一个新的数组[x(a)x(b)x(c)x(d)].(2)访问一块元素:

x(a:b:c)表示访问数组x的从第a个元素开始,以步长为b到第c个元素(但不超过c),b可以为负数,b缺损时为1.(1)访问一个元素:

x(i)表示访问数组x的第i个元素.3、数组的方向

前面例子中的数组都是一行数列,是行方向分布的.称之为行向量.数组也可以是列向量,它的数组操作和运算与行向量是一样的,唯一的区别是结果以列形式显示.

产生列向量有两种方法:直接产生例c=[1;2;3;4]

转置产生例b=[1234];c=b’

说明:以空格或逗号分隔的元素指定的是不同列的元素,而以分号分隔的元素指定了不同行的元素.4、数组的运算

(1)标量-数组运算数组对标量的加、减、乘、除、乘方是数组的每个元素对该标量施加相应的加、减、乘、除、乘方运算.设:a=[a1,a2,…,an],c=标量则:a+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=[a1^c,a2^c,…,an^c]c.^a=[c^a1,c^a2,…,c^an]MATLAB(shuzu3)(2)数组-数组运算

当两个数组有相同维数时,加、减、乘、除、幂运算可按元素对元素方式进行的,不同大小或维数的数组是不能进行运算的.

设:a=[a1,a2,…,an],b=[b1,b2,…,bn]则:a+b=[a1+b1,a2+b2,…,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=[a1^b1,a2^b2,…,an^bn]MATLAB(shuzu4)

返回三、矩阵

逗号或空格用于分隔某一行的元素,分号用于区分不同的行.除了分号,在输入矩阵时,按Enter键也表示开始一新行.输入矩阵时,严格要求所有行有相同的列.

例m=[1234;5678;9101112]p=[111122223333]1、矩阵的建立特殊矩阵的建立:.MATLAB(matrix1)d=eye(m,n)产生一个m行、n列的单位矩阵c=ones(m,n)产生一个m行、n列的元素全为1的矩阵b=zeros(m,n)产生一个m行、n列的零矩阵a=[]产生一个空矩阵,当对一项操作无结果时,返回空矩阵,空矩阵的大小为零.2、矩阵中元素的操作MATLAB(matrix2)(1)矩阵A的第r行:A(r,:)(2)矩阵A的第r列:A(:,r)(4)取矩阵A的第i1~i2行、第j1~j2列构成新矩阵:A(i1:i2,j1:j2)(5)以逆序提取矩阵A的第i1~i2行,构成新矩阵:A(i2:-1:i1,:)(6)以逆序提取矩阵A的第j1~j2列,构成新矩阵:A(:,j2:-1:j1

)(7)删除A的第i1~i2行,构成新矩阵:A(i1:i2,:)=[](8)删除A的第j1~j2列,构成新矩阵:A(:,j1:j2)=[](9)将矩阵A和B拼接成新矩阵:[AB];[A;B](3)依次提取矩阵A的每一列,将A拉伸为一个列向量:A(:)

(2)矩阵-矩阵运算

[1]元素对元素的运算,同数组-数组运算。

3、矩阵的运算(1)标量-矩阵运算

同标量-数组运算。MATLAB(matrix3)

[2]矩阵运算:矩阵加法:A+B矩阵乘法:A*B方阵的行列式:det(A)方阵的逆:inv(A)方阵的特征值与特征向量:[V,D]=eig[A]

返回关系与逻辑运算

1、关系操作符2、逻辑运算符1、for循环:允许一组命令以固定的和预定的次数重复

forx=array{commands}end

在for和end语句之间的命令串{commands}按数组(array)中的每一列执行一次.在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:,n)控制流MATLAB提供三种决策或控制流结构:

for循环、while循环、if-else-end结构.

这些结构经常包含大量的MATLAB命令,故经常出现在MATLAB程序中,而不是直接加在MATLAB提示符下.

例1对n=1,2,…,10,求xn=的值MATLAB(for1)

whileexpression{commands}end

只要在表达式(expression)里的所有元素为真,就执行while和end语句之间的命令串{commands}.2、While循环

与for循环以固定次数求一组命令相反,while循环以不定的次数求一组语句的值.MATLAB(while1)

例2设银行年利率为11.25%。将10000元钱存入银行,问多长时间会连本带利翻一番?3、If-Else-End结构(1)有一个选择的一般形式是:

温馨提示

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

最新文档

评论

0/150

提交评论