Show / Hide Table of Contents

Interface IPivotingSolver<M, V, T>

An ISolver<T> that implements mechanisms for pivoting. This means that the solver may reorder the internal matrix and right hand side vector.

Inherited Members
ISolver<T>.Degeneracy
ISolver<T>.Size
ISolver<T>.IsFactored
ISolver<T>.this[int, int]
ISolver<T>.this[MatrixLocation]
ISolver<T>.this[int]
ISolver<T>.ForwardSubstitute(IVector<T>)
ISolver<T>.BackwardSubstitute(IVector<T>)
ISolver<T>.ComputeDegenerateContribution(int)
ISolver<T>.ForwardSubstituteTransposed(IVector<T>)
ISolver<T>.BackwardSubstituteTransposed(IVector<T>)
ISolver<T>.ComputeDegenerateContributionTransposed(int)
ISolver<T>.Factor()
ISolver<T>.Reset()
ISolver<T>.Clear()
IParameterSetCollection.GetParameterSet<P>()
IParameterSetCollection.TryGetParameterSet<P>(out P)
IParameterSetCollection.ParameterSets
IParameterSet.SetParameter<P>(string, P)
IParameterSet.TrySetParameter<P>(string, P)
IParameterSet.GetProperty<P>(string)
IParameterSet.TryGetProperty<P>(string, out P)
IParameterSet.CreateParameterSetter<P>(string)
IParameterSet.CreatePropertyGetter<P>(string)
Namespace: SpiceSharp.Algebra
Assembly: SpiceSharp.dll
Syntax
public interface IPivotingSolver<M, V, T> : ISolver<T>, IParameterSetCollection, IParameterSet where M : IMatrix<T> where V : IVector<T>
Type Parameters
Name Description
M

The matrix type.

V

The vector type.

T

The base value type.

Properties

NeedsReordering

Gets or sets a value indicating whether the solver needs to be reordered all the way from the start.

Declaration
bool NeedsReordering { get; set; }
Property Value
Type Description
bool

true if the solver needs reordering; otherwise, false.

Remarks

If this flag is false, the solver will still reorder when using OrderAndFactor(), but it will try to stay away from reordering as long as possible. This flag will force the solver to immediately start reordering.

PivotSearchReduction

Gets or sets the pivot search reduction. This makes sure that pivots cannot be chosen from the last N rows. The default, 0, lets the pivot strategy to choose from the whole matrix.

Declaration
int PivotSearchReduction { get; set; }
Property Value
Type Description
int

The pivot search reduction.

Exceptions
Type Condition
ArgumentOutOfRangeException

Thrown if the value is negative.

Methods

ExternalToInternal(MatrixLocation)

Maps an external matrix location to an internal one.

Declaration
MatrixLocation ExternalToInternal(MatrixLocation indices)
Parameters
Type Name Description
MatrixLocation indices

The external matrix location.

Returns
Type Description
MatrixLocation

The internal matrix location.

InternalToExternal(MatrixLocation)

Maps an internal matrix location to an external one.

Declaration
MatrixLocation InternalToExternal(MatrixLocation indices)
Parameters
Type Name Description
MatrixLocation indices

The internal matrix location.

Returns
Type Description
MatrixLocation

The external matrix location.

OrderAndFactor()

Order and factor the equation matrix and right hand side vector. This method will reorder the matrix as it sees fit.

Declaration
int OrderAndFactor()
Returns
Type Description
int

The number of rows that were successfully eliminated.

Precondition(PreconditioningMethod<M, V, T>)

Preconditions the solver matrix and right hand side vector.

Declaration
void Precondition(PreconditioningMethod<M, V, T> method)
Parameters
Type Name Description
PreconditioningMethod<M, V, T> method

The method.

Extension Methods

Utility.ThrowIfNull<T>(T, string)
Documentation.ParameterValues<T>(IParameterSet, bool)
Documentation.Parameters(IParameterSet)
Documentation.ParameterValues<T>(IParameterSetCollection, bool)
Documentation.Parameters(IParameterSetCollection)
In this article
Back to top Generated by DocFX