naginterfaces.library.matop.complex_gen_matrix_frcht_pow(a, e, p)[source]

complex_gen_matrix_frcht_pow computes the Fréchet derivative of the th power (where is real) of the complex matrix applied to the complex matrix . The principal matrix power is also returned.

For full information please refer to the NAG Library document for f01kf

acomplex, array-like, shape

The matrix .

ecomplex, array-like, shape

The matrix .


The required power of .

acomplex, ndarray, shape

The principal matrix th power, . Alternatively if = 1, a non-principal th power is returned.

ecomplex, ndarray, shape

The Fréchet derivative .

(errno )

On entry, .

Constraint: .

(errno )

is singular so the th power cannot be computed.

(errno )

An unexpected internal error occurred. This failure should not occur and suggests that the function has been called incorrectly.

(errno )

has eigenvalues on the negative real line. The principal th power is not defined in this case, so a non-principal power was returned.

(errno )

has been computed using an IEEE double precision Padé approximant, although the arithmetic precision is higher than IEEE double precision.


For a matrix with no eigenvalues on the closed negative real line, () can be defined as

where is the principal logarithm of (the unique logarithm whose spectrum lies in the strip ). If is nonsingular but has negative real eigenvalues, the principal logarithm is not defined, but a non-principal th power can be defined by using a non-principal logarithm.

The Fréchet derivative of the matrix th power of is the unique linear mapping such that for any matrix

The derivative describes the first-order effect of perturbations in on the matrix power .

complex_gen_matrix_frcht_pow uses the algorithms of Higham and Lin (2011) and Higham and Lin (2013) to compute and . The real number is expressed as where and . Then . The integer power is found using a combination of binary powering and, if necessary, matrix inversion. The fractional power is computed using a Schur decomposition, a Padé approximant and the scaling and squaring method. The Padé approximant is differentiated in order to obtain the Fréchet derivative of and is then computed using a combination of the chain rule and the product rule for Fréchet derivatives.


Higham, N J, 2008, Functions of Matrices: Theory and Computation, SIAM, Philadelphia, PA, USA

Higham, N J and Lin, L, 2011, A Schur–Padé algorithm for fractional powers of a matrix, SIAM J. Matrix Anal. Appl. (32(3)), 1056–1078

Higham, N J and Lin, L, 2013, An improved Schur–Padé algorithm for fractional powers of a matrix and their Fréchet derivatives, SIAM J. Matrix Anal. Appl. (34(3)), 1341–1360