Click or drag to resize
DigitalRuneIterativeLinearSystemSolverF Class
An iterative method for solving a linear system of equations A * x = b (single-precision).
Inheritance Hierarchy

Namespace: DigitalRune.Mathematics.Algebra
Assembly: DigitalRune.Mathematics (in DigitalRune.Mathematics.dll) Version: 1.14.0.0 (1.14.0.14427)
Syntax
public abstract class IterativeLinearSystemSolverF

The IterativeLinearSystemSolverF type exposes the following members.

Constructors
  NameDescription
Protected methodIterativeLinearSystemSolverF
Initializes a new instance of the IterativeLinearSystemSolverF class
Top
Methods
  NameDescription
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodSolve(MatrixF, VectorF)
Solves the specified linear system of equations A * x = b.
Public methodSolve(MatrixF, VectorF, VectorF)
Solves the specified linear system of equations A * x = b using an initial guess.
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Properties
  NameDescription
Public propertyEpsilon
Gets or sets the tolerance value.
Public propertyMaxNumberOfIterations
Gets or sets the maximum number number of iterations.
Public propertyNumberOfIterations
Gets or sets the number of iterations of the last Solve(MatrixF, VectorF) method call.
Top
Remarks

Iterative methods search for a solution x of the linear system of equations A * x = b. A and b must be given. A is a matrix and b is a vector. Internally the method produces a solution in several iterations. The method stops when the maximum number of iterations is reached or when the new solutions is very similar to the solution of the last iteration (this case happens when the difference is less than a tolerance given by the user).

The result of an iterative method is only an approximation. The accuracy of the result depends on the number of iterations and the initial guess for x. Warm-starting can improve the result. This is done by providing a better initial guess for x: If several similar linear systems are solved, then the solution of one linear system is possible near the solution of the other linear systems. For many applications, like computer games, the same linear system of equations is computed each frame with only minor variations in A and b.

The advantage of an iterative solver is that is can provide an approximate solution very quickly. In tasks like animation, a quick estimate is often better than an exact solution which takes longer to compute.

See Also