Open CASCADE Technology 7.8.0
Public Member Functions | Protected Member Functions
math_TrigonometricFunctionRoots Class Reference

This class implements the solutions of the equation a*Cos(x)*Cos(x) + 2*b*Cos(x)*Sin(x) + c*Cos(x) + d*Sin(x) + e The degree of this equation can be 4, 3 or 2. More...

#include <math_TrigonometricFunctionRoots.hxx>

Public Member Functions

 math_TrigonometricFunctionRoots (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E, const Standard_Real InfBound, const Standard_Real SupBound)
 Given coefficients a, b, c, d , e, this constructor performs the resolution of the equation above. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.
 
 math_TrigonometricFunctionRoots (const Standard_Real D, const Standard_Real E, const Standard_Real InfBound, const Standard_Real SupBound)
 Given the two coefficients d and e, it performs the resolution of d*sin(x) + e = 0. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.
 
 math_TrigonometricFunctionRoots (const Standard_Real C, const Standard_Real D, const Standard_Real E, const Standard_Real InfBound, const Standard_Real SupBound)
 Given the three coefficients c, d and e, it performs the resolution of c*Cos(x) + d*sin(x) + e = 0. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.
 
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_Real Value (const Standard_Integer Index) const
 Returns the solution of range Index. An exception is raised if NotDone. An exception is raised if Index>NbSolutions. An exception is raised if there is an infinity of solutions.
 
Standard_Integer NbSolutions () const
 Returns the number of solutions found. An exception is raised if NotDone. An exception is raised if there is an infinity of solutions.
 
void Dump (Standard_OStream &o) const
 Prints information on the current state of the object.
 

Protected Member Functions

void Perform (const Standard_Real A, const Standard_Real B, const Standard_Real C, const Standard_Real D, const Standard_Real E, const Standard_Real InfBound, const Standard_Real SupBound)
 is used by the constructors above.
 

Detailed Description

This class implements the solutions of the equation a*Cos(x)*Cos(x) + 2*b*Cos(x)*Sin(x) + c*Cos(x) + d*Sin(x) + e The degree of this equation can be 4, 3 or 2.

Constructor & Destructor Documentation

◆ math_TrigonometricFunctionRoots() [1/3]

math_TrigonometricFunctionRoots::math_TrigonometricFunctionRoots ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D,
const Standard_Real  E,
const Standard_Real  InfBound,
const Standard_Real  SupBound 
)

Given coefficients a, b, c, d , e, this constructor performs the resolution of the equation above. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.

◆ math_TrigonometricFunctionRoots() [2/3]

math_TrigonometricFunctionRoots::math_TrigonometricFunctionRoots ( const Standard_Real  D,
const Standard_Real  E,
const Standard_Real  InfBound,
const Standard_Real  SupBound 
)

Given the two coefficients d and e, it performs the resolution of d*sin(x) + e = 0. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.

◆ math_TrigonometricFunctionRoots() [3/3]

math_TrigonometricFunctionRoots::math_TrigonometricFunctionRoots ( const Standard_Real  C,
const Standard_Real  D,
const Standard_Real  E,
const Standard_Real  InfBound,
const Standard_Real  SupBound 
)

Given the three coefficients c, d and e, it performs the resolution of c*Cos(x) + d*sin(x) + e = 0. The solutions must be contained in [InfBound, SupBound]. InfBound and SupBound can be set by default to 0 and 2*PI.

Member Function Documentation

◆ Dump()

void math_TrigonometricFunctionRoots::Dump ( Standard_OStream o) const

Prints information on the current state of the object.

◆ InfiniteRoots()

Standard_Boolean math_TrigonometricFunctionRoots::InfiniteRoots ( ) const

Returns true if there is an infinity of roots, otherwise returns false.

◆ IsDone()

Standard_Boolean math_TrigonometricFunctionRoots::IsDone ( ) const

Returns true if the computations are successful, otherwise returns false.

◆ NbSolutions()

Standard_Integer math_TrigonometricFunctionRoots::NbSolutions ( ) const

Returns the number of solutions found. An exception is raised if NotDone. An exception is raised if there is an infinity of solutions.

◆ Perform()

void math_TrigonometricFunctionRoots::Perform ( const Standard_Real  A,
const Standard_Real  B,
const Standard_Real  C,
const Standard_Real  D,
const Standard_Real  E,
const Standard_Real  InfBound,
const Standard_Real  SupBound 
)
protected

is used by the constructors above.

◆ Value()

Standard_Real math_TrigonometricFunctionRoots::Value ( const Standard_Integer  Index) const

Returns the solution of range Index. An exception is raised if NotDone. An exception is raised if Index>NbSolutions. An exception is raised if there is an infinity of solutions.


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