数组乘方与矩阵乘方MATLABA =1 2 34 5 67 8 9>> A_Ap=A.^0.3A_Ap =1.0000 1.2311 1.39041.5157 1.6207 1.71181.7928 1.8661 1.9332>> A_Mp=A^0.3A_Mp =0.6962 + 0.6032i 0.4358 + 0.1636i 0.1755 - 0.2759i0.6325 + 0.0666i 0.7309 + 0.0181i 0.8292 - 0.0305i

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/14 18:18:40

数组乘方与矩阵乘方MATLAB
A =
1 2 3
4 5 6
7 8 9
>> A_Ap=A.^0.3
A_Ap =
1.0000 1.2311 1.3904
1.5157 1.6207 1.7118
1.7928 1.8661 1.9332
>> A_Mp=A^0.3
A_Mp =
0.6962 + 0.6032i 0.4358 + 0.1636i 0.1755 - 0.2759i
0.6325 + 0.0666i 0.7309 + 0.0181i 0.8292 - 0.0305i
0.5688 - 0.4700i 1.0259 - 0.1275i 1.4830 + 0.2150i
A_Mp是矩阵的乘方 为什么会是复数

楼上的回答似乎并不能解释搂住的疑问.

 

数组乘方容易理解,对矩阵每个元素进行乘方即可.

矩阵乘方就比较复杂,具体可分几种情况(设计算A^p,其中A为方阵):

1、如果p是正整数,很简单,把A乘以其自身p-1次即可;

2、如果p是负整数,且A非奇异,则对A求逆,然后自乘相应的次数;

3、如果p不是整数,则A^p的计算涉及到矩阵的特征值与特征向量,算法比较复杂,但从概念上你可以这么理举个简单的例子,如果要计算(-1)^0.3,则

>> (-1)^0.3
ans =
   0.5878 + 0.8090i

我们看到,结果为复数,而对于楼主所举的例子来说,由于

>> A=reshape(1:9,[3 3])'
A =
     1     2     3
     4     5     6
     7     8     9
>> eig(A)
ans =
   16.1168
   -1.1168
   -0.0000

矩阵A的特征值有负数,那么结果中出现复数也就不奇怪了.

 

关于这方面更多的信息,建议楼主看一下这几处帮助:

help mpower
doc sqrtm
doc funm