C++ main module for mmsd Package  1.0
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | List of all members
MATH_TranscendentEquation Class Reference

This class solve a transcendent equation f(x)=x. More...

#include <MATH_TranscendentEquation.h>

Inheritance diagram for MATH_TranscendentEquation:
Inheritance graph
[legend]
Collaboration diagram for MATH_TranscendentEquation:
Collaboration graph
[legend]

Public Member Functions

virtual void copy (const MATH_Equation *m)
 copy the parameters of the optimization method More...
 
virtual void loadFromUIClass (const UI_Class &mclass)
 how to load the object from a Meta Model class More...
 
virtual void saveToUIClass (UI_Class &mclass) const
 how to save the object from a mate model class More...
 
void setMode (const tFlag &v)
 set mode More...
 
void setInitValue (const tReal &v)
 set init value More...
 
void setIout (const int &i)
 set output print More...
 
tReal getInitValue () const
 get the solution More...
 
tFlag getMode () const
 get mode More...
 
virtual tReal solve ()
 solve More...
 
virtual tReal solve (const tReal &x0)
 solve the equation with initial point More...
 
virtual tString toString () const
 to string More...
 
virtual void setInterval (const tReal &a, const tReal &b)
 set the interval of searching More...
 
void getInterval (tReal &a, tReal &b) const
 get interval of searching More...
 
void setMaxIterationsNumber (const int &v)
 set max iterations number More...
 
int getMaxIterationsNumber () const
 get the max iteration number More...
 
tReal getSolution () const
 get the solution More...
 
int getIterationsNumber () const
 get the iterations number to reach the solution More...
 
tReal getError () const
 get the error estimated with the solution More...
 
void setMaxError (const tReal &err)
 set the wished max error More...
 
tReal getMaxError () const
 get the wished max error More...
 
void setFunction (SP::MATH_Function f)
 set function More...
 
const MATH_FunctiongetFunction () const
 get the function More...
 
MATH_FunctiongetFunction ()
 get the function More...
 
virtual tBoolean hasFunction () const
 return true if the optimized method has function More...
 
virtual tBoolean hasSucceeded () const
 return true if the method has succeeded More...
 
void setHasBeenLoaded (const tBoolean &v)
 set the if the object has completely been loaded More...
 
tBoolean hasBeenLoaded () const
 return true if the object has completely been loaded More...
 
void getSharedPointer (SP::CORE_Object &p)
 get the shared pointer of this class into p More...
 
void getSharedPointer (SPC::CORE_Object &p) const
 get the shared pointer of this class into p More...
 
tString getClassName () const
 return the class name of the object More...
 
tString getIdentityString () const
 return the identity string of the object of the form className_at_address More...
 
tString getPointerAddress () const
 return the identity string of the object More...
 
template<class T >
tBoolean isInstanceOf () const
 return true if the object is an instance of T More...
 
virtual void print ()
 print the class More...
 
virtual ostream & print (ostream &out) const
 print the class More...
 
virtual void print (const tString &message)
 print the class More...
 
virtual void print (const tInteger &str)
 print More...
 
virtual void print (const tRelativeInteger &str)
 print More...
 
virtual void print (const tReal &str)
 print More...
 
virtual void print (const int &str)
 print More...
 

Static Public Member Functions

static
SP::MATH_TranscendentEquation 
New ()
 create a copy of MATH_TranscendentEquation More...
 
static tString getClassName (const tString &identityString)
 return the class name of the object using only the identity string More...
 
template<class T >
static tString getTypeName ()
 get type name More...
 
static tBoolean is64Architecture ()
 return true if the machine is a 64 bits machine More...
 
static tBoolean is32Architecture ()
 return true if the machine is a 32 bits machine More...
 
static tString pointer2String (const void *obj)
 return the string represantation of a pointer More...
 
static void setOutput (ostream &out)
 set output More...
 
static ostream & getOutput ()
 get output More...
 
static void printObjectsInMemory ()
 print object in memory More...
 
static ostream & print (ostream &out, const tString &message)
 print the class More...
 
static void outputPrint (const tString &message)
 

Public Attributes

tReal mMaxError
 
int mMaxIterationsNumber
 
int mIterationsNumber
 
tReal mX
 
tReal mError
 
tReal mInterval [2]
 
WP::MATH_Function mFunction
 

Static Public Attributes

static const tFlag DEFAULT =0
 method flag for solving F(U_n)=U_n+1 More...
 
static const tFlag DELTA2 =1
 method flag for solving F(U_n)=U_n+1 More...
 
