Modified Incomplete Cholesky Preconditioner<T> Constructor
Definition
Namespace: Numerics.NET.LinearAlgebra.IterativeSolvers.Preconditioners
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.9.0
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.9.0
Overload List
| Modified | Constructs MIC(0) with explicit relative pivot protection, shift, scaling and ordering. |
| Modified | Constructs MIC(0) with explicit relative pivot protection, shift, scaling and ordering. |
ModifiedIncompleteCholeskyPreconditioner<T>(SparseMatrix<T>)
Constructs MIC(0) with explicit relative pivot protection, shift, scaling and ordering.
public ModifiedIncompleteCholeskyPreconditioner(
SparseMatrix<T> matrix
)Parameters
- matrix SparseMatrix<T>
- A square sparse matrix with finite real symmetric logical coefficients. General, symmetric, Hermitian and diagonal structures are supported.
Remarks
Uses natural ordering, no shift or equilibration, and a pivot tolerance of 100 times machine epsilon.
Exceptions
| Argument | matrix is null. |
| Dimension | The matrix is not square or the ordering has the wrong length. |
| Argument | A tuning value is outside its valid range. |
| Argument | The matrix is unsupported or nonsymmetric, the ordering is invalid, or a coefficient or factor is unrepresentable. |
| Not | T is not a real scalar type. |
| Matrix | A pivot is missing, nonpositive or below the relative pivot tolerance. |
ModifiedIncompleteCholeskyPreconditioner<T>(SparseMatrix<T>, T, T, Boolean, Permutation)
Constructs MIC(0) with explicit relative pivot protection, shift, scaling and ordering.
public ModifiedIncompleteCholeskyPreconditioner(
SparseMatrix<T> matrix,
T relativePivotTolerance,
T relativeDiagonalShift,
bool equilibrate = false,
Permutation? ordering = null
)Parameters
- matrix SparseMatrix<T>
- A square sparse matrix with finite real symmetric logical coefficients. General, symmetric, Hermitian and diagonal structures are supported.
- relativePivotTolerance T
- A finite real value in [0,1). Each pivot before taking its square root, divided by its original shifted row maximum magnitude, must exceed this value.
- relativeDiagonalShift T
- A finite nonnegative real value. Adds this value times the original row maximum magnitude to that diagonal, using unit scale for an empty row. Only the preconditioner target is shifted.
- equilibrate Boolean (Optional)
- Whether to divide each coefficient by the square roots of its shifted row and column maxima. Applications undo this symmetric scaling on both sides. Constant-vector preservation applies in scaled coordinates.
- ordering Permutation (Optional)
- An optional copied permutation mapping factor coordinates to original coordinates. Null uses natural ordering.
Exceptions
| Argument | matrix is null. |
| Dimension | The matrix is not square or the ordering has the wrong length. |
| Argument | A tuning value is outside its valid range. |
| Argument | The matrix is unsupported or nonsymmetric, the ordering is invalid, or a coefficient or factor is unrepresentable. |
| Not | T is not a real scalar type. |
| Matrix | A pivot is missing, nonpositive or below the relative pivot tolerance. |