Modified Incomplete Cholesky Preconditioner<T> Class
Definition
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.9.0
public sealed class ModifiedIncompleteCholeskyPreconditioner<T> : Preconditioner<T>
- Inheritance
- Object → LinearOperator<T> → Preconditioner<T> → ModifiedIncompleteCholeskyPreconditioner<T>
Type Parameters
- T
- The real floating-point scalar type.
Remarks
Dropped real Schur off-diagonal entries are added to both incident diagonals. Without equilibration, the preconditioner and shifted input agree on the constant vector, up to rounding. With equilibration, this property holds in scaled coordinates. The logical nonzero lower pattern is retained; stored zeros are not reservations.
Successful factors define a positive definite preconditioner, which does not certify the input as positive definite. Modified IC can break down even for positive definite matrices. Shifts and ordering are explicit options.
The source is retained for Refresh() and never modified. Applications accept and return original-coordinate vectors. Distinct-destination applications may run concurrently; refresh requires exclusive access.
Constructors
| 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. |
Properties
| Column |
Gets the number of columns in the matrix.
(Inherited from LinearOperator<T>) |
| Column |
Gets or sets the index of labels for the columns of the matrix.
(Inherited from LinearOperator<T>) |
| Dropped | Gets the number of nonzero Schur off-diagonal candidates discarded in the last successful factorization. |
| Element |
Gets the element type of the matrix.
(Inherited from LinearOperator<T>) |
| Factorization | Gets the number of successful factorizations, including construction. |
| Factor | Gets the number of retained lower factor entries, including the diagonal. |
| Linear |
Gets the linear operator to which the Preconditioner<T> applies.
(Inherited from Preconditioner<T>) |
| Minimum | Gets the minimum pivot before taking its square root, relative to its shifted row maximum, or zero for an empty system. |
| Row |
Gets the number of rows in the matrix.
(Inherited from LinearOperator<T>) |
| Row |
Gets or sets the index of labels for the rows of the matrix.
(Inherited from LinearOperator<T>) |
Methods
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
| Estimate |
Calculates an estimate for the condition number of a matrix.
(Inherited from LinearOperator<T>) |
| Get |
Calculates the determinant of a matrix.
(Inherited from LinearOperator<T>) |
| Get | Serves as the default hash function. (Inherited from Object) |
| Get |
Calculates the inverse matrix..
(Inherited from LinearOperator<T>) |
| Get |
Calculates the inverse of the factorized
matrix.
(Inherited from LinearOperator<T>) |
| Get | Gets the Type of the current instance. (Inherited from Object) |
| IsSingular |
Gets whether the matrix
is singular.
(Inherited from LinearOperator<T>) |
| Least |
Solves the system of linear equations for the specified
right-hand side matrix in the least squares sense.
(Inherited from LinearOperator<T>) |
| Least |
Solves the system of linear equations for the specified
right-hand side vector.
(Inherited from LinearOperator<T>) |
| Least |
Solves the system of linear equations for the specified
right-hand side dense matrix in the least squares sense and optionally overwrites the
right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Least |
Solves the system of linear equations for the specified
right-hand side dense vector in the least squares sense and optionally
overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Least |
Solves a system of equations defined by the matrix and multiple right-hand sides in the least squares sense.
(Inherited from LinearOperator<T>) |
| Least |
Solves a system of equations defined by the matrix and the specified right-hand side in the least squares sense.
(Inherited from Preconditioner<T>) |
| Multiply( | Applies the linear operator to a matrix. (Inherited from LinearOperator<T>) |
| Multiply( | Applies the linear operator to a vector. (Inherited from LinearOperator<T>) |
| Multiply | Applies the transpose of the linear operator to a matrix. (Inherited from LinearOperator<T>) |
| Multiply | Applies the (conjugate) transpose of the linear operator to a vector. (Inherited from LinearOperator<T>) |
| Rank() |
Returns the numerical rank of a matrix.
(Inherited from LinearOperator<T>) |
| Rank( |
Returns the numerical rank of a matrix using the specified tolerance.
(Inherited from Preconditioner<T>) |
| Refresh | Rebuilds factors from the current logical matrix coefficients and original options. |
| Solve( |
Solves the system of linear equations for the specified
right-hand side matrix.
(Inherited from LinearOperator<T>) |
| Solve( |
Solves the system of linear equations for the specified
right-hand side vector.
(Inherited from LinearOperator<T>) |
| Solve( |
Solves the system of linear equations for the specified
right-hand side dense matrix and optionally overwrites the
right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Solve( |
Solves the system of linear equations for the specified
right-hand side dense vector and optionally
overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Solve |
Solves a system of equations defined by the matrix and multiple right-hand sides.
(Inherited from LinearOperator<T>) |
| Solve |
Solves a system of equations defined by the matrix and the specified right-hand side.
(Inherited from LinearOperator<T>) |
| Solve |
Solves a system of equations defined by the matrix and the specified right-hand side.
(Overrides Preconditioner<T>.SolveInto(TransposeOperation, Vector<T>, Vector<T>)) |
| Solve |
Solves a system of equations defined by the matrix and multiple right-hand sides.
(Inherited from LinearOperator<T>) |
| Solve |
Solves the transposed system of linear equations for the specified
right-hand side matrix.
(Inherited from LinearOperator<T>) |
| Solve |
Solves the system of linear equations for the specified
right-hand side vector.
(Inherited from LinearOperator<T>) |
| Solve |
Solves the transposed system of linear equations for the specified
right-hand side dense matrix and optionally overwrites the
right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Solve |
Solves the transposed system of linear equations for the specified
right-hand side dense vector and optionally
overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>) |
| Solve |
Solves a system of equations defined by the matrix and multiple right-hand sides.
(Inherited from LinearOperator<T>) |
| Solve |
Solves a system of equations defined by the matrix and the specified right-hand side.
(Inherited from LinearOperator<T>) |
| ToString | Returns a string that represents the current object. (Inherited from Object) |