MATLAB操作基础.docx
- 文档编号:12407930
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:18
- 大小:253.87KB
MATLAB操作基础.docx
《MATLAB操作基础.docx》由会员分享,可在线阅读,更多相关《MATLAB操作基础.docx(18页珍藏版)》请在冰豆网上搜索。
MATLAB操作基础
第1章MATLAB操作基础
MATLAB是一款功能十分强大的工程软件,用户可以通过它实现科学计算、工程运算和仿真运算。
在本章中,将详细讲解MATLAB的基础操作内容。
本章的内容是后面章节的基础,了解常见的操作方法会给用户操作MATLAB带来便利。
1.1MATLAB概述
从第一个版本推出以来,MATLAB就以其友好的界面、强大的功能受到用户的喜爱。
随后的版本更是在原始版本的基础上,不断扩展MATLAB软件的功能。
下面将概要地介绍MATLAB的主要功能和特点。
1.1.1MATLAB的主要功能
MATLAB提供了上百个预先定义好的命令和函数,这些函数可通过用户自定义扩展。
MATLAB能够用单一的函数求解线性系统,完成大量的高级矩阵处理。
此外,它还提供了大量强有力的二维、三维图形工具,可以方便、快捷地完成各种绘图操作。
根据MATLAB可以实现的任务性质,可将其功能划分为如下几个方面。
❑数值计算和符号计算功能:
以矩阵作为数据操作的基本单位,提供了丰富的数值计算函数。
与著名的符号计算语言——Maple相结合,使得MATLAB拥有了符号计算功能。
❑绘图功能:
提供了两个层次的绘图操作,一种是对图形句柄进行的低层绘图操作,另一种是建立在低层绘图操作之上的高层绘图操作。
❑编程语言:
具有程序结构控制、函数调用、数据结构、输入/输出、面向对象等程序语言特征。
❑MATLAB工具箱:
MATLAB包含两部分内容,即基本部分和各种可选的工具箱。
MATLAB工具箱分为两大类:
功能性工具箱和学科性工具箱。
1.1.2MATLAB的特点
MATLAB利用丰富的函数资源,为用户提供了最直观、最简洁的程序开发环境,使编程人员从繁琐的程序代码中解放出来。
MATLAB的主要特点如下:
❑语言简洁紧凑,使用方便灵活,函数丰富。
❑运算符丰富。
由于MATLAB是用C语言编写的,因此其提供了和C语言几乎一样多的运算符,灵活运用这些运算符可使程序变得极为简短。
❑MATLAB既具有结构化的控制语句(如for循环、while循环、break语句和if语句),又有面向对象编程的特性。
❑MATLAB程序的可移植性较好,基本上无须修改就可以在各种计算机和操作系统上运行。
❑MATLAB的图形功能强大,具有较强的编辑图形界面的能力。
1.2MATLAB集成环境
MATLAB7.0是高度集成的语言环境,用户可以从中运行MATLAB的常用函数、编写MATLAB的程序代码,还可以自定义设置集成环境的属性。
本节将详细讲解如何使用MATLAB的集成环境。
1.2.1启动与退出
MATLAB系统的启动与Windows程序一样,有3种常用方法。
❑选择“开始”|“程序”|MATLAB|MATLAB命令,即可启动MATLAB系统。
❑利用Windows建立快捷方式的功能,将MATLAB程序以快捷方式图标的形式放在桌面上。
只要在桌面上双击该图标,即可启动MATLAB。
❑运行MATLAB系统启动程序matlab.exe。
启动MATLAB后,将进入MATLAB7.0集成环境。
MATLAB7.0集成环境主要由MATLAB主窗口、命令窗口(CommandWindow)、工作空间窗口(Workspace)、命令历史窗口(CommandHistory)、当前目录窗口(CurrentDirectory)和启动平台窗口(LaunchPad)等组成。
当MATLAB安装完毕并首次启动时,展现在屏幕上的界面为MATLAB的默认界面,如图1.1所示。
图1.1MATLAB 7.0的默认初始界面
要退出MATLAB系统,也有3种方法。
❑单击MATLAB命令窗口右上角的“关闭”按钮。
❑在命令窗口中选择File|Exit命令。
❑在MATLAB命令窗口中输入Exit和Quit命令。
1.2.2命令窗口
MATLAB主窗口是指其工作界面,而命令窗口是其中最重要的窗口之一,如图1.2所示。
用户可以在命令窗口中输入函数,然后显示运算的结果。
命令窗口中的“>>”是命令提示符,表示MATLAB当前处于准备状态。
在命令提示符后输入命令,并按下Enter键后,MATLAB就会解释执行所输入的命令。
图1.2命令窗口
通常情况下,用户可以在一个命令行输入一条命令,按下Enter键表示结束。
但一个命令行也可以输入多条命令,用逗号分隔;若前一命令后带有分号,则逗号可以省略。
例如:
m=30,n=50
m=20;n=45
如果命令行很长,一行之内写不下,可以在第一行之后加上3个小黑点,并按下Enter键,然后在下一行继续写其他部分。
3个小黑点称为续行符,即把下面的物理行看作该行的继续。
在MATLAB中,有很多的控制键和方向键可用于命令行的编辑。
1.2.3工作空间窗口
工作空间窗口用于存储各种变量和结果。
在该窗口中,将显示工作空间中所有变量的名称、字节数和变量类型,用户可对变量进行查看、编辑、保存和删除等操作,如图1.3所示。
图1.3工作空间窗口
1.2.4当前目录窗口
当前目录是指运行文件时的工作目录,只有在当前目录或搜索路径下的文件、函数,用户才可以运行或调用。
在当前目录窗口中,用户可以改变当前目录。
此外,MATLAB还为文件提供了搜索功能。
用户可以使用cd命令设置当前目录。
例如,要将用户目录c:
\mydir设置为当前目录,可在命令窗口输入如下命令。
cdc:
\mydir
MATLAB的当前目录窗口如图1.4所示。
图1.4当前目录窗口
1.2.5命令历史窗口
在默认情况下,命令历史窗口会保留从安装起所有用过的函数的历史记录,并标明使用时间。
在该窗口中双击某一命令,即可再次运行该命令。
此外,用户还可以根据需要删除保留的命令。
典型的命令历史窗口如图1.5所示。
图1.5命令历史窗口
1.3MATLAB的基础操作
为了便于读者理解,本节将结合一些具体的案例介绍MATLAB的基础操作,为后面章节的学习做好准备。
1.3.1使用命令窗口
下面将讲解如何在命令窗口中输入数值,并查看MATLAB将如何显示用户输入的数值或者矩阵数值。
【案例1.1】演示矩阵的输入方法。
(1)在命令窗口输入下面的命令:
>>A=[123;456;789];
按Enter键,命令被执行。
(2)在命令执行后,MATLAB命令窗口中将显示以下结果,如图1.6所示。
图1.6命令窗口的结果
>>A
A=
123
456
789
【案例分析】本例只是简单地演示如何输入矩阵的内容,关于矩阵输入的具体内容将在后面章节中具体分析。
1.3.2绘制图形
MATLAB的最大功能除了科学计算和数值运算之外,显示对应的图形也是其重要特色之一。
在MATLAB中,用户可以使用简单的命令绘制出复杂的图形。
下面就简单介绍一下MATLAB绘制图形的功能。
【案例1.2】绘制函数的图形。
(1)在命令窗口中输入下列内容:
>>x=0:
pi*0.05:
2*pi;
>>y=x.*exp(-x);
>>plot(x,y)
>>gridon
(2)执行上述命令后,结果如图1.7所示。
图1.7绘制超越函数的图形
【案例分析】上述函数实质上是超越函数,如果使用其他软件,会比较复杂,需要使用多个函数。
同时,用户可以根据需要编辑其图形。
这些函数将在后面章节中进行详细的分析、讲解。
1.3.3查看内存变量
内存变量是MATLAB中的重要内容,MATLAB中的所有数据都保存在内存中。
在进行一些复杂的操作和运算后,有时需要查看内存变量的内容和属性。
对此,MATLAB提供了几个常见的函数,可以帮助用户方便、快捷地实现内存变量的查看。
【案例1.3】查看MATLAB内存空间中包含的变量。
在命令窗口中输入下列内容:
>>who
Yourvariablesare:
AC1C2C3C4aemtxyz
【案例分析】从上面的结果中可以看出,在当前MATLAB内存空间中包含多个变量,用户可以查看Workspace的变量情况,如图1.8所示。
图1.8工作空间的变量
【案例1.4】分析MATLAB中驻留变量的详细情况,其中包括变量名、数组维数、占用字节数和变量的类型(如双精度)等。
(1)在命令窗口中输入下列内容:
>>whos
NameSizeBytesClass
A3x372doublearray
C13x372doublearray
C22x232doublearray
C32x232doublearray
C42x232doublearray
a1x18doublearray
e1x41328doublearray
m1x18doublearray
t1x2011608doublearray
x1x41328doublearray
y1x41328doublearray
z100x10080000doublearray
Grandtotalis10356elementsusing82848bytes
(2)清除内存中的所有变量,然后重新查看内存情况。
输入下面的命令:
>>clear;
>>whos
>>
【案例分析】从上面的结果中可以看出,当用户使用clear命令清除所有的变量后,内存中将不包含任何变量,如图1.9所示。
图1.9清除变量后的情况
1.4帮助系统
MATLAB提供了大量的函数,功能十分强大。
当遇到一些不熟悉的功能后,可以通过帮助系统获取帮助。
本节将详细介绍MATLAB中的帮助系统。
1.4.1帮助窗口
用户可以通过以下3种方法进入MATLAB的帮助窗口:
❑在MATLAB主窗口中单击工具栏中的Help按钮。
❑在命令窗口中输入helpwin、helpdesk或doc。
❑选择Help|MATLABHelp命令。
1.4.2帮助命令
MATLAB提供了多个帮助命令,主要包括help、lookfor以及模糊查询等。
在命令窗口中输入help命令,将会显示帮助系统中所包含的所有项目。
1.直接使用help命令
【功能介绍】如果知道所要求助的主题词或命令名称,则可以使用help命令获得MATLAB提供的在线帮助。
【案例1.5】查看关于绘图函数poly的帮助信息。
在MATLAB的命令窗口中输入如下内容:
>>helppoly
POLYConvertrootstopolynomial.
POLY(A),whenAisanNbyNmatrix,isarowvectorwith
N+1elementswhicharethecoefficientsofthe
characteristicpolynomial,DET(lambda*EYE(SIZE(A))-A).
POLY(V),whenVisavector,isavectorwhoseelementsare
thecoefficientsofthepolynomialwhoserootsarethe
elementsofV.Forvectors,ROOTSandPOLYareinverse
functionsofeachother,uptoordering,scaling,and
roundofferror.
ROOTS(POLY(1:
20))generatesWilkinson'sfamousexample.
ClasssupportforinputsA,V:
float:
double,single
Seealsoroots,conv,residue,polyval.
Overloadedfunctionsormethods(oneswiththesamenameinotherdirectories)
helpsym/poly.m
ReferencepageinHelpbrowser
docpoly.
【案例分析】上面的帮助信息其实是程序开发人员对该函数提供的说明文字。
2.分类搜索
【案例1.6】显示帮助的分类名称明细表。
在MATLAB的命令窗口中输入如下内容:
>>help
HELPtopics
matlab\general-Generalpurposecommands.
matlab\ops-Operatorsandspecialcharacters.
matlab\lang-Programminglanguageconstructs.
matlab\elmat-Elementarymatricesandmatrixmanipulation.
matlab\elfun-Elementarymathfunctions.
matlab\specfun-Specializedmathfunctions.
matlab\matfun-Matrixfunctions-numericallinearalgebra.
matlab\datafun-DataanalysisandFouriertransforms.
matlab\polyfun-Interpolationandpolynomials.
matlab\funfun-FunctionfunctionsandODEsolvers.
matlab\sparfun-Sparsematrices.
matlab\scribe-AnnotationandPlotEditing.
matlab\graph2d-Twodimensionalgraphs.
matlab\graph3d-Threedimensionalgraphs.
matlab\specgraph-Specializedgraphs.
matlab\graphics-HandleGraphics.
matlab\uitools-Graphicaluserinterfacetools.
matlab\strfun-Characterstrings.
……………………………………………………………………..//此处省略了多个结果
MATLAB7\work-(Notableofcontentsfile)
curvefit\curvefit-CurveFittingToolbox
curvefit\cftoolgui-(Notableofcontentsfile)
shared\optimlib-OptimizationLibrary
imaq\imaq-ImageAcquisitionToolbox
imaq\imaqdemos-ImageAcquisitionToolbox.
toolbox\optim-OptimizationToolbox
toolbox\pde-PartialDifferentialEquationToolbox
toolbox\symbolic-SymbolicMathToolbox
sloptim\sloptim-SimulinkResponseOptimization
sloptim\sloptguis-(Notableofcontentsfile)
sloptim\sloptdemos-SimulinkResponseOptimizationDemos.
sloptim\sloptobsolete-(Notableofcontentsfile)
shared\controllib-ControlLibrary
shared\slcontrollib-SimulinkControlDesignLibrary
daq\daq-DataAcquisitionToolbox
daq\daqguis-DataAcquisitionToolbox-DataAcquisitionSoftInstruments.
daq\daqdemos-DataAcquisitionToolbox-DataAcquisitionDemos.
database\database-DatabaseToolbox
database\dbdemos-DatabaseToolboxDemonstrationFunctions.
database\vqb-VisualQueryBuilderfunctions.
toolbox\gads-(Notableofcontentsfile)
gads\gads-GeneticAlgorithmDirectSearchToolbox
gads\gadsdemos-GeneticAlgorithmDirectSearchToolbox
toolbox\stats-StatisticsToolbox".
【案例分析】上面的帮助结果随用户安装的组件不同而各有不同。
3.获得子类的函数帮助
【案例1.7】获取database的帮助信息。
在MATLAB的命令窗口中输入如下内容:
>>helpdatabase
DatabaseToolbox
Version3.0(R14)05-May-2004
Generalfunctions:
chkprops-Databaseobjectproperties.
logintimeout-Setorgettimeallowedtoestablishdatabaseconnection.
setdbprefs-Setpreferencesfordatabaseactionsforhandlingnullvalues.
DatabaseAccessfunctions:
/database/clearwarnings-Clearwarningsfordatabaseconnection.
/database/close-Closedatabaseconnection.
/database/commit-Makedatabasechangespermanent.
/database/database-Connecttodatabase.
/database/exec-ExecuteSQLstatementandopencursor.
/database/get-Getdatabaseproperty.
/database/insert-ExportMATLABcellarraydatatodatabasetable.
……………………………………………………………………………..//此处省略部分结果
/vqb/querybuilder-StartvisualSQLquerybuilder.
/vqb/showdata-Displaydataininteractivewindow.
/vqb/showdatacallbacks-VisualQueryBuilderdatadisplaycallbacks.
/vqb/vqbdemo-VisualQueryBuilderdemonstrations.
thatpermitsaccesstothedatabase.DRIVERisaJDBCdrivernameand
DATABASEURListheURLforthedatabase.Thelatterargumentsare
optionalbutbothmustbeusedinconjunctionwitheachother.
UseLOGINTIMEOUTbeforeDATABASEtosetthemaximumtimefora
connectionattempt.
Example:
JDBC-ODBCconnection:
conn=database('oracle','scott','tiger')
where:
'oracle'istheODBCdatasourcenameforanORACLEdatabase.
'scott'istheusername.
'tiger'isthepassword.
JDBCconnection:
conn=database('oracle','scott','tiger',
'oracle.jdbc.driver.OracleDriver','jdbc:
oracle:
oci7:
')
where:
'oracle'isthedatabasename.
'scott'istheusername.
'tiger'isthepassword.
'oracle.jdbc.driver.OracleDriver'istheJDBCdrivertobeused
tomaketheconnection.
'jdbc:
oracle:
oci7:
'istheURLasdefinedbytheDrivervendor
toestablishaconnectionwiththedatabase.
Seealso:
close
ReferencepageinHelpbrowser
docdatabase.
【案例分析】关于子类函数的帮助信息,用户需要注意上面的文字结构。
4.lookfor命令
使用help命令只能搜索出完全匹配的结果,而lookfor命令可以对M文件的第1行进行关键字搜索。
若在lookfor命令后加上-all选项,则可对M文件进行全文搜索。
【案例1.8】查找包含关键字poisson的所有函数。
在MATLAB的命令窗口中输入如下内容:
>>lookforpoisson
PDEDEMO8SolvePoisson'sequationonrectangulargrid.
POIASMABoundarypointmatrixcontributionsforPoisson'sequation.
POICALCFastsolverforPoisson'sequationonarectangulargrid.
POISOLVSo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 操作 基础