MATLAB的工作环境与基本操作.docx
- 文档编号:30266346
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:20
- 大小:128.09KB
MATLAB的工作环境与基本操作.docx
《MATLAB的工作环境与基本操作.docx》由会员分享,可在线阅读,更多相关《MATLAB的工作环境与基本操作.docx(20页珍藏版)》请在冰豆网上搜索。
MATLAB的工作环境与基本操作
第一章MATLAB入门
学习目标:
1、了解MATLAB的发展历史,熟悉MATLAB操作环境。
2、掌握MATLAB变量、数值、数学函数输入输出的操作。
第一节MATLAB操作环境
一、MATLAB的发展历史:
MATLAB是矩阵(Matrix)和实验室(Laboratory)两个英文单词的前三个字母组合而成,由美国新墨西哥大学计算机系主任CleveMoler博士首创,由美国Mathworks公司于1982年推出的一套高性能的集数值计算、符号运算和图形处理于一体的科学计算软件。
20世纪70年代CleveMoler博士在讲授线性代数课时,发现用其它高级语言编程极不方便,为减轻学生负担,便构思用FORTRAN语言开发了MATLAB的第一代版本。
1983年CleveMoler博士与工程师JohnLitlle、SteveBanger一起合作开发了MATLAB第二代版本,该版本全部用C语言编写,使MATLAB不仅具有数值计算功能,而且具有数据可视化功能。
1984年CleveMoler博士和一批数学家、软件专家成立了Mathworks公司,专门从事MATLAB的开发,并把MATLAB推向市场。
从20世纪70年代最初的版本,分别推出基于Dos平台的第一代商业版本、基于平台的版本、基于Windows95、Windows98操作系统的版本、基于Windows98/2000/XP平台的版本、版本。
MATLAB历经几十年的不断完善和扩展,它不仅是线性代数、概率论及数理统计、自动控制理论、数字信号处理、动态系统仿真、数学建模、时间序列分析等课程的基本教学工具,而且走出学校,在工业生产、科学研究领域成为国际公认的具有高可靠性的高级计算机编程语言。
二、MATLAB的主要特点:
目前较为流行的数学软件有四种:
MATLAB、Mathematica、Maple、MathCAD。
MATLAB自问世以来,一直以数值计算称雄,Mathematica和Maple在符号运算方面功能突出,MathCAD因其可同时提供计算平台和写作平台而拥有很多用户。
MATLAB的主要特点是:
1、用MATLAB编写程序与人进行科学计算的思路和表达方式一致,编程过程犹如在演算纸上排列出公式与求解问题,易学易懂。
MATLAB中最基本、最主要的成分是函数,输入表达式或函数命令后,系统会立即进行处理,然后返回结果,中间过程在计算机内部运行,用户看不见也不必关心中间的计算过程,极为快捷。
2、程序调试方便。
在命令窗口直接输入MATLAB语句命令或调用M文件的语句,每输入一条语句,就立即进行处理。
如果有错,计算机屏幕上就会立刻给出详细的出错信息,但每次运行只显示第一个错误,用户可以边修改边执行,直到正确为止。
3、绘图功能强大。
利用MATLAB能十分方便绘出离散的点、二维图形、三维图形甚至四维图形,并可以对图形作修饰、注释、坐标控制,以及着色、光照处理、改变视角、消隐等高级处理,图形非常精美。
4、源程序开放。
除内部函数外,MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可以修改或者加入自己的函数文件来构成新的工具箱。
所谓工具箱是对MATLAB进行扩展应用的一系列MATLAB函数(或称M文件),用于求解各类学科的问题。
三、MATLAB的操作环境:
MATLAB的操作桌面(Desktop)默认设置下有MATLAB主窗口、命令窗口(commandwindow)、工作间管理窗口(workspace)、历史命令窗口(commandhistory)、当前目录窗口(currentdirectory)。
1、MATLAB主窗口位于MATLAB操作桌面上方第一栏和第二栏,包括6个下拉菜单和10个快捷按钮,与Word的窗口相似。
2、命令窗口(commandwindow)位于MATLAB桌面的右方,是人机交互的主要场所。
单击该窗口右上角的
键,可以弹出单独的命令窗口,包括标题栏、菜单栏、命令编辑区三部分。
若要让独立的命令窗口嵌放回桌面,则只要点击该窗口菜单栏最右侧的
即可。
编辑区内的“〉〉”为提示符,表示MATLAB正处于准备状态,当在提示符后面输入一段运算式并按回车键后,MATLAB立即给出答案并再次进入准备状态。
3、工作间管理窗口(workspace)位于MATLAB桌面的左上方,是MATLAB存储各种变量的内存空间。
在这里显示了变量的变量名、数学结构、字节数以及数据类型等信息,不同的变量类型对应不同的变量名图标。
工作间的按钮的功能是:
1)
:
工作间添加新的变量;
2)
:
打开在工作间中选中的变量;
3)
:
向工作间导入数据文件;
4)
:
保存工作间中所有变量;
5)
:
绘制工作间中的变量
6)
:
删除工作间中的变量
4、历史命令窗口(commandhistory)位于MATLAB桌面的左下方,历史窗口不但保留自安装后所有命令的的历史记录,并标明时间,而且所有记录都能复制或送到命令窗口再运行。
用户双击某行命令,该命令即在命令窗口运行。
选中某行命令单击鼠标右键,可分别进行:
1)copy(复制):
将选定的内容复制到剪贴板中。
2)EvaluateSelection(执行所选命令):
直接将命令送到命令窗口执行。
3)GreateM-File(建立M文件):
打开一个新M文件,并将选定内容复制过去。
4)DeleteSelection(删除所选命令):
从历史窗口删除所选的命令。
5)DeletetoSelection(删除到所选命令):
删除所选前的所有命令。
6)DeleteEntireHistory(删除全部历史记录)
5、当前目录窗口(currentdirectory):
与Workspace同一窗口,用于显示及设置当前工作目录,同时显示当前工作目录下的文件名,文件类型及修改时间等信息,并提供搜索功能。
该窗口工具栏中各按钮的功能是:
1)
:
进入所显示的目录的上一级目录;
2)
:
在当前目录中创建一个子目录;
3)
:
在当前目录中查找一个文件;
4)
:
选中该按钮后,当前目录中的文件即以类的形式现象;
5)
:
单击该按钮后即可生成一个当前目录中的M-文件。
四、帮助系统:
MATLAB的帮助系统可分为三大类:
帮助浏览器、命令窗口查询、联机演示。
1)进入帮助浏览器常用的方法是:
按下主窗口中的按钮、单击Help下拉菜单中MATLABHelp。
帮助浏览器操作界面的左侧窗口为向导页面,右侧窗口为帮助显示页面。
帮助向导栏中有一个工具栏,在这里可选择显示所有主题还是只显示指定帮助主题。
帮助向导页面中还有四个按钮:
Contents(帮助主题)、Index(帮助索引)、Search(查询帮助)、Demos(演示系统)。
2)Help命令:
在命令窗口输入“help”命令,查询结果就直接显示在命令窗口。
“Help”命令的用法主要有如下:
i)help:
显示当前的帮助系统中所包含的所有项目,即搜索路径中所有的目录名。
ii)help函数名:
这是查询函数语法的最简便方法。
如:
helpsqrt%在命令窗口会显示平方根函数的说明和用法。
iii)help+函数类名
注:
MATLAB区分字母的大小写,所有的命令和函数都必须用小写。
3)联机演示:
MATLAB主包和各工具包都设计有很好的演示程序,对初学者来说,对照显示屏上的显示,仔细研究实现演示的程序十分有帮助。
进入演示系统的主要方法有:
i)在命令窗口输入命令:
demo
ii)单击MATLAB主窗口菜单的help__demo
双击选择的对象,出现演示界面。
演示界面分为三个部分:
(如图示)左侧是可选择来演示的具体项目,右侧上方是对选中项目的文字说明,右侧下方式选中项目的子项目明细表。
上机实践:
1、在MATLAB中,人机交互的窗口是,从操作桌面弹出单独的该窗口,再把它嵌放回桌面。
2、利用“help”命令查看sin函数、gcd函数(求最大公约数)的用法,并求
(1)
(2)3276与128、54028与284的最大公约数
3、通过网络查询了解MATLAB在国内的应用。
第二节MATLAB的基本操作
一、MATLAB的数据类型与变量:
1、数据类型:
MATLAB的数据类型主要包括:
数字、字符串、矩阵、数组、单元型数据、结构型数据。
矩阵是MATLAB最基本最重要的数据对象,单个数值(标量)看作是一行一列矩阵,列向量看作是只有一列的矩阵,行向量看作是只有一行的矩阵。
MATLAB最常用的是数值数组(doublearray)和字符串(chararray)。
MATLAB可以进行数组运算和矩阵运算,数组运算是元素对元素的元素的运算,矩阵运算强调的是整体运算,采用线性代数的运算方法,MATLAB通过运算符的不同来区别这两种运算。
通常数学中,数据的主要形式有数字、字母变量、表达式、向量、矩阵。
2、MATLAB的基本算数运算符:
算数运算符
功能
运算式
+
加法
a+b
-
减法
a-b
*
乘法
a*b
/
左除
a/b即ab
\
右除
a\b即ba
^
乘方
a^b
.*
数组乘法
点运算符,表示数组中对应元素的运算,在作图、编写函数时经常使用
./
数组左除
.\
数组右除
.^
数组乘方
:
冒号表达式,生成数组
a:
b或a:
n:
b
()
小括号,用于决定计算顺序
[]
中括号,用于生成数组或矩阵
3、MATLAB的标点符号
,
元素之间的分隔符。
;
表达式后跟分号,使运算结果不显示。
在矩阵中表示换行。
.
小数点
…
续行符,若命令很长一行写不下,可用“…”表示续行,但续行符前面不能是数字,否则出错,可采用再加一个点或一个空格,再用续行符。
‘’
单引号,用于生成字符串。
!
求阶乘
:
生成一个等差数组,若用于矩阵中则有多种用法.(1:
n表示1到n,公差为1)
%
注释语句,%后面是注释语句,不被执行。
4、变量命名规则:
i.变量名、函数的大小写不同;
ii.变量的第一个字符必须为英文字母,最多不超过31个字符;
iii.变量名可以包含下连符、数字、,但不能包含空格、标点;
iv.MATLAB中的关键字(又称保留字,如for,end,if,while,等等)不能用作MATLAB变量名。
注:
MATLAB中标点符号必须在英文状态下输入,在中文状态下或者不能输入或者输入后运行出错,MATLAB区分字母的大小写,所有的命令和函数都必须用小写。
5、MATLAB的预定义变量:
每次启动MATLAB,系统就会自动产生下列预先定义的变量,建议用户不要使用MATLAB预先定义的变量名称
ans
计算结果的默认变量名
pi
圆周率
inf
无穷大∞
NaN或nan
无法定义的数,如0/0或∞/∞
i或j
虚数单位i=j=
realmax
最大正实数
realmin
最小正实数
nargin
函数输入参数个数
nargout
函数输出参数个数
6、变量的查询与清除:
命令名称
说明
who
列出工作间管理窗口中的变量名。
whos
列出工作间管理窗口中变量的详细内容。
clear
清除命令窗口所有变量,释放内存空间。
clear变量名
清除指定的变量。
clc
清除命令窗口所有屏显内容,但保留工作间管理窗口内容。
clf
清除图形窗
跟我学1:
理解运算符、标点符号的用法
1、计算:
V=
其中r=2
>>r=2;
>>v=4/3*pi*r^3
v=
若在以上程序中加入…号,分号或逗号,结果的显示有什么变化
2、>>sin(1:
4)
ans=
3、写出等差数列{
}的前十项。
>>n=1:
10;
>>an=2*n-1/4
an=
Columns1through5
Columns6through10
MATLAB的数值运算:
1、MATLAB用十进制表示一个常数,有两种表示法:
惯用记数法(如1325),科学记数法,1325记作+3,记作。
数字运算按一般手写习惯输入,加减乘除乘方运算分别用+、-、*、/、^表示,运算顺序与数学中的规则相同。
如:
计算:
其中
,a=,b=,t=20
>>u0=;a=;b=;t=20;%先赋值
>>u=u0/(1+a*t+b*t^2)%再列式
u=
1.0010
2、数字输出格式:
MATLAB中数值有多种显示形式,在默认情况下,数据全部为整数时,则以整型显示,若其中有实数,则结果保留小数点后4位。
数值输出格式由命令format控制(但只影响在屏幕上的显示结果,不影响其内部储存和运算),用帮助命令(help函数名)即helpformat,可查询format命令的用法。
数据显示格式的控制命令
命令
数据显示(以pi为例)
说明
Formatshort
短型,显示5位
Formatshorte
+000
短型科学记数法,5位加指数
Formatlong
长型,显示15位
Formatlonge
+000
长型科学记数法,15位加指数
Formathex
400921fb54442d18
十六进制
Formatbank
银行货币格式,小数点后2位
Formatrat
355/113
分数形式
Format+
+
显示+、0、-
如:
>>formatrat%输出的数值设置为分数形式
>>an%an是前面跟我学1中的等差数列
an=
Columns1through4
7/415/423/431/4
Columns5through8
39/447/455/463/4
Columns9through10
71/479/4
上机实践:
1、写出等差数列{
}的前15项。
2、分别输入下式,观察结果,理解数组符.*与矩阵运算*不同。
[1,2;3,4]*[1,1/2;2,3][1,2;3,4].*[1,1/2;2,3]
3、x=时,求代数式
的值。
三、符号变量、符号表达式的建立:
1、MATLAB中规定:
在进行数值表达式计算时,式中的变量必须先赋值,否则该表达式不能计算。
如:
计算
的值,a,b必须先赋予数值才能求y的值。
在进行符号表达式运算时,首先要定义(或者称声明)基本的符号对象(可以是常数、变量、表达式),然后用这些基本的符号对象去构成新的表达式,再进行所需的符号运算。
如:
化简
,首先要声明基本变量x,MATLAB才能构造表达式
如:
在2,a=2,x,
中,2是数值、a=2时,a是数值变量、x是符号变量、
是符号表达式
2、符号变量、符号表达式的建立:
定义符号变量的指令有:
sym,syms
格式:
sym(‘变量名’)或sym(‘表达式’)
syms变量名1变量名2变量名3……
注:
sym指令与syms指令的区别:
1)sym创建单个变量,syms可创建多个变量,变量之间用空格隔开,不能用逗号分隔。
2)sym指令中,表达式可以是数值、数值表达式、字符(串)、符号表达式、符号方程。
syms指令不能用来建立符号方程。
如:
建立下列各式
1)sinxcosx2)
3)
4)
1)
>>symsxy
>>sin(x)*cos(x)
ans=
sin(x)*cos(x)
2)
>>2*x*y/(x+y)
ans=
2*x*y/(x+y)
3)
>>y=log(x)+sqrt(x+3)
y=
log(x)+(x+3)^(1/2)
4)
>>x^2+2*x+3=0
x^2+2*x+3=0
Error:
Missingoperator,comma,orsemicolon.%错误:
漏了操作符、逗号或分号。
说明这种方式不能建立方程。
>>sym('x^2+2*x+3=0')
ans=
x^2+2*x+3=0
3、符号表达式计算中的算符与基本函数几乎完全和数值计算中的算符与基本函数相同。
(1)基本运算符:
运算符“+”,“-”,“*”,“\”,“/”,“^”分别实现矩阵的加、减、乘、左除、右除、求幂运算
点运算符“.*”,“.\”,“./”,“.^”分别实现元素对元素的数组乘、左除、右除和求幂运算
(2)基本数学函数有:
三角函数与双曲函数
名称
含义
名称
含义
名称
含义
sin()
正弦
asin()
反正弦
()
sinh()
双曲正弦
cos()
余弦
acos()
反余弦
arccos()
cosh()
双曲余弦
tan()
正切
atan()
反正切
arctan()
tanh()
双曲正切
cot()
余切
acot()
反余切
arccot()
coth()
双曲余切
sec()
正割
asec()
反正割
arcsec()
sech()
双曲正割
csc()
余割
acsc()
反余割
arccsc()
csch()
双曲余割
指数函数、对数函数
名称
含义
名称
含义
名称
含义
exp()
以e为底的指数函数,exp(2x)即
log10()
以10为底的对数
pow2()
2的幂
log()
自然对数,log(x)即lnx
log2()
以2为底的对数
sqrt()
平方根
abs()
绝对值
注:
MATLAB只有自然对数、以10为底的对数、以2为底的对数函数,其他对数都无定义,而且以10为底的对数、以2为底的对数函数只能做数值计算,不能做符号运算。
上机实践:
1、计算:
1)
2)
3)
2、输入下列数学表达式:
1)sinxcosx2)
3)
4、不同数据对象之间的转换:
数值变量(doublearray)、符号变量(symbolicobject)、字符串变量(chararray)是MATLAB中三种不同的数据类型,MATLAB提供了各自的生成指令和操作指令。
数值可以直接输入,符号对象由sym或syms命令生成,字符串用单引号‘’括起来。
不同类型的数据可以相互转换,MATLAB提供了一系列的转换指令。
函数名
格式与作用
sym()
sym(‘f’)建立符号变量或表达式
double()
x=double(s)把数值型符号变量转换为数值型变量。
如果s中有非数字的符号,则系统给出出错信息。
subs()
subs(F,old,new)符号表达式F中old变量替换为new变量。
当变量是数值形式时,显示的结果虽然是数值,但实际内存的是符号变量
subs(F,new)符号表达式F中自由变量替换为new变量
int2str()
s=int2str(x),把整数x转换为字符型变量s.
str2num()
x=str2num(s)专用于把字符变量s转换为数值变量x.
num2str()
S=num2str(x),把普通的数值型变量x转换为字符型变量s.
numneric()
x=numneric(s)把字符变量或符号变量s转换为数值变量
四、符号型转化成数值型的精度控制
在MATLAB符号运算工具箱中有三种不同类型的算术运算
数值类型:
MATLAB的浮点算术运算
有理数类型:
Maple的精确符号运算
VPA类型:
Maple的任意精度算术运算
这三种运算各有利弊,浮点运算最快,需要的计算机内存最小,但结果不精确,可以由format命令控制输出的数字位数;符号运算中的有理数运算,需要的计算机内存和计算时间最长,但计算结果精确。
一般符号运算的结果都是符号串,MATLAB提供了将精确的符号解转化数值解得命令,精度控制命令:
digits(n)%近似解的精度保留n位效数字
vpa(F,n)%求符号表达式F的近似解(是数值型符号结果),近似解有n位
有效数字
vpa(F)%表达式F在digits函数设置的精度下,给出F的数值型符号结果
double(F)%把符号常数转为双精度数值。
上机操作:
输入并运行理解下列程序:
1、输入下列程序,在工作间管理窗口(workspace)观察显示变量的图标和变量的数据类型。
A1)a1=3/7+
A2)a2=sym(‘3/7+0.1’)
A3)a3=vpa(sym(3/7+)
B1)A=[1,2,3;4,5,6;7,8,9]
B2)B=sym(‘A’)
C1)symsabcxyz
C=[a,b,c;x,y,z]%符号作为变量前,必须对符号说明
2、求
在
处的值并按精度要求保留数字
>>x=sym('x');%或者写成symsx
>>f=x-cos(x)
f=
x-cos(x)
>>f1=subs(f,'pi',x)%用pi替换x时,f的符号型变量的值。
系统自动调整执行f1=subs(f,x,pi)
f1=
pi+1
>>digits(10)
>>vpa(f1)
ans=
>>double(f1)
ans=
3、x=1时,求代数式
的值
>>symsx
>>s=(3*x^3+x^2-1)/(x^2+1);%建立表达式
>>r=subs(s,'x',1)%s公式变量中用数值型变量1替换字符型变量’x’
r=
>>r=subs(s,'x','1')%s公式变量中用字符型变量’1’替换字符型变量’x’
r=
(3*
(1)^3+
(1)^2-1)/(
(1)^2+1)
>>vpa(r)
ans=
4、x1=23;
S1=int2str(x1)
X2=;
S2=num2str(x2)
S3=’234’;
X3=str2int(s3)
小结:
本章介绍了MATLAB的操作环境,MATLAB中基本的数据类型及其转换,符号变量和符号表达式的创建方法,基本运算符号和标点符号的作用,希望通过阅读程序和上机实践熟悉这些基本知识。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 工作 环境 基本 操作