Open CASCADE Technology 6.6.0
Public Member Functions | Protected Member Functions
math_DirectPolynomialRoots Class Reference

This class implements the calculation of all the real roots of a real
polynomial of degree <= 4 using a direct method. Once found,
the roots are polished using the Newton method.

#include <math_DirectPolynomialRoots.hxx>

Public Member Functions

 math_DirectPolynomialRoots (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E)
 computes all the real roots of the polynomial
Ax4 + Bx3 + Cx2 + Dx + E using a direct method.

 math_DirectPolynomialRoots (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D)
 computes all the real roots of the polynomial
Ax3 + Bx2 + Cx + D using a direct method.

 math_DirectPolynomialRoots (const Standard_Real A, const Standard_Real B, const Standard_Real C)
 computes all the real roots of the polynomial
Ax2 + Bx + C using a direct method.

 math_DirectPolynomialRoots (const Standard_Real A, const Standard_Real B)
 computes the real root of the polynomial Ax + B.

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

Standard_Boolean InfiniteRoots () const
 Returns true if there is an infinity of roots, otherwise returns false.

Standard_Integer NbSolutions () const
 returns the number of solutions.
An exception is raised if there are an infinity of roots.

Standard_Real Value (const Standard_Integer Nieme) const
 returns the value of the Nieme root.
An exception is raised if there are an infinity of roots.
Exception RangeError is raised if Nieme is < 1
or Nieme > NbSolutions.

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 Member Functions

void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E)
void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D)
void Solve (const Standard_Real A, const Standard_Real B, const Standard_Real C)
void Solve (const Standard_Real A, const Standard_Real B)

Constructor & Destructor Documentation

math_DirectPolynomialRoots::math_DirectPolynomialRoots ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D,
const Standard_Real  E 
)
math_DirectPolynomialRoots::math_DirectPolynomialRoots ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D 
)
math_DirectPolynomialRoots::math_DirectPolynomialRoots ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C 
)
math_DirectPolynomialRoots::math_DirectPolynomialRoots ( const Standard_Real  A,
const Standard_Real  B 
)

Member Function Documentation

void math_DirectPolynomialRoots::Dump ( Standard_OStream o) const
Standard_Boolean math_DirectPolynomialRoots::InfiniteRoots ( ) const
Standard_Boolean math_DirectPolynomialRoots::IsDone ( ) const
Standard_Integer math_DirectPolynomialRoots::NbSolutions ( ) const
void math_DirectPolynomialRoots::Solve ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D,
const Standard_Real  E 
) [protected]
void math_DirectPolynomialRoots::Solve ( const Standard_Real  A,
const Standard_Real  B 
) [protected]
void math_DirectPolynomialRoots::Solve ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C 
) [protected]
void math_DirectPolynomialRoots::Solve ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D 
) [protected]
Standard_Real math_DirectPolynomialRoots::Value ( const Standard_Integer  Nieme) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines