pymor.bindings.scipy

Module Contents

class pymor.bindings.scipy.ScipyBicgStabSolver(check_finite=None, tol=1e-15, maxiter=None)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

class pymor.bindings.scipy.ScipyBicgStabSpILUSolver(check_finite=None, tol=1e-15, maxiter=None, spilu_drop_tol=0.0001, spilu_fill_factor=10, spilu_drop_rule=None, spilu_permc_spec='COLAMD')[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

class pymor.bindings.scipy.ScipyLGMRESSolver(check_finite=None, tol=1e-05, maxiter=1000, inner_m=39, outer_k=3)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

class pymor.bindings.scipy.ScipyLSMRSolver(check_finite=None, damp=0.0, atol=1e-06, btol=1e-06, conlim=100000000.0, maxiter=None, show=False)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

least_squares = True[source]
class pymor.bindings.scipy.ScipyLSQRSolver(check_finite=None, damp=0.0, atol=1e-06, btol=1e-06, conlim=100000000.0, iter_lim=None, show=False)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

least_squares = True[source]
class pymor.bindings.scipy.ScipyLSTSQSolver(check_finite=True)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

least_squares = True[source]
class pymor.bindings.scipy.ScipyLUSolveSolver(check_finite=None, check_cond=True)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

class pymor.bindings.scipy.ScipyLinearSolver(check_finite=True)[source]

Bases: pymor.solvers.interface.Solver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

class pymor.bindings.scipy.ScipyLyapunovSolver[source]

Bases: pymor.solvers.matrix_equations.interface.LyapunovSolver

Compute the solution of a LyapunovEquation.

This function uses scipy.linalg.solve_continuous_lyapunov or scipy.linalg.solve_discrete_lyapunov, which are dense solvers for Lyapunov equations with E=I.

This solver has no tunable parameters.

Note

If E is not None, the problem will be reduced to a standard algebraic Lyapunov equation by inverting E.

class pymor.bindings.scipy.ScipyLyapunovSolverLRCF[source]

Bases: pymor.solvers.matrix_equations.interface.LyapunovSolverLRCF

Compute a low-rank Cholesky factor of the solution of a LyapunovEquation using SciPy.

Computes the dense solution \(X\) with ScipyLyapunovSolver and factorizes it. The factorization assumes \(X \succcurlyeq 0\), i.e. that the system is asymptotically stable.

This solver has no tunable parameters.

class pymor.bindings.scipy.ScipyPositiveRiccatiSolver[source]

Bases: pymor.solvers.matrix_equations.interface.PositiveRiccatiSolver

Compute the dense solution of a PositiveRiccatiEquation using SciPy.

The positive Riccati equation differs from the RiccatiEquation only in the sign of the quadratic term, so it is solved by ScipyRiccatiSolver with \(R\) negated.

This solver has no tunable parameters.

class pymor.bindings.scipy.ScipyPositiveRiccatiSolverLRCF[source]

Bases: pymor.solvers.matrix_equations.interface.PositiveRiccatiSolverLRCF

Compute a LR Choleksy factor of the solution of a PositiveRiccatiEquation using SciPy.

Computes the dense solution \(X\) with ScipyPositiveRiccatiSolver and factorizes it.

This solver has no tunable parameters.

class pymor.bindings.scipy.ScipyQRLSTSQSolver(check_finite=True)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

least_squares = True[source]
class pymor.bindings.scipy.ScipyRiccatiSolver[source]

Bases: pymor.solvers.matrix_equations.interface.RiccatiSolver

Compute the dense solution of a RiccatiEquation using SciPy.

Uses scipy.linalg.solve_continuous_are, which is a dense solver.

This solver has no tunable parameters.

class pymor.bindings.scipy.ScipyRiccatiSolverLRCF[source]

Bases: pymor.solvers.matrix_equations.interface.RiccatiSolverLRCF

Compute a low-rank Cholesky factor of the solution of a RiccatiEquation using SciPy.

Computes the dense solution \(X\) with ScipyRiccatiSolver and factorizes it.

This solver has no tunable parameters.

class pymor.bindings.scipy.ScipySpSolveSolver(check_finite=None, permc_spec='COLAMD', keep_factorization=True, use_umfpack=True)[source]

Bases: ScipyLinearSolver

Equation solver.

Solves operator equations of the form

\[A(U; \mu) = V\]

The operator \(A\) can be linear or non-linear. When \(A\) is linear, a solver can also be used to solve the adjoint equation

\[A^H(V; \mu) = U\]

for \(U\).

When least_squares is True, the equations are solved in a least-squares sense:

\[\operatorname{argmin}_{U} \|A(U; \mu) - V\|^2 \quad\text{or}\quad \operatorname{argmin}_{V} \|A^H(V; \mu) - U\|^2\]

Solvers will typically only work for certain classes of Operators. In most cases, solvers are invoked by the apply_inverse and apply_inverse_adjoint methods of Operators. If an Operator has no associated solver, DefaultSolver is used.

pymor.bindings.scipy.matrix_astype_nocopy(matrix, dtype)[source]
pymor.bindings.scipy.svd_lapack_driver(driver='gesvd_unless_win_mkl')[source]
pymor.bindings.scipy.SCIPY_1_14_OR_NEWER[source]
pymor.bindings.scipy.sparray[source]