Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

matpow

Matrix Power


Description

Compute the k-th power of a matrix. Whereas x^k computes element wise powers, x %^% k corresponds to k - 1 matrix multiplications, x %*% x %*% ... %*% x.

Usage

x %^% k

Arguments

x

a square matrix.

k

an integer, k >= 0.

Details

Argument k is coerced to integer using as.integer.

The algorithm uses O(log2(k)) matrix multiplications.

Value

A matrix of the same dimension as x.

Note

If you think you need x^k for k < 0, then consider instead solve(x %^% (-k)).

Author(s)

Based on an R-help posting of Vicente Canto Casasola, and Vincent Goulet's C implementation in actuar.

See Also

%*% for matrix multiplication.

Examples

A <- cbind(1, 2 * diag(3)[,-1])
A
A %^% 2
stopifnot(identical(A, A %^% 1),
          A %^% 2 == A %*% A)

expm

Matrix Exponential, Log, 'etc'

v0.999-6
GPL (>= 2)
Authors
Vincent Goulet, Christophe Dutang, Martin Maechler, David Firth, Marina Shapira, Michael Stadelmann
Initial release
2021-01-12

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.