static const tFlag DELTA2_2 =2
 method flag for solving F(U_n)=U_n+1 More...
 
static const tFlag DELTA2_3 =3
 method flag for solving F(U_n)=U_n+1 More...
 
static const tFlag STEFFENSEN =4
 method flag for solving F(U_n)=U_n+1 More...
 
static const tReal EPSILON =1.e-12
 
static tBoolean mIsMemoryTesting =false
 indicator to store all classes created and deleted only for debuging version More...
 

Protected Member Functions

 MATH_TranscendentEquation (void)
 create a TranscendentEquation object More...
 
virtual ~MATH_TranscendentEquation (void)
 destroy an TranscendentEquation Object. More...
 
void setSolution (const tReal &x)
 set the solution More...
 
void setIterationsNumber (const int &n)
 set the iterations number to reach the solution More...
 
void setError (const tReal &err)
 set the error estimated with the solution More...
 
void setThis (SP::CORE_Object p)
 set this weak shared pointer called toDoAfterThis setting method More...
 
virtual void setType (tString type)
 set the type of the object More...
 
virtual void toDoAfterThisSetting ()
 method called after setThis() method this method can oly be called once. More...
 

Detailed Description

This class solve a transcendent equation f(x)=x.

It contains :

Attributes:

Associations:

Author
Stéphane Despréaux
Version
1.0

Constructor & Destructor Documentation

MATH_TranscendentEquation::MATH_TranscendentEquation ( void  )
protected

create a TranscendentEquation object

References DEFAULT, and CORE_Object::setType().

Referenced by New().

Here is the call graph for this function:

Here is the caller graph for this function:

MATH_TranscendentEquation::~MATH_TranscendentEquation ( void  )
protectedvirtual

destroy an TranscendentEquation Object.

Member Function Documentation

void MATH_TranscendentEquation::copy ( const MATH_Equation m)
virtual

copy the parameters of the optimization method

Reimplemented from MATH_Equation.

References MATH_Equation::copy(), getInitValue(), getMode(), and null.

Here is the call graph for this function:

static tString CORE_Object::getClassName ( const tString identityString)
inlinestaticinherited

return the class name of the object using only the identity string

Referenced by UI_Class::createVector2D(), LAP_DoublePackedUpperMatrix::matrixProduct(), LAP_DoubleBandedUpperMatrix::matrixProduct(), LAP_DoubleFullUpperMatrix::matrixProduct(), and CORE_Object::printObjectsInMemory().

Here is the caller graph for this function:

tString CORE_Object::getClassName ( ) const
inherited

return the class name of the object

Returns
the class name of the object

References tString.

Referenced by CORE_Object::getIdentityString().

Here is the caller graph for this function:

tReal MATH_Equation::getError ( ) const
inlineinherited

get the error estimated with the solution

References MATH_Equation::mError.

Referenced by MATH_Equation::copy(), and MATH_NewtonEquation::hasSucceeded().

Here is the caller graph for this function:

const MATH_Function* MATH_Equation::getFunction ( ) const
inlineinherited

get the function

Referenced by MATH_NewtonEquation::hasFunction(), and MATH_Equation::hasFunction().

Here is the caller graph for this function:

MATH_Function* MATH_Equation::getFunction ( )
inlineinherited

get the function

tString CORE_Object::getIdentityString ( ) const
inlineinherited

return the identity string of the object of the form className_at_address

Returns
the identity string of the object

References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.

Referenced by UI_Class::createPrimitiveMap(), UI_Class::saveAssociation(), UI_Class::saveClass(), UI_ClassFactory::saveIntoClass(), MATH_StiefelFunction::toString(), LAP_2DView::toString(), CORE_Object::toString(), MATH_StiefelOptimizer::toString(), and MM_Class::toString().

Here is the call graph for this function:

Here is the caller graph for this function:

tReal MATH_TranscendentEquation::getInitValue ( ) const
inline

get the solution

Referenced by copy().

Here is the caller graph for this function:

void MATH_Equation::getInterval ( tReal a,
tReal b 
) const
inlineinherited

get interval of searching

Referenced by MATH_NewtonEquation::solve().

Here is the caller graph for this function:

int MATH_Equation::getIterationsNumber ( ) const
inlineinherited

get the iterations number to reach the solution

References MATH_Equation::mIterationsNumber.

Referenced by MATH_Equation::copy().

Here is the caller graph for this function:

tReal MATH_Equation::getMaxError ( ) const
inlineinherited

get the wished max error

References MATH_Equation::mMaxError.

Referenced by MATH_Equation::copy(), MATH_NewtonEquation::hasSucceeded(), and MATH_NewtonEquation::solve().

