1-1、基本运算与函数 boWaH}?0'
;.#l[
在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如: 6qq{JbK
i[rXs/]
>> (5*2+1.3-0.8)*10/25 ODE^;:z !
oC >l|?h,
ans =4.2000 Q|i`s=|
Z9k"&F~u}
MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答 案(Answer)并显示其数值於萤幕上。 5`Oaf\S
lMRy6fzI
小提示: ">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 ?*: mR|=
Mi2lBEu,
我们也可将上述运算式的结果设定给另一个变数x: C .{`-RO
x>*#cOVz;C
x = (5*2+1.3-0.8)*10^2/25 Ct\n1T }
04P!l
x = 42 0VwmV_6'<W
2:tO "
此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。 ~$:=hT1
0w<G)p~%n
小提示: MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 8*m=U@5]
ED=P
6u
若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: HqKI|^
,V{Cy`bi
y = sin(10)*exp(-0.3*4^2); )9?
^;HS
wTK>U`o
若要显示变数y的值,直接键入y即可: 3tAX4DnYrq
EhK5<v}
>>y i.Jk(%c
PAHkF&
y =-0.0045 4M{]YZMw8
ac< hz0
在上例中,sin是正弦函数,exp是指数函数,这些都是MATLAB常用到的数学函数。 mjXO}q7
~
$QNp#dq
下表即为MATLAB常用的基本数学函数及三角函数: 0Er;l|
'X{J~fEI!
小整理:MATLAB常用的基本数学函数 Gp5[H}8K
SXx;-Ws
abs(x):纯量的绝对值或向量的长度 +!9&zYu!
`ot<BwxJ
angle(z):复 数z的相角(Phase angle) -lNT"9
R#w9%+
sqrt(x):开平方 fjwUh>[ }
PS3%V_2
real(z):复数z的实部 |JRaskd
?)i`)mu'
imag(z):复数z的虚 部 t$yt8#Tk
NP< {WL#
conj(z):复数z的共轭复数 HMrl!;:
%jRqrICd
round(x):四舍五入至最近整数 t!JD]j>q
`-QY<STTP9
fix(x):无论正负,舍去小数至最近整数 NNM+Z:
DgiMMmpE
floor(x):地板函数,即舍去正小数至最近整数 u{dI[?@
2,.;Mdl
ceil(x):天花板函数,即加入正小数至最近整数 q/l@J3p[qm
Y9_OkcW)
rat(x):将实数x化为分数表示 >;M?f!
BiI}JEp4o
rats(x):将实数x化为多项分数展开 ,oS<9kC68
[23F0-p
sign(x):符号函数 (Signum function)。 :L'U>)k
F4`5z)<*
当x<0时,sign(x)=-1; ((T0zQ7=
TU(w>v
当x=0时,sign(x)=0; >ho$mvT
U~1jmxE
当x>0时,sign(x)=1。 rbD}fUg
QYj 8c]8f
> 小整理:MATLAB常用的三角函数 k5ZkD+0Jo
?!d\c(5Gt
sin(x):正弦函数 NP_b~e6O=
&hri4p/
cos(x):馀弦函数 =i:6&Y~VGq
O!=ae|
tan(x):正切函数 pg:1AAhT[
~+r"%KnG
asin(x):反正弦函数 1p |}=R
5Dv;-G;
acos(x):反馀弦函数 h..D1(M
Z+ ?V10$
atan(x):反正切函数 c4AkH|
@M!WosRk
atan2(x,y):四象限的反正切函数 >nA6w$
+o7Np|Ou
sinh(x):超越正弦函数 c5f8pa
*
3+`
<2TP
cosh(x):超越馀弦函数 gk.c"$2
A0>u9Bn"Qw
tanh(x):超越正切函数 Sy?O(BMo
Nt^9N
#+N
asinh(x):反超越正弦函数 FPBO=?H.
RCvf@[y4
acosh(x):反超越馀弦函数 ?!$uMKyt
=|_{J"sv
atanh(x):反超越正切函数 43p0k&;-7
k@i+gV%
变数也可用来存放向量或矩阵,并进行各种运算,如下例的列向量(Row vector)运算: FBCi,_
\4
},@1i<Bb
x = [1 3 5 2]; NrrnG]#p1
+zz\*
y = 2*x+1 vUa&9Y
/v^1/i
y = 3 7 11 5 Rl2*oOVz
[LHx9(,NM
小提示:变数命名的规则 0s#`H
yS)73s/MrY
1.第一个字母必须是英文字母 2.字母间不可留空格 3.最多只能有19个字母,MATLAB会忽略多馀字母 k Up[b~
SK@%r
我们可以随意更改、增加或删除向量的元素: j$TTLFK1
L9Gxqw
y(3) = 2 % 更改第三个元素 yK #9)W-
NWt `X!
y =3 7 2 5 nn0`A3
et$VR:
y(6) = 10 % 加入第六个元素 b?~%u+'3
vA r
fsgk
y = 3 7 2 5 0 10 +v7mw<6s
F/ODV=J-
y(4) = [] % 删除第四个元素, :s}6 a23
[1\k'5rp
y = 3 7 2 0 10 0L5n<<