ModifiedIncompleteCholeskyPreconditioner<T> Constructor

Definition

Namespace: Numerics.NET.LinearAlgebra.IterativeSolvers.Preconditioners
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.9.0

Overload List

ModifiedIncompleteCholeskyPreconditioner<T>(SparseMatrix<T>)Constructs MIC(0) with explicit relative pivot protection, shift, scaling and ordering.
ModifiedIncompleteCholeskyPreconditioner<T>(SparseMatrix<T>, T, T, Boolean, Permutation)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.
C#
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

ArgumentNullExceptionmatrix is null.
DimensionMismatchExceptionThe matrix is not square or the ordering has the wrong length.
ArgumentOutOfRangeExceptionA tuning value is outside its valid range.
ArgumentExceptionThe matrix is unsupported or nonsymmetric, the ordering is invalid, or a coefficient or factor is unrepresentable.
NotSupportedExceptionT is not a real scalar type.
MatrixNotPositiveDefiniteExceptionA 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.
C#
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

ArgumentNullExceptionmatrix is null.
DimensionMismatchExceptionThe matrix is not square or the ordering has the wrong length.
ArgumentOutOfRangeExceptionA tuning value is outside its valid range.
ArgumentExceptionThe matrix is unsupported or nonsymmetric, the ordering is invalid, or a coefficient or factor is unrepresentable.
NotSupportedExceptionT is not a real scalar type.
MatrixNotPositiveDefiniteExceptionA pivot is missing, nonpositive or below the relative pivot tolerance.

See Also