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

This class implements the least square solution of a set of
linear equations of m unknowns (n >= m) using the Householder
method. It solves A.X = B.
This algorithm has more numerical stability than
GaussLeastSquare but is longer.
It must be used if the matrix is singular or nearly singular.
It is about 16% longer than GaussLeastSquare if there is only
one member B to solve.
It is about 30% longer if there are twenty B members to solve.

#include <math_Householder.hxx>

Public Member Functions

DEFINE_STANDARD_ALLOC math_Householder (const math_Matrix &A, const math_Matrix &B, const Standard_Real EPS=1.0e-20)
 Given an input matrix A with n>= m, given an input matrix B
this constructor performs the least square resolution of
the set of linear equations A.X = B for each column of B.
If a column norm is less than EPS, the resolution can't
be done.
Exception DimensionError is raised if the row number of B
is different from the A row number.

 math_Householder (const math_Matrix &A, const math_Matrix &B, const Standard_Integer lowerArow, const Standard_Integer upperArow, const Standard_Integer lowerAcol, const Standard_Integer upperAcol, const Standard_Real EPS=1.0e-20)
 Given an input matrix A with n>= m, given an input matrix B
this constructor performs the least square resolution of
the set of linear equations A.X = B for each column of B.
If a column norm is less than EPS, the resolution can't
be done.
Exception DimensionError is raised if the row number of B
is different from the A row number.

 math_Householder (const math_Matrix &A, const math_Vector &B, const Standard_Real EPS=1.0e-20)
 Given an input matrix A with n>= m, given an input vector B
this constructor performs the least square resolution of
the set of linear equations A.X = B.
If a column norm is less than EPS, the resolution can't
be done.
Exception DimensionError is raised if the length of B
is different from the A row number.

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

void Value (math_Vector &sol, const Standard_Integer Index=1) const
 Given the integer Index, this routine returns the
corresponding least square solution sol.
Exception NotDone is raised if the resolution has not be
done.
Exception OutOfRange is raised if Index <=0 or
Index is more than the number of columns of B.

const math_MatrixAllValues () const
 Returns the matrix sol of all the solutions of the system
A.X = B.
Exception NotDone is raised is the resolution has not be
done.

void Dump (Standard_OStream &o) const
 Prints informations on the current state of the object.

Protected Member Functions

void Perform (const math_Matrix &A, const math_Matrix &B, const Standard_Real EPS)
 This method is used internally for each constructor
above and can't be used directly.


Constructor & Destructor Documentation


Member Function Documentation


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