# pymor.algorithms.sylvester¶

## Module Contents¶

### Functions¶

 solve_sylv_schur Solve Sylvester equation by Schur decomposition.
pymor.algorithms.sylvester.solve_sylv_schur(A, Ar, E=None, Er=None, B=None, Br=None, C=None, Cr=None)[source]

Solve Sylvester equation by Schur decomposition.

Solves Sylvester equation

$A V E_r^T + E V A_r^T + B B_r^T = 0$

or

$A^T W E_r + E^T W A_r + C^T C_r = 0$

or both using (generalized) Schur decomposition (Algorithms 3 and 4 in ), if the necessary parameters are given.

Parameters

A

Real Operator.

Ar

Real Operator. It is converted into a NumPy array using to_matrix.

E

Real Operator or None (then assumed to be the identity).

Er

Real Operator or None (then assumed to be the identity). It is converted into a NumPy array using to_matrix.

B

Real Operator or None.

Br

Real Operator or None. It is assumed that Br.range.from_numpy is implemented.

C

Real Operator or None.

Cr

Real Operator or None. It is assumed that Cr.source.from_numpy is implemented.

Returns

V

Returned if B and Br are given, VectorArray from A.source.

W

Returned if C and Cr are given, VectorArray from A.source.

Raises

ValueError

If V and W cannot be returned.