Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Attributes
math_GaussLeastSquare Class Reference

This class implements the least square solution of a set of
n linear equations of m unknowns (n >= m) using the gauss LU
decomposition algorithm.
This algorithm is more likely subject to numerical instability
than math_SVD.

#include <math_GaussLeastSquare.hxx>

Public Member Functions

DEFINE_STANDARD_ALLOC math_GaussLeastSquare (const math_Matrix &A, const Standard_Real MinPivot=1.0e-20)
 Given an input n X m matrix A with n >= m this constructor
performs the LU decomposition with partial pivoting
(interchange of rows) of the matrix AA = A.Transposed() * A;
This LU decomposition is stored internally and may be used
to do subsequent calculation.
If the largest pivot found is less than MinPivot the matrix
is considered as singular.

Standard_Boolean IsDone () const
 Returns true if the computations are successful, otherwise returns false.e

void Solve (const math_Vector &B, math_Vector &X) const
 Given the input Vector this routine solves the set
of linear equations A . X = B.
Exception NotDone is raised if the decomposition of A was
not done successfully.
Exception DimensionError is raised if the range of B Inv is
not equal to the rowrange of A.
Exception DimensionError is raised if the range of X Inv is
not equal to the colrange of A.

void Dump (Standard_OStream &o) const
 Prints on the stream o information on the current state
of the object.
Is used to redefine the operator <<.

Protected Attributes

Standard_Boolean Singular
math_Matrix LU
math_Matrix A2
math_IntegerVector Index
Standard_Real D

Constructor & Destructor Documentation


Member Function Documentation


Field Documentation


The documentation for this class was generated from the following file: