slepc-3.12.0 2019-09-30
Report Typos and Errors

LMESetProblemType

Specifies the type of matrix equation to be solved.

Synopsis

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

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

Notes

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.