pymor.bindings.slycot
¶
Module Contents¶
- pymor.bindings.slycot.lyap_dense_solver_options()[source]¶
Return available Lyapunov solvers with default options for the slycot backend.
Returns
A dict of available solvers with default solver options.
- pymor.bindings.slycot.lyap_lrcf_solver_options()[source]¶
Return available Lyapunov solvers with default options for the slycot backend.
Returns
A dict of available solvers with default solver options.
- pymor.bindings.slycot.pos_ricc_lrcf_solver_options()[source]¶
Return available positive Riccati solvers with default options for the slycot backend.
Returns
A dict of available solvers with default solver options.
- pymor.bindings.slycot.ricc_dense_solver_options()[source]¶
Return available Riccati solvers with default options for the slycot backend.
Returns
A dict of available solvers with default solver options.
- pymor.bindings.slycot.ricc_lrcf_solver_options()[source]¶
Return available Riccati solvers with default options for the slycot backend.
Returns
A dict of available solvers with default solver options.
- pymor.bindings.slycot.solve_lyap_dense(A, E, B, trans=False, cont_time=True, options=None)[source]¶
Compute the solution of a Lyapunov equation.
See
for a general description.
This function uses
slycot.sb03md
(ifE is None
) andslycot.sg03ad
(ifE is not None
), which are based on the Bartels-Stewart algorithm.Parameters
- A
The matrix A as a 2D
NumPy array
.- E
The matrix E as a 2D
NumPy array
orNone
.- B
The matrix B as a 2D
NumPy array
.- trans
Whether the first matrix in the Lyapunov equation is transposed.
- cont_time
Whether the continuous- or discrete-time Lyapunov equation is solved.
- options
The solver options to use (see
lyap_dense_solver_options
).
Returns
- X
Lyapunov equation solution as a
NumPy array
.
- pymor.bindings.slycot.solve_lyap_lrcf(A, E, B, trans=False, cont_time=True, options=None)[source]¶
Compute an approximate low-rank solution of a Lyapunov equation.
See
for a general description.
This function uses
slycot.sb03md
(ifE is None
) andslycot.sg03ad
(ifE is not None
), which are dense solvers based on the Bartels-Stewart algorithm. Therefore, we assume A and E can be converted toNumPy arrays
usingto_matrix
and thatB.to_numpy
is implemented.Parameters
- A
The non-parametric
Operator
A.- E
The non-parametric
Operator
E orNone
.- B
The operator B as a
VectorArray
fromA.source
.- trans
Whether the first
Operator
in the Lyapunov equation is transposed.- cont_time
Whether the continuous- or discrete-time Lyapunov equation is solved.
- options
The solver options to use (see
lyap_lrcf_solver_options
).
Returns
- Z
Low-rank Cholesky factor of the Lyapunov equation solution,
VectorArray
fromA.source
.
- pymor.bindings.slycot.solve_pos_ricc_lrcf(A, E, B, C, R=None, S=None, trans=False, options=None)[source]¶
Compute an approximate low-rank solution of a positive Riccati equation.
See
pymor.algorithms.riccati.solve_pos_ricc_lrcf
for a general description.This function uses
slycot.sb02md
(if E isNone
) orslycot.sg03ad
(if E is notNone
), which are dense solvers. Therefore, we assume allOperators
andVectorArrays
can be converted toNumPy arrays
usingto_matrix
andto_numpy
.Parameters
- A
The non-parametric
Operator
A.- E
The non-parametric
Operator
E orNone
.- B
The operator B as a
VectorArray
fromA.source
.- C
The operator C as a
VectorArray
fromA.source
.- R
The matrix R as a 2D
NumPy array
orNone
.- S
The operator S as a
VectorArray
fromA.source
orNone
.- trans
Whether the first
Operator
in the positive Riccati equation is transposed.- options
The solver options to use (see
pos_ricc_lrcf_solver_options
).
Returns
- Z
Low-rank Cholesky factor of the positive Riccati equation solution,
VectorArray
fromA.source
.
- pymor.bindings.slycot.solve_ricc_dense(A, E, B, C, R=None, S=None, trans=False, options=None)[source]¶
Compute the solution of a Riccati equation.
See
pymor.algorithms.riccati.solve_ricc_dense
for a general description.This function uses
slycot.sb02md
(ifE is None and S is None
) which is based on the Schur vector approach, andslycot.sb02od
(ifE is None and S is not None
) orslycot.sg02ad
(ifE is not None
) which are both based on the method of deflating subspaces.Parameters
- A
The matrix A as a 2D
NumPy array
.- E
The matrix E as a 2D
NumPy array
orNone
.- B
The matrix B as a 2D
NumPy array
.- C
The matrix C as a 2D
NumPy array
.- R
The matrix R as a 2D
NumPy array
orNone
.- S
The matrix S as a 2D
NumPy array
orNone
.- trans
Whether the first matrix in the Riccati equation is transposed.
- options
The solver options to use (see
ricc_dense_solver_options
).
Returns
- X
Riccati equation solution as a
NumPy array
.
- pymor.bindings.slycot.solve_ricc_lrcf(A, E, B, C, R=None, S=None, trans=False, options=None)[source]¶
Compute an approximate low-rank solution of a Riccati equation.
See
pymor.algorithms.riccati.solve_ricc_lrcf
for a general description.This function uses
slycot.sb02md
(if E isNone
) orslycot.sg03ad
(if E is notNone
), which are dense solvers. Therefore, we assume allOperators
andVectorArrays
can be converted toNumPy arrays
usingto_matrix
andto_numpy
.Parameters
- A
The non-parametric
Operator
A.- E
The non-parametric
Operator
E orNone
.- B
The operator B as a
VectorArray
fromA.source
.- C
The operator C as a
VectorArray
fromA.source
.- R
The matrix R as a 2D
NumPy array
orNone
.- S
The operator S as a
VectorArray
fromA.source
orNone
.- trans
Whether the first
Operator
in the Riccati equation is transposed.- options
The solver options to use (see
ricc_lrcf_solver_options
).
Returns
- Z
Low-rank Cholesky factor of the Riccati equation solution,
VectorArray
fromA.source
.