naginterfaces.library.matop.real_gen_matrix_fun_std¶
- naginterfaces.library.matop.real_gen_matrix_fun_std(fun, a)[source]¶
real_gen_matrix_fun_std
computes the matrix exponential, sine, cosine, sinh or cosh, of a real matrix using the Schur–Parlett algorithm.For full information please refer to the NAG Library document for f01ek
https://support.nag.com/numeric/nl/nagdoc_30.2/flhtml/f01/f01ekf.html
- Parameters
- funstr
Indicates which matrix function will be computed.
The matrix exponential, , will be computed.
The matrix sine, , will be computed.
The matrix cosine, , will be computed.
The hyperbolic matrix sine, , will be computed.
The hyperbolic matrix cosine, , will be computed.
- afloat, array-like, shape
The matrix .
- Returns
- afloat, ndarray, shape
The matrix, .
- imnormfloat
If has complex eigenvalues,
real_gen_matrix_fun_std
will use complex arithmetic to compute the matrix function. The imaginary part is discarded at the end of the computation, because it will theoretically vanish. contains the -norm of the imaginary part, which should be used to check that the routine has given a reliable answer.If has real eigenvalues,
real_gen_matrix_fun_std
uses real arithmetic and .
- Raises
- NagValueError
- (errno )
On entry, .
Constraint: .
- (errno )
Input argument is invalid.
- (errno )
A Taylor series failed to converge.
- (errno )
An unexpected internal error occurred when evaluating the function at a point. Please contact NAG.
- (errno )
There was an error whilst reordering the Schur form of .
Note: this failure should not occur and suggests that the function has been called incorrectly.
- (errno )
The function was unable to compute the Schur decomposition of .
Note: this failure should not occur and suggests that the function has been called incorrectly.
- (errno )
An unexpected internal error occurred. Please contact NAG.
- (errno )
The linear equations to be solved are nearly singular and the Padé approximant used to compute the exponential may have no correct figures.
Note: this failure should not occur and suggests that the function has been called incorrectly.
- Notes
, where is either the exponential, sine, cosine, sinh or cosh, is computed using the Schur–Parlett algorithm described in Higham (2008) and Davies and Higham (2003).
- References
Davies, P I and Higham, N J, 2003, A Schur–Parlett algorithm for computing matrix functions, SIAM J. Matrix Anal. Appl. (25(2)), 464–485
Higham, N J, 2008, Functions of Matrices: Theory and Computation, SIAM, Philadelphia, PA, USA