pymatsolver.Pardiso#

class pymatsolver.Pardiso(A, n_threads=None, 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]#

The Pardiso direct solver.

This solver uses the pydiso Intel MKL wrapper to factorize a sparse matrix, and use that factorization for solving.

Parameters:
Ascipy.sparse.spmatrix

Matrix to solve with.

n_threadsint, optional

Number of threads to use for the Pardiso routine in Intel’s MKL.

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.

n_threads

Number of threads to use for the Pardiso solver routine.

shape

The input matrix dimensions.

Methods

conj()

Return the complex conjugate version of this solver.

conjugate()

Return the complex conjugate version of this solver.

factor([A])

(Re)factor the A matrix.

solve(rhs)

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

transpose()

Return the transposed solve operator.

clean

get_attributes