Class BasisIncompleteOrdered
An orthonormal basis built by Gram-Schmidt from vectors added in order, each kept where it is independent of those before it.
[WorkingType]
public sealed class BasisIncompleteOrdered
- Inheritance
-
BasisIncompleteOrdered
- Inherited Members
Remarks
A working type: each added vector changes it, and it isn't thread-safe.
Constructors
BasisIncompleteOrdered(int)
Initializes a new instance of the BasisIncompleteOrdered class.
public BasisIncompleteOrdered(int euclideanDimension)
Parameters
euclideanDimensionintThe space's dimension.
Exceptions
- ArgumentOutOfRangeException
euclideanDimensionis negative.
Properties
BasisSize
Gets the number of vectors in the basis.
public int BasisSize { get; }
Property Value
EuclideanDimension
Gets the space's dimension.
public int EuclideanDimension { get; }
Property Value
Methods
AddVector(ReadOnlySpan<double>)
Adds a vector: its part orthogonal to the basis, normalized, where its norm is at least 1e-12.
public bool AddVector(ReadOnlySpan<double> newVector1)
Parameters
newVector1ReadOnlySpan<double>The vector, of the space's dimension.
Returns
- bool
Whether the vector was linearly independent of the basis, and added.
Exceptions
- ArgumentException
The vector isn't of the space's dimension.
GetBasisAsRowsInMatrix()
The basis, a vector a row.
public Matrix GetBasisAsRowsInMatrix()
Returns
- Matrix
A new matrix of the basis size by the space's dimension.