Logarithm of a matrix

This is an old revision of this page, as edited by Oleg Alexandrov (talk | contribs) at 13:43, 19 October 2005 (Numerical method: matrix diagonalization: add a blurb justifing an earlier statement, and a bit of discussion of nondiagonalizable matrices). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In mathematics, the logarithm of a matrix is a generalization of the scalar logarithm to matrices. It is in some sense an inverse function of the matrix exponential.

Definition

A matrix B is a logarithm of some matrix A if A is the matrix exponential of B:

 

Properties

A matrix has a logarithm if and only if it is invertible. However, this logarithm may be complex even if all the entries in the matrix are real numbers. In any case, the logarithm is not unique.

Numerical method: matrix diagonalization

A method for finding ln A for a diagonalizable matrix A is the following:

Find the matrix V of eigenvectors of A (each column of V is an eigenvector of A).
Find the inverse V−1 of V.
Let
 
Then A′ will be a diagonal matrix whose diagonal elements are eigenvalues of A.
Replace each diagonal element of A′ by its (natural) logarithm in order to obtain  .
Then
 

That the logarithm of A might be a complex matrix even if A is real then follows from the fact that a matrix with real entries might nevertheless have complex eigenvalues (this is true for example for rotation matrices). The non-uniqueness of the logarithm of a matrix follows from the non-uniqueness of the logarithm of a complex number.

The algorithm illustrated above does not work for non-diagonalizable matrices, for example for the matrix

 

For such matrices one needs to find its Jordan decomposition and, rather than computing the logarithm of a diagonal matrix as above, one would should calculate the logarithm of its Jordan blocks. For the particular matrix at the beginning of this paragraph one would find a logarithm to be

 

See also