【发布时间】:2020-02-02 21:53:47
【问题描述】:
我正在尝试计算P^100,其中P 是我的转换矩阵。我想通过对角化P 来做到这一点,这样我们就有了P = Q*D*Q^-1。
当然,如果我能让P 成为这种形式,那么我可以很容易地计算出P^100 = Q*D^100*Q^-1(其中* 表示矩阵乘法)。
我发现,如果您只执行P^5,您将得到的只是一个矩阵,其中 P 的每个条目都被提升到 5 次方,而不是矩阵的 5 次方 (P*P*P*P*P )。
我在这里发现了一个问题,询问如何检查矩阵是否可对角化,而不是如何显式构造矩阵的对角化。在 MATLAB 中它非常简单,但我使用的是 R 而不是 MATLAB。
【问题讨论】:
-
正则算术运算符在 R 中是元素级的。您应该能够执行
P%*%P%*%P%*%P%*%P并且可能类似于 Reduce('%*%', as.list(rep(P,5) ) )
标签: r matrix exponent diagonal