Namespace SpiceSharp.Algebra.Solve
Classes
DenseLUSolver<T>
An base class for dense linear systems that can be solved using LU decomposition. Pivoting is controlled by the
DenseLUSolver<T>.ReorderedMatrix
A matrix that keeps everything synchronized for our solver.
DenseLUSolver<T>.ReorderedVector
A vector that keeps everything synchronized for our solver.
MarkowitzDiagonal<T>
Markowitz-count based strategy for finding a pivot. Searches the whole diagonal of the submatrix.
MarkowitzEntireMatrix<T>
Markowitz-count based strategy for finding a pivot. Search the complete submatrix.
MarkowitzQuickDiagonal<T>
Markowitz-based pivot search. Quickly search the diagonal for valid pivots.
MarkowitzSearchStrategy<T>
A template for a search strategy for finding pivots. It is used for implementing the strategy outlined by Markowitz.
MarkowitzSingleton<T>
Markowitz-count based strategy for finding a pivot. This strategy will search for singletons (rows or columns with only one element), these can be found rather cheaply.
Markowitz<T>
A search strategy based on methods outlined by Markowitz.
PivotingSolver<M, V, T>
A standard implementation for pivoting solvers.
SparseLUSolver<T>
A base class for sparse linear systems that can be solved using LU decomposition. Pivoting is controlled by the Parameters property. The implementation is optimized for sparse matrices through the ISparseMatrix<T> interface.
SparseLUSolver<T>.ReorderedMatrix
A sparse matrix that keeps both the matrix and right hand side vector synchronized for our solver.
SparseLUSolver<T>.ReorderedVector
A sparse vector that keeps both the matrix and right hand side vector synchronized for our solver.
Translation
This class can map external to internal indices and vice-versa.
Structs
Pivot<P>
Describes a pivot for reordering solvers.
Enums
PivotInfo
Kinds of pivots.