expAv: Matrix exponential of sparse matrix multiplied by a vector.

View source: R/expAv.R

expAvR Documentation

Matrix exponential of sparse matrix multiplied by a vector.

Description

Calculates expm(A) %*% v using plain series summation. The number of terms is determined adaptively when uniformization=TRUE. The uniformization method essentially pushes the spectrum of the operator inside a zero centered disc, within which a uniform error bound is available. If A is a generator matrix (i.e. expm(A) is a probability matrix) and if v is a probability vector, then the relative error of the result is bounded by tol.

Usage

expAv(A, v, transpose = FALSE, uniformization = TRUE, tol = 1e-08, ...)

Arguments

A

Sparse matrix (usually a generator)

v

Vector (or matrix)

transpose

Calculate expm(t(A)) %*% v ? (faster due to the way sparse matrices are stored)

uniformization

Use uniformization method?

tol

Accuracy if A is a generator matrix and v a probability vector.

...

Extra configuration parameters

Details

Additional supported arguments via ... currently include:

  • Nmax Use no more than this number of terms even if the spcified accuracy cannot be met.

  • warn Give warning if number of terms is truncated by Nmax.

  • trace Trace the number of terms when it adaptively changes.

Value

Vector (or matrix)

References

Grassmann, W. K. (1977). Transient solutions in Markovian queueing systems. Computers & Operations Research, 4(1), 47–53.

Sherlock, C. (2021). Direct statistical inference for finite Markov jump processes via the matrix exponential. Computational Statistics, 36(4), 2863–2887.


RTMB documentation built on Sept. 12, 2024, 6:45 a.m.