Here is the caller graph for this function:

int MATH_Equation::getMaxIterationsNumber ( ) const
inlineinherited

get the max iteration number

References MATH_Equation::mMaxIterationsNumber.

Referenced by MATH_Equation::copy(), and solve().

Here is the caller graph for this function:

tFlag MATH_TranscendentEquation::getMode ( ) const
inline

get mode

Referenced by copy().

Here is the caller graph for this function:

static ostream& CORE_Object::getOutput ( )
inlinestaticinherited

get output

tString CORE_Object::getPointerAddress ( ) const
inlineinherited

return the identity string of the object

Returns
the identity string of the object

References CORE_Object::pointer2String().

Here is the call graph for this function:

void CORE_Object::getSharedPointer ( SP::CORE_Object &  p)
inlineinherited
void CORE_Object::getSharedPointer ( SPC::CORE_Object &  p) const
inlineinherited

get the shared pointer of this class into p

tReal MATH_Equation::getSolution ( ) const
inlineinherited

get the solution

References MATH_Equation::mX.

Referenced by MATH_Equation::copy(), MATH_ZeroEquation::solve(), and MATH_NewtonEquation::solve().

Here is the caller graph for this function:

template<class T >
static tString CORE_Object::getTypeName ( )
inlinestaticinherited

get type name

References tString.

tBoolean UI_Object::hasBeenLoaded ( ) const
inlineinherited

return true if the object has completely been loaded

Referenced by UI_Class::loadAssociation().

Here is the caller graph for this function:

virtual tBoolean MATH_Equation::hasFunction ( ) const
inlinevirtualinherited

return true if the optimized method has function

Reimplemented in MATH_NewtonEquation.

References MATH_Equation::getFunction(), and null.

Referenced by MATH_ZeroEquation::solve(), and solve().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual tBoolean MATH_Equation::hasSucceeded ( ) const
inlinevirtualinherited

return true if the method has succeeded

Reimplemented in MATH_NewtonEquation.

Referenced by MATH_NewtonEquation::hasSucceeded().

Here is the caller graph for this function:

static tBoolean CORE_Object::is32Architecture ( )
inlinestaticinherited

return true if the machine is a 32 bits machine

References CORE_Object::is64Architecture().

Here is the call graph for this function:

tBoolean CORE_Object::is64Architecture ( )
staticinherited

return true if the machine is a 64 bits machine

Referenced by CORE_Object::is32Architecture().

Here is the caller graph for this function:

template<class T >
tBoolean CORE_Object::isInstanceOf ( ) const
inlineinherited

return true if the object is an instance of T

References null.

void MATH_TranscendentEquation::loadFromUIClass ( const UI_Class mclass)
virtual

how to load the object from a Meta Model class

Reimplemented from MATH_Equation.

References UI_Class::loadField(), and MATH_Equation::loadFromUIClass().

Here is the call graph for this function:

static SP::MATH_TranscendentEquation MATH_TranscendentEquation::New ( )
inlinestatic

create a copy of MATH_TranscendentEquation

References MATH_TranscendentEquation().

Referenced by testKeplerFunction().

Here is the call graph for this function:

Here is the caller graph for this function:

void CORE_Object::outputPrint ( const tString message)
staticinherited

print on output

References null, and CORE_Object::print().

Referenced by CORE_Exception::CORE_Exception().

Here is the call graph for this function:

Here is the caller graph for this function:

tString CORE_Object::pointer2String ( const void *  obj)
staticinherited

return the string represantation of a pointer

References tString.

Referenced by CORE_Object::CORE_Object(), CORE_Object::getIdentityString(), CORE_Object::getPointerAddress(), and CORE_Object::~CORE_Object().

Here is the caller graph for this function:

virtual void CORE_Object::print ( )
inlinevirtualinherited

print the class

References CORE_Object::toString().

Referenced by CORE_Object::outputPrint(), CORE_Out::print(), CORE_Object::print(), CORE_Out::printInt(), CORE_Out::println(), CORE_Out::printReal(), CORE_Out::printString(), and CORE_Out::setAction().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual ostream& CORE_Object::print ( ostream &  out) const
inlinevirtualinherited

print the class

References CORE_Object::print(), and CORE_Object::toString().

Here is the call graph for this function:

void CORE_Object::print ( const tString message)
virtualinherited

print the class

Reimplemented in CORE_Out.

References null, and CORE_Object::print().

Here is the call graph for this function:

void CORE_Object::print ( const tInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tRelativeInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tReal str)
virtualinherited

