Class 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.
Implements
Inherited Members
Namespace: SpiceSharp.Algebra.Solve
Assembly: SpiceSharp.dll
Syntax
public class MarkowitzSingleton<T> : MarkowitzSearchStrategy<T>, ICloneable<MarkowitzSearchStrategy<T>>
Type Parameters
Name | Description |
---|---|
T | The base value type. |
Methods
Clone()
Clones the instance.
Declaration
public override MarkowitzSearchStrategy<T> Clone()
Returns
Type | Description |
---|---|
MarkowitzSearchStrategy<T> | The cloned instance. |
Overrides
FindPivot(Markowitz<T>, ISparseMatrix<T>, int, int)
Find a pivot in a matrix.
Declaration
public override Pivot<ISparseMatrixElement<T>> FindPivot(Markowitz<T> markowitz, ISparseMatrix<T> matrix, int eliminationStep, int max)
Parameters
Type | Name | Description |
---|---|---|
Markowitz<T> | markowitz | The Markowitz pivot strategy. |
ISparseMatrix<T> | matrix | The matrix. |
int | eliminationStep | The current elimination step. |
int | max | The maximum row/column index. |
Returns
Type | Description |
---|---|
Pivot<ISparseMatrixElement<T>> | The pivot element, or null if no pivot was found. |
Overrides
Exceptions
Type | Condition |
---|---|
ArgumentNullException | Thrown if |
ArgumentOutOfRangeException | Thrown if |