1.常用的数学函数
在matlab中,函数的自变量都规定为矩阵变量,运算的方法就是将函数作用在矩阵的元素上,我们在实际使用中经常见到的函数有三角函数系列(sin,cos,tan.asin,scos...)
求幂,求绝对值等函数 :pow2(求2的幂) abs(求绝对值),取整函数 等等,其中要说明的是,三角函数都是按照弧度制为单位计算。而利用abs函数则可以完成对实数的绝对值、复数的模,求字符的ASCII码值,例如:
>> x=(4.56)
x =
4.5600
>> y=abs(3+4i)
y =
5
>> z=abs('a')
z =
97
常用的取整函数有fix,floor,ceil,round,注意他们的区别:
fix:向零方向取整;
floor:不大于自变量的最大整数;
ceil:不小于自变量的最小整数;
round:四舍五入到最邻近的整数;
2.矩阵的超越函数
在matlab中,sqrt,exp等函数都是作用在矩阵的每个元素上的,例如:
>> A=[4,2;3,6];
>> B=sqrt(A);
>> B
B =
2.0000 1.4142
1.7321 2.4495
除此之外,还有一些函数是直接作用在矩阵上的,例如矩阵平方根:sqrtm,求得结果即为两个相乘为原矩阵:
>> A=[4,2;3,6];
>> A
A =
4 2
3 6
>> B=sqrtm(A);
>> B
B =
1.9171 0.4652
0.6978 2.3823
>> B*B
ans =
4.0000 2.0000
3.0000 6.0000
有些矩阵没有平方根:
>> C=[0,1;0,0];
>> sqrtm(C)
警告: 矩阵具有奇异性,可能没有平方根。
> In sqrtm at 68
ans =
NaN Inf
NaN NaN
矩阵对数函数logm以及矩阵指数函数expm:
>> A=[4,9;1,5];
>> L=logm(A)
L =
1.0639 2.4308
0.2701 1.3340
>> B=expm(L)
B =
4.0000 9.0000
1.0000 5.0000