Matlab乘法矩阵M * P(n-1)

时间:2013-09-18 14:42:58

标签: matlab vector matrix matrix-multiplication

假设我有一个3x3矩阵和一个3x1向量,我想多次将我的矩阵A与向量P相乘。

A=[0 0.3 0.5; 0.8 0 0.5; 0.2 0.7 0] * P=[1; 1; 1] 

我想将P的答案乘以N次。

现在我可以手动执行此操作,但我被迫使用Matlab,这让我很头疼。

干杯

1 个答案:

答案 0 :(得分:1)

这只是猜测,但我认为你想要的是

PN = mpower(A,N)*P0

此处N是世代号,P0是初始人口向量。

根据@LuisMendo和@DennisJaheruddin的建议,这相当于

PN = A^N*P0

详细说明:在每一代中,您使用Pnew = A*Pold计算旧的人口,即:

 P1 = A*P0                % generation 1
 P2 = A*P1 = A*A*P0       % generation 2
 P3 = A*P2 = A*A*A*P0     % generation 3

依此类推,

 PN = (A*A*A*A...*A)*P0     % generation N
    = A^N*P0