![]() |
CLA3P v0.3.1
Compact Linear Algebra Parallel Portable Package
|
The indefinite Cholesky (LDL') linear solver for sparse matrices. More...

Public Member Functions | |
| PardisoLDLt () | |
| The default constructor. | |
| ~PardisoLDLt ()=default | |
| Destroys the solver. | |
| void | setScaling (bool flg) |
| Scaling vectors. | |
| void | setMatching (bool flg) |
| Improved accuracy using symmetric weighted matching. | |
| void | setPivoting (pardiso::pivot_t pivot) |
| Pivoting strategy. | |
| void | setPivotingPerturbation (int_t p) |
| Small/zero pivot handling. | |
| int_t | inertiaPositive () const |
| Inertia: number of positive eigenvalues. | |
| int_t | inertiaNegative () const |
| Inertia: number of negative eigenvalues. | |
| Public Member Functions inherited from cla3p::PardisoBase< T_Matrix > | |
| void | clear () |
| Clears the solver internal data. | |
| void | clearNumeric () |
| Clears the solver numeric factor data. | |
| void | analysis (const T_Matrix &mat) |
| Performs matrix analysis & symbolic decomposition. | |
| void | decompose (const T_Matrix &mat) |
| Performs matrix decomposition. | |
| void | solve (const dns::XxMatrix< T_Scalar > &rhs, dns::XxMatrix< T_Scalar > &sol) |
| Performs matrix solution. | |
| void | solve (const dns::XxVector< T_Scalar > &rhs, dns::XxVector< T_Scalar > &sol) |
| Performs vector solution. | |
| void | setVerbose (bool flg) |
| Message level information. | |
| const prm::PiMatrix & | fillReducingOrdering () const |
| Gets the calculated fill-reducing permutation matrix. | |
| int_t | iterativeRefinementSteps () const |
| Iterative refinement steps performed. | |
| int_t | perturbedPivots () const |
| Number of perturbed pivots. | |
| int_t | peakAnalysisMemory () const |
| Peak memory on symbolic factorization. | |
| int_t | permanentAnalysisMemory () const |
| Permanent memory on symbolic factorization. | |
| int_t | factorMemory () const |
| Size of factors/Peak memory on numerical factorization and solution. | |
| Public Member Functions inherited from cla3p::pardiso::GlobalParams | |
| void | setMatrixChecker (bool flg) |
| Forces Pardiso to check input matrix. | |
| Public Member Functions inherited from cla3p::pardiso::AnalysisParams | |
| void | setFillReducer (pardiso::reorder_t reorderMethod) |
| Sets the fill reducing ordering method. | |
| void | setFillReducer (const prm::PiMatrix &permMatrix) |
| Sets a custom fill-reducing permutation. | |
| Public Member Functions inherited from cla3p::pardiso::SolveParams | |
| void | setMaxIterativeRefinements (int_t numIters) |
| Sets maximum number of iterative refinement steps. | |
The indefinite Cholesky (LDL') linear solver for sparse matrices.
|
inline |
The default constructor.
Constructs an empty solver object.
|
default |
Destroys the solver.
Clears all internal data and destroys the solver.
|
inline |
Scaling vectors.
| [in] | flg | Enables/disables scaling. |
Pardiso uses a maximum weight matching algorithm to permute large elements on the diagonal and to scale so that the diagonal elements are equal to 1 and the absolute values of the off-diagonal entries are less than or equal to 1. The scaling can also be used for symmetric indefinite matrices when the symmetric weighted matchings are applied. Use scaling and matching for highly indefinite symmetric matrices, for example, from interior point optimizations or saddle point problems.
Set before analysis. Default value is false.
|
inline |
Improved accuracy using symmetric weighted matching.
| [in] | flg | Enables/disables matching. |
Pardiso can use a maximum weighted matching algorithm to permute large elements close the diagonal. This strategy adds an additional level of reliability to the factorization methods and complements the alternative of using more complete pivoting techniques during the numerical factorization. Use scaling and matching for highly indefinite symmetric matrices, for example, from interior point optimizations or saddle point problems.
Set before analysis. Default value is false.
|
inline |
Pivoting strategy.
| [in] | pivot | The pivoting strategy modifier. |
Selects pivoting strategy for symmetric indefinite matrices.
Set before decomposition.
|
inline |
Small/zero pivot handling.
| [in] | p | Negative power in the perturbation calculation formula. |
This parameter instructs Pardiso how to handle small pivots or zero pivots. Small pivots are perturbed with eps = 10-p. For more details, refer to the Pardiso manual (iparm[9]).
Set before decomposition. Default value is 8.
|
inline |
Inertia: number of positive eigenvalues.
Pardiso reports the number of positive eigenvalues for symmetric indefinite matrices.
Available after decomposition.
|
inline |
Inertia: number of negative eigenvalues.
Pardiso reports the number of negative eigenvalues for symmetric indefinite matrices.
Available after decomposition.