001matlab入门常识.docx
- 文档编号:7659324
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:10
- 大小:27.79KB
001matlab入门常识.docx
《001matlab入门常识.docx》由会员分享,可在线阅读,更多相关《001matlab入门常识.docx(10页珍藏版)》请在冰豆网上搜索。
001matlab入门常识
MATLAB入门
1.变量或文件命名规则
变量名(或文件名)
1)变量名区分大小写;
2)变量的第一个字符必须为英文字母,而且不能超过63个字符;3)变量名可以包含下连字符、数字,但不能为空格符、标点。
注意:
MATLAB规定变量名的输入必须以英文输入法输入,且标点符号也必须英文输入法输入否则以无法识别,会提示程序出错;
2.MATLAB默认的预定义变量
MATLAB本身有一些默认的预定义变量,因此在编写程序时最好不要定义与此同名的变量。
否则程序虽然不会出错,但预定义变量的作用就失效。
ans
预设的计算结果的变量名
eps
MATLAB定义的正的极小值=2.2204e-16
pi
内建的π值
inf
∞值,无限大()
NaN
无法定义一个数(NotaNumber)
i或j
虚数单位i=j=√-1
nargin
函数输入参数个数
nargout
函数输出参数个数
realmax
最大的正实数=(2-eps)*2^1023
realmin
最小的正实数=2^(-1022)
Flops
浮点运算次数
3.MATLAB表达式
MATLAB语言的赋值语句有两种:
(1)变量名=运算表达式
(2)[返回变量列表]=函数名(输入变量列表)
说明:
①左边只有一个变量,可以不用“[]”,当多个变量时必须用;
②左边变量列表省略,执行结果赋给保留变量“ans”;
③“;”用做不显示结算结果的指令与后面指令的分隔;
④如果一个指令过长,可以在结尾加上...(代表此行指令在下一行继续)
语言结构。
4.常用的数学运算符及数学函数
+,-,*(乘),/(左除),\(右除),^(幂)
•在运算式中,MATLAB通常不需要考虑空格;
•多条命令可以放在一行中,它们之间需要用分号隔开;逗号告诉MATLAB显示结果,而分号则禁止结果显示。
•MATLAB的加点运算.+,.*,.^等,表示直接对矩阵的分量进行操作。
常用的数学函数
MATLAB常用的三角函数
sin(x):
正弦函数
sinh(x):
超越正弦函数
cos(x):
馀弦函数
cosh(x):
超越馀弦函数
tan(x):
正切函数
tanh(x):
超越正切函数
asin(x):
反正弦函数
asinh(x):
反超越正弦函数
acos(x):
反馀弦函数
acosh(x):
反超越馀弦函数
atan(x):
反正切函数
atanh(x):
反超越正切函数
atan2(x,y):
四象限的反正切函数
sinh(x):
超越正弦函数
MATLAB常用的基本数学函数
abs(x):
纯量的绝对值或向量的长度
angle(z):
复数z的相角(Phaseangle)
sqrt(x):
开平方
real(z):
复数z的实部
imag(z):
复数z的虚部
conj(z):
复数z的共轭复数
round(x):
四舍五入至最近整数
fix(x):
无论正负,向零取整数
floor(x):
地板函数,即舍去正小数至最近整数
ceil(x):
天花板函数,即加入正小数至最近整数
rat(x):
将实数x化为分数表示
rats(x):
将实数x化为多项分数展开
sign(x):
符号函数(Signumfunction)。
当x<0时,sign(x)=-1;
当x=0时,sign(x)=0;
当x>0时,sign(x)=1。
rem(x,y):
求x除以y的馀数
gcd(x,y):
整数x和y的最大公因数
lcm(x,y):
整数x和y的最小公倍数
exp(x):
自然指数
pow2(x):
2的指数
log(x):
以e为底的对数,即自然对数或
log2(x):
以2为底的对数
log10(x):
以10为底的对数
5.MATLAB关系运算
在执行关系及逻辑运算时,MATLAB将输入的不为零的数值都视为真(True)而为零的数值则视为否(False)。
运算的输出值将判断为真者以1表示,而判断为否者以0表示。
各个运算元须用在二个大小相同的阵列或是矩阵中的比较。
运算符
含义
运算符
含义
>
大于关系
<
大于关系
==
等于关系
>=
大于或等于关系
<=
小于或等于关系
~=
不等于关系
6.命令窗常用控制指令
指令
含义
指令
含义
cd
显示当前工作目录
exit
退出MATLAB
clf
清除图形窗
quite
退出MATLAB
clc
清除命令窗口的所有指令
md
创建目录
clear
清除工作空间中所有变量
more
使其后的内容分页显示
dir
列出指定目录下的文件及文件夹
type
在命令窗口显示指定文件的脚本内容
edit
打开m文件编辑器
which
指定文件的所在目录
7.常用标点的作用
名称
标点
作用
空格
(为机器输入辨认)用做输入量与输入量或数组的分隔符
逗号
用做输入量与输入量或数组的分隔符;显示结果指令与其后指令的分隔。
黑点
.
小数点
分号
;
用做不显示结算结果的指令的结尾标志。
注释号
%
它后面的是非执行的注释语句
单引号对
‘
字符串记述符
圆括号
()
在数组援引时;函数输入参数
方括号
[]
输入数组时;函数输出参数
花括号
{}
细胞数组记述符
下连号
_
在变量命名中可以使用
续行号
…
如果命令语句超过一行或者太长希望分行输入,则可以使用多行命令继续输入
“At”号
@
放在函数名前,形成函数句柄;放在目录名前,形成用户对象类目录
注意:
为确保指令正确执行,以上符号必须在英文状态下输入。
因为MATLAB不能识别中文标点
8.数据的输入与输出
(1)键盘输入数字、字母、字符串等
z=input('Typeyourinput:
')
y=input('请输入字符串:
','s')
(2)命令窗口输出数字、矩阵、字符串等
disp('Thisisatestfordisp')
A=[123;5,4,6;7,1,3];disp(A)
(3)从文件读格式化数据
fid=fopen('FileIO.dat','r');
Mytitle=fgetl(fid);
MyData=fscanf(fid,'%g')
status=fclose(fid);
(4)输出格式化的信息、数据等到命令窗口或文件
r=2.4;vol=4*pi*r^3/3;
fprintf('\n球的体积%12.5f.\n',vol);
fid=fopen('FileIO_1.dat','w');
fprintf(fid,'radius=%12.5f,volume=%12.5f\n',r,vol);
fclose(fid);
(5)二进制文件与矩阵间数据传递,输入fread、输出fwrite
fid=fopen('alphabet.txt','r');
D=fread(fid,10,'*char')'
fclose(fid);
(6)ASCII文件与矩阵数据传递,输入dlmread、输出dlmwrite
(7)EXCLE文件与矩阵数据传递,输入xlsread、输出xlswrite
9.inline函数与匿名函数
为了便于描述某个数学函数,可以用inline()函数来直接编写该函数,相当于一般的M函数,调用形式为
fun=inline(‘函数表达式’,自变量列表)
注意:
inline函数只支持一个语句描述的函数形式;变量列表中的每个自变量均需要用单引号括起来。
例如函数
可以定义为
f=inline(‘sin(x.^2+y.^2)’,’x’,’y’)
匿名函数是MATLAB7.0提出的一种全新的函数表示方式,其描述格式为
f=@(变量列表)函数表达式
匿名函数可以直接使用MATLAB当前工作空间中的变量,同上例
f=@(x,y)sin(x.^2+y.^2)
10.MATLAB使用技巧:
(1).函数或命令的模糊查询:
输入函数或命令的前几个字母,然后按Tab键,系统会列出所有以这几个字母开头的函数和命令。
(2).设置搜索路径:
在MATLAB的File菜单中选SetPath命令,将出现搜索路径设置对话框;通过AddFolder或AddwithSubfolder命令按钮将指定路径添加到搜索路径列表中;修改后需要保存。
(3).中断执行:
同时按下Ctrl和C键,可以中断MATLAB的运算过程。
一、MATLAB基本矩阵函数
1.矩阵的构造与操作函数
zeros生成元素全为0的矩阵
ones生成元素全为1的矩阵
eye生成单位矩阵
rand生成随机矩阵
randn生成正态分布随机矩阵
diag对角矩阵
tril矩阵的下三角部分
triu矩阵的上三角部分
flipud矩阵上下翻转
fliplr矩阵左右翻转
MATLAB还能够构造一些常用的特殊矩阵
2.矩阵运算函数
length向量维数或矩阵行、列数中较大的值
size矩阵行、列数
norm矩阵或向量范数
rank矩阵的秩
det方阵的行列式
trace方阵的迹
null求基础解系(矩阵的零空间)
orth正交规范化
rref矩阵的行最简形(初等行变换求解线性方程组)
subspace计算两个子空间的夹角
3.与线性方程有关的矩阵运算函数
inv方阵的逆
cond方阵的条件数
linsolve矩阵方程组的求解
lu矩阵的LU分解
qr矩阵的正交三角分解
pinv矩阵的广义逆
4.与特征值或奇异值有关的矩阵函数
eig方阵的特征值与特征向量
svd矩阵的奇异值分解
5.与矩阵计算有关的符号函数
detinvrank
nullrrefeig
polysvdjordan
diagtriltriu
二、MATLAB的程序文件——M文件
M文件是由ASCII码构成的,可以由任何文本编辑程序来编写,MATLAB的程序编辑窗口提供了方便的程序编辑功能。
M文件分为两类:
命令文件和函数文件,它们的扩展名均为.m。
M文件可以相互调用,也可以自己调用自己。
1.命令文件
MATLAB的命令文件是由一系列MATLAB命令和必要的程序注释构成。
调用命令文件时,MATLAB自动按顺序执行文件中的命令。
命令文件需要在工作区创建并获取变量值,它没有输入参数,也不返回输出参数,只能对工作区的全局变量进行运算。
文件调用是通过文件名进行的。
例1:
程序vandermonde.m建立由向量T确定的范德蒙行列式矩阵vand。
%vandermonde.m
%CreateVandermondeMatrixfromVectorT
T=[-12135];n=length(T);
fori=1:
n
vand(i,:
)=T.^(i-1);
end
vand
首先在程序编辑窗口输入上述程序,并用vandermonde.m作为文件名存盘;然后在命令窗口执行vandermonde.m,得到矩阵
vand=
11111
-12135
141925
-18127125
116181625
在M文件中由符号“%”开始的行是注释行,用于对程序进行说明,可供help命令查询,但程序执行时会自动忽略。
2.函数文件
MATLAB绝大多数的功能函数都是由函数文件实现的,用户编写的函数文件可以像库函数一样被调用。
MATLAB的函数文件可以实现计算中的参数传递。
函数文件一般有返回值,也可以只执行操作而无返回值。
函数文件的第一行是以function开头的语句,具体形式为:
function[输出变量列表]=函数名(输入变量列表)
其中输入变量用圆括号括起来,输出变量超过一个就用方括号括起来;如果没有输入或输出变量,则可以用空的括号表示。
函数文件从第二行开始才是函数体语句。
必须注意函数文件的文件名一定与函数名相同,这样才能确保文件的调用。
函数文件不能访问工作区中的变量,它所有的变量都是局部变量,只有它的输入和输出变量才被保留在工作区中;将函数文件与feval命令联合使用,得到的函数值还可以作为另一个函数文件的参数,这样可以使函数文件具有更广泛的通用性。
例:
编写计算Fibonnaci数的MATLAB程序。
编写函数文件fibfun.m,该程序在输入变量n的值之后,输出第n个Fibonnaci数。
%fibfun.m
%fibfunforcalculatingFibonaccinumbers
functionf=fibfun(n)
ifn>2
f=fibfun(n-2)+fibfun(n-1);
else
f=1;
end
在程序编辑窗口输入后以“fibfun.m”为文件名存盘;执行fibfun(16),就得到n=16时的Fibonnaci数
ans=
987
在程序编辑窗口编写MATLAB程序时,MATLAB自动将程序中的字符用不同颜色显示,以表明这些字符的不同属性。
例如程序的注解用绿色表示;程序的主体用黑色显示;程序某些属性值的设定用红色表示;程序的流程控制语句则用蓝色来标示。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 001 matlab 入门 常识