MatrixExp
The matrix exponential , for a square matrix A.
MatrixExp!MatrixExp(A)the matrix exponential of the square matrix A.Matrix(A).exp().tolist()MatrixExp(A, v): A's matrix exponential applied to the vector v.list(Matrix(A).exp() * Matrix(v))Typed signatures
| Type | Package | Applies |
|---|---|---|
(matrix, list<number>?) -> list<number> | matrix | analytic | always |
Details
- NOT Exp of a matrix, which broadcasts element-wise instead -- see that entry's divergence note.
- Exact where the structure gives one: a diagonal A reduces to elementwise Exp on the diagonal; a 2×2 A reduces to a closed form in Cosh, Sinh and Sqrt of its trace and determinant (which also covers every 2×2 nilpotent and repeated-eigenvalue case, and -- written to recognize a provably negative discriminant -- every 2×2 rotation generator, in Cos and Sin instead); a nilpotent A of any size, with exact entries, reduces to its truncated Taylor series.
- Otherwise numeric only, produced under N(): scaling-and-squaring, in double precision.
- Rejects a non-square argument, same as MatrixRank's siblings Inverse, MatrixPower, and Determinant.
- MatrixExp(A, v) computes first (via whichever path above applies) and multiplies by
v; it is not a matrix-free method, just a shorter call.
Examples
3 more kept as data, checked against the oraclesBasic #
Scope #
A 3×3 matrix with no diagonal, nilpotent, or 2×2 structure to exploit: numeric only, via scaling-and-squaring
live ↗Known value · mpmath 1.3.0 expm
Applied to a vector, : computed as (via whichever closed form applies) times , not a matrix-free method
live ↗A nilpotent generator: the exponential series truncates exactly, past the case.
live ↗Known value · mpmath 1.3.0 expm
A Jordan block (repeated eigenvalue 2): , not a diagonal exponential.
live ↗Known value · mpmath 1.3.0 expm
Applications #
A skew-symmetric generator gives a rotation matrix: the 2×2 closed form recognizes its purely imaginary eigenvalues and reduces straight to and , not and
live ↗About
| Examples | 21 |
|---|---|
| Checked against | Wolfram Language 18 agree3 differSageMath 13 agree4 errorSymPy 12 agree7 error |
| Crosswalk | Wolfram LanguageSymPy ×2 |
Implementation
sagepackages/oracle/src/mappings.tssympypackages/oracle/src/mappings.tssympypackages/oracle/src/mappings.tsApplied to a vector, e^A v, flattened as ours is.
See also: Exp, MatrixPower, Inverse, Determinant