slepc-3.21.1 2024-04-26
Report Typos and Errors


Specifies the type of matrix equation to be solved.


#include "slepclme.h" 
PetscErrorCode LMESetProblemType(LME lme,LMEProblemType type)
Logically Collective

Input Parameters

lme  - the linear matrix equation solver context
type  - a known type of matrix equation

Options Database Keys

-lme_lyapunov  - continuous-time Lyapunov equation A*X+X*A'=-C
-lme_sylvester  - continuous-time Sylvester equation A*X+X*B=C
-lme_gen_lyapunov  - generalized Lyapunov equation A*X*D'+D*X*A'=-C
-lme_gen_sylvester  - generalized Sylvester equation A*X*E+D*X*B=C
-lme_dt_lyapunov  - discrete-time Lyapunov equation A*X*A'-X=-C
-lme_stein  - Stein equation A*X*E+X=C


The coefficient matrices A, B, D, E must be provided via LMESetCoefficients(), but some of them are optional depending on the matrix equation.

                            equation              A    B    D    E
                          -----------------      ---  ---  ---  ---
       LME_LYAPUNOV        A*X+X*A'=-C           yes (A-t)  -    -
       LME_SYLVESTER       A*X+X*B=C             yes  yes   -    -
       LME_GEN_LYAPUNOV    A*X*D'+D*X*A'=-C      yes (A-t) yes (D-t)
       LME_GEN_SYLVESTER   A*X*E+D*X*B=C         yes  yes  yes  yes
       LME_DT_LYAPUNOV     A*X*A'-X=-C           yes   -    -  (A-t)
       LME_STEIN           A*X*E+X=C             yes   -    -   yes

In the above table, the notation (A-t) means that this matrix need not be passed, but the user may choose to pass an explicit transpose of matrix A (for improved efficiency).

Also note that some of the equation types impose restrictions on the properties of the coefficient matrices and possibly on the right-hand side C.

See Also

LMESetCoefficients(), LMESetType(), LMEGetProblemType(), LMEProblemType







Index of all LME routines
Table of Contents for all manual pages
Index of all manual pages