Matlab基础知识点.docx
- 文档编号:2920917
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:150
- 大小:173.49KB
Matlab基础知识点.docx
《Matlab基础知识点.docx》由会员分享,可在线阅读,更多相关《Matlab基础知识点.docx(150页珍藏版)》请在冰豆网上搜索。
Matlab基础知识点
MATLAB讲义
第一章MATLAB系统概述
1.1MATLAB系统概述
MATLAB(MATrixLABoratory)矩阵实验室的缩写,全部用C语言编写。
特点:
(1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。
(2)语句书写简单。
(3)语句功能强大。
(4)有丰富的图形功能。
如plot,plot3语句等。
(5)提供了许多面向应用问题求解的工具箱函数。
目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。
(6)易扩充。
1.2MATLAB系统组成
(1)MATLAB语言
MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。
同时MATLAB又具有面向对象编程特色。
MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。
(2)开发环境
MATLAB开发环境有一系列的工具和功能体,其中大部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。
(3)图形处理
图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。
还包括低级的图形命令,供用户自由制作、控制图形特性之用。
(4)数学函数库
有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。
MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。
(5)MATLAB应用程序接口(API)
MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。
1.3MATLAB的应用范围包括:
MATLAB的典型应用包括:
●数学计算
●算法开发
●建模、仿真和演算
●数据分析和可视化
●科学与工程绘图
●应用开发(包括建立图形用户界面)
以矩阵为基本对象
第二章Matlab基础
2.1MATLAB快速入门
(1)搜索路径
搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。
搜索路径设置存放在文件pathdef.m中,称为当前目录,当要在MATLAB中打开一个文件时,就以当前目录为开始点。
当输入一变量value时,MATLAB的搜索路径次序:
value是否为变量
value是否为内部函数
当前目录中是否存在value.m文件
搜索路径上是否存在value.m文件
path函数可以控制MATLAB的目录搜索路径,主要使用的格式:
path显示当前的搜索路径
p=path把当前的搜索路径存到字符变量P中
path('newpath')设置路径为'newpath'
path(path,'newpath')向当前路径添加一个新目录
addpath函数向MATLAB的搜索目录中添加一个新目录。
addpath路径名
path(path,’路径名’):
增加搜索路径
rmpath函数从MATLAB的搜索路径删除一个目录。
rmpath路径名:
删除路径
还可以利用菜单:
File->setpath(路径浏览器)
what:
显示出搜索路径上的文件名
what路径名:
路径名中的文件名
typevalue:
显示变量内容
edit文件名:
对m文件进行编辑
(2)工作空间(Workspace)
工作空间是一个重要而且比较抽象的概念,它是指运行MATLAB程序或命令所生成和存储在内存中的所有变量和MATLAB提供的常量构成的集合。
通过使用函数、运行M文件和装载保存的工作空间,可以向工作空间增加变量。
●save保存整个工作空间或一部分变量,使用方式:
saveworkspaceas文件名
或
save文件名[变量名]
●load恢复工作空间,使用方式:
loadworkspace
load文件名
●工作空间浏览器:
File->ShowWorkspace
●还有一组命令来管理这些变量。
who,whos:
显示出工作空间中的变量列表。
clear[变量名]:
清除变量
(3)MATLAB命令窗口
●输入命令和输出结果。
如输入:
help[函数名]
a=6
2.2矩阵、变量、运算和表达式
(1)矩阵的输入
A.直接输入:
注意:
(1)行元素间用空格或逗号(,)隔开;
(2)行与行之间用分号(;)或回车;
(3)整个元素列表用[]括起。
直接输入的矩阵为一全局变量,一直保存在内存中。
例:
a=[123;456]
a=
123
456
a=[1,2,3;4,5,6;7,8,9]a=[123;456;789]
矩阵元素:
可以灵活地描述矩阵元素,
●矩阵元素a[i,j]按列存放
通过下标单独对元素赋值
例:
a(1,1)=1,a(3,2)=a(1,1)得到
a=
1
a=
10
00
01
即自动形成一个3行2列矩阵,对未赋值的元素充值0。
●矩阵的元素可以用任意形式的表达式
例:
算术表达式
x=[-1,sqrt(5),(2+7)^4]
x=
1.0e+003*
-0.00100.00226.5610
●大矩阵可以用小矩阵作为元素
例:
a=[12;34]
b=[aa+5;a-5zeros(size(a))]
例:
A=[1,2,3;4,5,6]
A=
123
456
B=[A;7,8,9]
B=
123
456
789
●可以从矩阵中抽取某些元素构成新矩阵
C=A(1:
2,:
)
C=
123
456
例:
a=[3,4,5;6,7,8]
b=[+2,4*5,6]
c=[sin(0.5*pi),sqrt(4),0]
d=[a;b;c]
●复数的表示
MATLAB支持复数的运算,复数的虚部用i或j表示。
例:
a=1+2i或a=1+2j二者表示的结果一样。
复数可以直接运算,
例:
a=3+4i;
b=5+6j
a+b
输出:
ans=
8.0000+10.0000i
复数运算的一些常用函数:
①abs返回复数的模
②angle返回复数的相角
③conj返回共轭复数
④imag返回复数的实部
⑤real返回复数的虚部
B.用语句或函数产生:
a=randn(5,5)产生正态分布5*5的随机矩阵。
C.用M-文件或外部数据文件产生:
M-文件是一个以.m为后缀的文本文件,文件内容为一系列MATLAB命令,在MATLAB环境下键入该文件名(不包括后缀),文件中的全部命令会依次逐个执行;M-文件名(不包括后缀)相当于一个宏命令.
例如:
一个名为magik.m的文件包含了如下的内容,(假设magik.m在当前目录下)
A=[
16.03.02.013.0
5.010.011.08.0
9.06.07.012.0
4.015.014.01.0]
在Matlab环境下执行如下命令:
magik
A
A=
163213
510118
96712
415141
D.用矩阵编辑器创建和修改矩阵:
使用File->Showworkspace
(2)矩阵运算
运算符+,-,*,/(右除),\(左除)和^(幂)。
右除:
C=A/B即C满足CB=A,当B可逆时,A/B=AB-1
左除:
C=A\B即C满足AC=B,当A可逆时,A\B=A-1B
幂A^n=A*…*A;A必须是方阵。
例:
矩阵的加减法:
a=[1:
3;4:
6;7:
9]
b=a;c=a+b;c=a-b
注:
矩阵相加减必须有相同的维数。
例:
矩阵的点乘运算,^运算时矩阵必须为方阵,且只能与数字运算。
d=a*b必须符合m*n与n*l的结构。
d=a.*b矩阵的点乘运算
例:
\(左除):
A\B=inv(A)*B,其中inv(A)表示A逆阵,例如求解AX=B。
A=[100;040;009];
B=[123;010;011];
X=A\B
/(右除):
A/B=A*inv(B),例如求解XA=B。
X=B/A
(3)变量与表达式
●Matlab的赋值语句有两种形式:
其一为:
<变量>=表达式;
其二为:
表达式,将表达式的值赋于一个自动定义的变量ans。
注:
A:
如果以;结尾,则不显示计算结果,否则显示计算结果。
B:
除保留字外,变量可以用字母开头,后跟19个字母或数字。
变量名区分大小写,变量使用时不需要先定义,也不必定义变量的类型。
●可以用who或whos来显示已定义的变量
例如:
who
Yourvariablesare:
ABCaans
whos
NameSizeBytesClass
A2x348doublearray
B3x372doublearray
C2x348doublearray
a3x248doublearray
ans1x18doublearray
Grandtotalis28elementsusing224bytes
●一些常用的变量
pi3.14159265//π值
isqrt(-1)//虚数单位
jsameasi
epsfloating-pointrelativeprecision,2.2204e-016//容量变量
realminsmallestfloating-pointnumber,2.2251e-308//最小浮点数
realmaxlargestfloating-pointnumber,1.7977e+308//最大浮点数
infinfinity(任意一个非零数除以0)//正无穷大
nanNot-a-number(0/0或inf-inf)//非数
如:
r=1/0
r=inf
1/r
ans=0
(4)矩阵的其他简单运算:
A’:
矩阵转置
inv(A):
A-1
sum(A):
得到一个行向量,其元素为A的每一列的和
a=[123;456]
sum(a)sum(a’)
diag(A):
得到一个列向量,其元素为A的对角元
sum(diag(a))
冒号(:
)运算符:
a:
b:
c:
生成一个由等差数列构成的行向量X,X(i+1)-X(i)=b
例:
0:
pi/4:
pi
ans=
00.78541.57082.35623.1416
如果省略b,则等差数列的公差为1
a=0:
0.05:
1
x=linspace(0,1,75)
a=1:
4;b=1:
2:
7;c=[b,a]
等比数列:
logspace(0,2,11)创建起点为10,终点为102,11个元素,公比为100.2
矩阵的变换:
rot90:
矩阵逆时针旋转n*90度。
fliplr:
矩阵左右翻转。
flipud:
矩阵上下翻转。
稀疏矩阵的存储:
sparse(A):
用于把完全矩阵压缩为稀疏矩阵。
A=[0,1,0,0;0,3,0,4;5,0,0,0;0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 基础 知识点