print

References null.

void CORE_Object::print ( const int &  str)
virtualinherited

print

References null.

static ostream& CORE_Object::print ( ostream &  out,
const tString message 
)
inlinestaticinherited

print the class

void CORE_Object::printObjectsInMemory ( )
staticinherited

print object in memory

References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void MATH_TranscendentEquation::saveToUIClass ( UI_Class mclass) const
virtual

how to save the object from a mate model class

Reimplemented from MATH_Equation.

References UI_Class::saveField(), and MATH_Equation::saveToUIClass().

Here is the call graph for this function:

void MATH_Equation::setError ( const tReal err)
inlineprotectedinherited

set the error estimated with the solution

Referenced by MATH_NewtonEquation::solve(), and solve().

Here is the caller graph for this function:

void MATH_Equation::setFunction ( SP::MATH_Function  f)
inlineinherited

set function

void UI_Object::setHasBeenLoaded ( const tBoolean v)
inlineinherited

set the if the object has completely been loaded

Referenced by UI_Class::loadAssociation().

Here is the caller graph for this function:

void MATH_TranscendentEquation::setInitValue ( const tReal v)
inline

set init value

virtual void MATH_Equation::setInterval ( const tReal a,
const tReal b 
)
inlinevirtualinherited

set the interval of searching

Reimplemented in MATH_NewtonEquation.

Referenced by MATH_NewtonEquation::setInterval().

Here is the caller graph for this function:

void MATH_TranscendentEquation::setIout ( const int &  i)
inline

set output print

void MATH_Equation::setIterationsNumber ( const int &  n)
inlineprotectedinherited

set the iterations number to reach the solution

Referenced by MATH_NewtonEquation::solve(), and solve().

Here is the caller graph for this function:

void MATH_Equation::setMaxError ( const tReal err)
inlineinherited

set the wished max error

void MATH_Equation::setMaxIterationsNumber ( const int &  v)
inlineinherited

set max iterations number

void MATH_TranscendentEquation::setMode ( const tFlag v)
inline

set mode

static void CORE_Object::setOutput ( ostream &  out)
inlinestaticinherited

set output

void MATH_Equation::setSolution ( const tReal x)
inlineprotectedinherited

set the solution

Referenced by MATH_ZeroEquation::solve(), MATH_NewtonEquation::solve(), and solve().

Here is the caller graph for this function:

void CORE_Object::setThis ( SP::CORE_Object  p)
inlineprotectedinherited

set this weak shared pointer called toDoAfterThis setting method

References CORE_Object::toDoAfterThisSetting().

Here is the call graph for this function:

virtual void CORE_Object::setType ( tString  type)
inlineprotectedvirtualinherited

set the type of the object

Referenced by LAP_IntegerVector::LAP_IntegerVector(), MATH_BetaFunction::MATH_BetaFunction(), MATH_C1Function::MATH_C1Function(), MATH_DigammaFunction::MATH_DigammaFunction(), MATH_EigenFunction::MATH_EigenFunction(), MATH_Equation::MATH_Equation(), MATH_Function::MATH_Function(), MATH_GammaFunction::MATH_GammaFunction(), MATH_KeplerFunction::MATH_KeplerFunction(), MATH_LogGammaFunction::MATH_LogGammaFunction(), MATH_NewtonEquation::MATH_NewtonEquation(), MATH_StiefelFunction::MATH_StiefelFunction(), MATH_StiefelOptimizer::MATH_StiefelOptimizer(), MATH_TranscendentEquation(), MATH_TrigammaFunction::MATH_TrigammaFunction(), MATH_ZeroEquation::MATH_ZeroEquation(), MATH_ZKeplerFunction::MATH_ZKeplerFunction(), MM_Attribute::MM_Attribute(), MM_Class::MM_Class(), MM_ClassFactory::MM_ClassFactory(), MM_Data::MM_Data(), MM_Structure::MM_Structure(), MMSD_ClassFactory::MMSD_ClassFactory(), MMSD_Cluster::MMSD_Cluster(), MMSD_ConstDoubleVector::MMSD_ConstDoubleVector(), MMSD_ConstraintGaussianCluster::MMSD_ConstraintGaussianCluster(), MMSD_ConstraintGaussianModel::MMSD_ConstraintGaussianModel(), MMSD_DataSet::MMSD_DataSet(), MMSD_DataSetClassFactory::MMSD_DataSetClassFactory(), MMSD_DoubleFullMatrix::MMSD_DoubleFullMatrix(), MMSD_DoubleSymmetricMatrix::MMSD_DoubleSymmetricMatrix(), MMSD_DoubleVector::MMSD_DoubleVector(), MMSD_FluryGautschiGaussianLaw::MMSD_FluryGautschiGaussianLaw(), MMSD_GaussianCluster::MMSD_GaussianCluster(), MMSD_GaussianFDFunction::MMSD_GaussianFDFunction(), MMSD_GaussianLaw::MMSD_GaussianLaw(), MMSD_GaussianModel::MMSD_GaussianModel(), MMSD_Law::MMSD_Law(), MMSD_Model::MMSD_Model(), MMSD_ModelClassFactory::MMSD_ModelClassFactory(), MMSD_Object::MMSD_Object(), MMSD_StiefelFunction::MMSD_StiefelFunction(), MMSD_StiefelGaussianLaw::MMSD_StiefelGaussianLaw(), STAT_BernoulliDistribution::STAT_BernoulliDistribution(), STAT_BinomialDistribution::STAT_BinomialDistribution(), STAT_Combinatorial< T >::STAT_Combinatorial(), STAT_DiracDistribution::STAT_DiracDistribution(), STAT_Distribution::STAT_Distribution(), STAT_ExponentialDistribution::STAT_ExponentialDistribution(), STAT_GammaDistribution::STAT_GammaDistribution(), STAT_GeometricDistribution::STAT_GeometricDistribution(), STAT_InverseNormalDistribution::STAT_InverseNormalDistribution(), STAT_NormalDistribution::STAT_NormalDistribution(), STAT_Object::STAT_Object(), STAT_PoissonDistribution::STAT_PoissonDistribution(), STAT_UniformDistribution::STAT_UniformDistribution(), and STAT_UniformLaplaceTransform::STAT_UniformLaplaceTransform().

