mpower | R Documentation |
Calculates the n
-th power of a square matrix, where n
can be a
positive or negative integer or a fractional power.
mpower(A, n) A %^% n
A |
A square matrix. Must also be symmetric for non-integer powers. |
n |
matrix power |
If n<0
, the method is applied to A^{-1}.
When n
is an
integer, the function uses the Russian peasant method, or repeated squaring
for efficiency.
Otherwise, it uses the spectral decomposition of A
,
\mathbf{A}^n = \mathbf{V} \mathbf{D}^n \mathbf{V}^{T}
requiring a symmetric matrix.
Returns the matrix A^n
Michael Friendly
https://en.wikipedia.org/wiki/Exponentiation_by_squaring
Packages corpcor and expm define similar functions.
M <- matrix(sample(1:9), 3,3) mpower(M,2) mpower(M,4) # make a symmetric matrix MM <- crossprod(M) mpower(MM, -1) Mhalf <- mpower(MM, 1/2) all.equal(MM, Mhalf %*% Mhalf)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.