# FoundationClasses
TKMath
math

# 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

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT | 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 .
Standard_EXPORT 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. .
Standard_EXPORT 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

## Private Attributes

Standard_Boolean | Done

## Constructor & Destructor Documentation

Standard_EXPORT math_GaussLeastSquare::math_GaussLeastSquare | ( | const math_Matrix & | A,
|  | const Standard_Real | MinPivot = `1.0e-20`
| ) |

## Member Function Documentation

Standard_EXPORT void math_GaussLeastSquare::Dump | ( | Standard_OStream & | o | ) | const

Standard_Boolean math_GaussLeastSquare::IsDone | ( |  | ) | const`[inline]`

void math_GaussLeastSquare::operator delete | ( | void * | anAddress | ) | `[inline]`

void* math_GaussLeastSquare::operator new | ( | size_t | size | ) | `[inline]`

void* math_GaussLeastSquare::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

Standard_EXPORT void math_GaussLeastSquare::Solve | ( | const math_Vector & | B,
|  | math_Vector & | X
| ) | const

## Field Documentation

math_Matrix math_GaussLeastSquare::A2 `[protected]`

Standard_Real math_GaussLeastSquare::D `[protected]`

Standard_Boolean math_GaussLeastSquare::Done `[private]`

math_IntegerVector math_GaussLeastSquare::Index `[protected]`

math_Matrix math_GaussLeastSquare::LU `[protected]`

Standard_Boolean math_GaussLeastSquare::Singular `[protected]`

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

- math_GaussLeastSquare.hxx
- math_GaussLeastSquare.lxx