Here is the caller graph for this function:

tReal MATH_TranscendentEquation::solve ( )
virtual

solve

Implements MATH_Equation.

References DEFAULT, DELTA2, DELTA2_2, DELTA2_3, MATH_Equation::getMaxIterationsNumber(), MATH_Equation::hasFunction(), MATH_Equation::setError(), MATH_Equation::setIterationsNumber(), MATH_Equation::setSolution(), STEFFENSEN, and tReal.

Referenced by solve().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual tReal MATH_TranscendentEquation::solve ( const tReal x0)
inlinevirtual

solve the equation with initial point

Implements MATH_Equation.

References solve().

Here is the call graph for this function:

virtual void CORE_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited

method called after setThis() method this method can oly be called once.

Reimplemented in STAT_UniformLaplaceTransform.

Referenced by CORE_Object::setThis(), and STAT_UniformLaplaceTransform::toDoAfterThisSetting().

Here is the caller graph for this function:

tString MATH_TranscendentEquation::toString ( ) const
virtual

to string

Reimplemented from MATH_Equation.

References MATH_Equation::toString().

Here is the call graph for this function:

Member Data Documentation

const tFlag MATH_TranscendentEquation::DEFAULT =0
static

method flag for solving F(U_n)=U_n+1

Referenced by MATH_TranscendentEquation(), solve(), and testKeplerFunction().

const tFlag MATH_TranscendentEquation::DELTA2 =1
static

method flag for solving F(U_n)=U_n+1

Referenced by solve(), and testKeplerFunction().

const tFlag MATH_TranscendentEquation::DELTA2_2 =2
static

method flag for solving F(U_n)=U_n+1

Referenced by solve(), and testKeplerFunction().

const tFlag MATH_TranscendentEquation::DELTA2_3 =3
static

method flag for solving F(U_n)=U_n+1

Referenced by solve(), and testKeplerFunction().

const tReal MATH_Equation::EPSILON =1.e-12
staticinherited
tReal MATH_Equation::mError
inherited
WP::MATH_Function MATH_Equation::mFunction
inherited
tReal MATH_Equation::mInterval[2]
inherited
tBoolean CORE_Object::mIsMemoryTesting =false
staticinherited

indicator to store all classes created and deleted only for debuging version

Referenced by CORE_Object::CORE_Object(), main(), CORE_Object::printObjectsInMemory(), and CORE_Object::~CORE_Object().

int MATH_Equation::mIterationsNumber
inherited
tReal MATH_Equation::mMaxError
inherited
int MATH_Equation::mMaxIterationsNumber
inherited
tReal MATH_Equation::mX
inherited
const tFlag MATH_TranscendentEquation::STEFFENSEN =4
static

method flag for solving F(U_n)=U_n+1

Referenced by solve(), and testKeplerFunction().


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