本文属于Matlab快速入门之线性代数的第三篇,即幂和指数 ,主要包括正整数幂、逆幂和分数幂、逐元素幂、平方根、标量底、矩阵指数、处理较小的数字等各种方法计算矩阵幂和指数。
正整数幂
如果A
为方阵并且p
为正整数,则A^p
实际上是将A
乘以其自身p-1
次。例如:
>> A = [1 1 1
1 2 3
1 3 6];
>> A^2
ans =
3 6 10
6 14 25
10 25 46
逆幂和分数幂
如果A
为方阵并且是非奇异的,则A^(-p)
实际上是将inv(A)
乘以其自身p-1
次。
>> A^(-3)
ans =
145.0000 -207.0000 81.0000
-207.0000 298.0000 -117.0000
81.0000 -117.0000 46.0000
MATLAB® 用相同的算法计算inv(A)
和A^(-1)
,因此结果完全相同。如果矩阵接近奇异,inv(A)
和A^(-1)
都会发出警告。
>> isequal(inv(A),A^(-1))
ans =
1
也允许分数幂,例如A^(2/3)
。使用小数幂的结果取决于矩阵特征值的分布。
>> A^(2/3)
ans =
0.8901 0.5882 0.3684
0.5882 1.2035 1.3799
0.3684 1.3799 3.1167
逐元素幂
.^
运算符计算逐元素幂。例如,要对矩阵中的每个元素求平方,可以使用A.^2
。
>> A.^2
ans =
1 1 1
1 4 9
1 9 36
平方根
使用sqrt
函数可以方便地计算矩阵中每个元素的平方根。另一种方法是A.^(1/2)
。
>> sqrt(A)
ans =
1.0000 1.0000 1.0000
1.0000 1.4142 1.7321
1.0000 1.7321 2.4495
对于其他根,您可以使用nthroot
。例如,计算A.^(1/3)
。
>> nthroot(A,3)
ans =
1.0000 1.0000 1.0000
1.0000 1.2599 1.4422
1.0000 1.4422 1.8171
这些按元素计算的根不同于矩阵平方根,后者计算得到的是另一个矩阵B以满足A=BB。函数sqrtm(A)
采用更精确的算法计算A^(1/2)
。sqrtm
中的m
将此函数与sqrt(A)
区分开来,后者与A.^(1/2)
一样,以逐元素方式工作。
>> B = sqrtm(A)
B =
0.8775 0.4387 0.1937
0.4387 1.0099 0.8874
0.1937 0.8874 2.2749
>> B^2
ans =
1.0000 1.0000 1.0000
1.0000 2.0000 3.0000
1.0000 3.0000 6.0000
标量底
除了对矩阵求幂以外,您还可以以矩阵为次数对标量求幂。
>> 2^A
ans =
10.4630 21.6602 38.5862
21.6602 53.2807 94.6010
38.5862 94.6010 173.7734
当您以矩阵为次数对标量求幂时,MATLAB 使用矩阵的特征值和特征向量来计算矩阵幂。如果[V,D] = eig(A)
,则2A=V2DV−1
。
>> [V,D] = eig(A);
>> V*2^D*V^(-1)
ans =
10.4630 21.6602 38.5862
21.6602 53.2807 94.6010
38.5862 94.6010 173.7734
矩阵指数
矩阵指数是以矩阵为次数对标量求幂的特殊情况。矩阵指数的底是欧拉数e = exp(1)
。
>> e = exp(1);
>> e^A
ans =
1.0e+03 *
0.1008 0.2407 0.4368
0.2407 0.5867 1.0654
0.4368 1.0654 1.9418
expm
函数是计算矩阵指数的一种更方便的方法。
>> expm(A)
ans =
1.0e+03 *
0.1008 0.2407 0.4368
0.2407 0.5867 1.0654
0.4368 1.0654 1.9418
矩阵指数可以用多种方法来计算。
处理较小的数字
对于非常小的x值,MATLAB 函数log1p
和expm1
可以精确计算log(1+x)和ex−1。例如,如果您尝试将小于计算机精度的一个数与 1 相加,则结果会舍入到 1。
>> log(1+eps/2)
ans =
0
但是,log1p
能够返回更准确的答案。
>> log1p(eps/2)
ans =
1.1102e-16
同样,对于ex−1
,如果x非常小,则会将它舍入为零。
>> exp(eps/2)-1
ans =
0
同样,expm1
能够返回更准确的答案。
>> expm1(eps/2)
ans =
1.1102e-16
转载文章,原文出处:MathWorks官网,由古哥整理发布
如若转载,请注明出处:https://iymark.com/articles/3276.html