pymatsolver.solvers.Base#

class pymatsolver.solvers.Base(A, is_symmetric=None, is_positive_definite=False, is_hermitian=None, check_accuracy=False, check_rtol=1e-06, check_atol=0, accuracy_tol=None, **kwargs)[source]#

Base class for all solvers used in the pymatsolver package.

Parameters:
A

Matrix to solve with.

is_symmetricbool, optional

Whether the matrix is symmetric. By default, it will perform some simple tests to check for symmetry, and default to False if those fail.

is_positive_definitebool, optional

Whether the matrix is positive definite.

is_hermitianbool, optional

Whether the matrix is hermitian. By default, it will perform some simple tests to check, and default to False if those fail.

check_accuracybool, optional

Whether to check the accuracy of the solution.

check_rtolfloat, optional

The relative tolerance to check against for accuracy.

check_atolfloat, optional

The absolute tolerance to check against for accuracy.

accuracy_tolfloat, optional

Relative accuracy tolerance. .. deprecated:: 0.3.0

accuracy_tol will be removed in pymatsolver 0.4.0. Use check_rtol and check_atol instead.

**kwargs

Extra keyword arguments. If there are any left here a warning will be raised.

Attributes:
A

The matrix to solve with.

T

The transposed solve operator

check_accuracy

Whether the check the accuracy after a solve.

check_atol

The absolute tolerance used to check the solve operation.

check_rtol

The relative tolerance used to check the solve operation.

dtype

The data type of the matrix.

is_hermitian

Whether the matrix is hermitian.

is_positive_definite

Whether the matrix is positive definite.

is_real

Whether the matrix is real.

is_symmetric

Whether the matrix is symmetric.

shape

The input matrix dimensions.

Methods

conj()

Return the complex conjugate version of this solver.

conjugate()

Return the complex conjugate version of this solver.

solve(rhs)

Solves the system of equations for the given right hand side.

transpose()

Return the transposed solve operator.

clean

get_attributes