MATLAB函数、数组.doc
文本预览下载声明
MATLAB函数、数组、矩阵
1. 基本运算与函数
在MATLAB下进行基本数学运算,只需将运算式直接打入提示号()之後,并按入Enter键即可。例如:
(5*2+1.3-0.8)*10/25
ans =4.2000
MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。
我们也可将上述运算式的结果设定给另一个变数x:
x = (5*2+1.3-0.8)*10^2/25
x = 42
此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。
若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例:
y = sin(10)*exp(-0.3*4^2);
若要显示变数y的值,直接键入y即可:
y
y =-0.0045
在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。
小整理:MATLAB常用的基本数学函数
abs(x):纯量的绝对值或向量的长度
angle(z):复数z的相角(Phase angle)
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):符号函数 (Signum function)。
当x0时,sign(x)=-1;
当x=0时,sign(x)=0;
当x0时,sign(x)=1。
小整理:MATLAB常用的三角函数
sin(x):正弦函数
cos(x):余弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反余弦函数
atan(x):反正切函数
atan2(x,y):四象限的反正切函数
sinh(x):超越正弦函数
cosh(x):超越余弦函数
tanh(x):超越正切函数
asinh(x):反超越正弦函数
acosh(x):反超越余弦函数
atanh(x):反超越正切函数
MATLAB的内部函数是有限的,有时需要为MATLAB定义新函数,为此必须编写函数M文件。
例:.
在M文件编辑窗口录入:
function y=f1(x)
y=sqrt((x-20).^2+100^2)+ sqrt((x-120).^2+120^2)?;
以f1.m将文件存盘并退出M文件编辑状态,然后重新回到MATLAB命令窗口。然后可用f1(3),f1(17)等计算。
注意:函数文件的文件名必须与函数名同名。
练习:编写的函数M文件。并计算f(1,2).
在M文件编辑窗口录入:
function f=f2(x)
f=100*(x(2)-x(1)^2)^2+(1-x(1))^2?;
以f2.m将文件存盘并退出M文件编辑状态,然后重新回到MATLAB命令窗口。然后可用f2(1,2)等计算。
2. 数组与矩阵
2.1 数组
2.1.1一维数组的构造方法
逐个元素输入法
如x=[2 pi/2 sqrt(3) 3+5i]。
冒号生成法
以“first:increment:last”格式创建数组。表示从first开始,以增量increment为步长,直到大于last前结束。冒号表示increment是数据元素增量。
例如:x=0:0.5:2 x=0:0.5:2.4 x=0:0.5:2.6
注1:也可以用()或[]括住表示,如x=(0:0.5:2), x=[0:0.5:2]。
注2:若增量为1,则可写成“fisrt:last”
线性均匀采样函数法
格式:linspace(first_value,last_value,number)
linspace(first_value,last_value)----产生first_value到last_value之间100个行矢量数值。
linspace(first_value,last_value,number)----产生两值域之间number个数值。
常用对数采样法
格式:logspace(a,b)----在之间,产生50个对数空间点的行矢量。
logspace(a,b,n)----在之间产生n个对数空间点。
logspace(a,pi)----在之间产生50个
显示全部