C++ main module for mmsd Package
1.0
|
This class solve the equation f(x)=0. More...
#include <MATH_Equation.h>
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... | |
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_Function * | getFunction () const |
get the function More... | |
MATH_Function * | getFunction () |
get the function More... | |
virtual tBoolean | hasFunction () const |
return true if the optimized method has function More... | |
virtual tReal | solve ()=0 |
solve the equation More... | |
virtual tReal | solve (const tReal &x0)=0 |
solve the equation with initial point More... | |
virtual tBoolean | hasSucceeded () const |
return true if the method has succeeded More... | |
virtual tString | toString () const |
to string 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 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 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_Equation (void) | |
create a Equation object More... | |
virtual | ~MATH_Equation (void) |
destroy an Equation 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... | |
This class solve the equation f(x)=0.
|
protected |
create a Equation object
References mError, mInterval, mIterationsNumber, mMaxError, mMaxIterationsNumber, mX, and CORE_Object::setType().
|
protectedvirtual |
destroy an Equation Object.
|
virtual |
copy the parameters of the optimization method
Reimplemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
References getError(), getIterationsNumber(), getMaxError(), getMaxIterationsNumber(), getSolution(), mError, mIterationsNumber, mMaxError, mMaxIterationsNumber, mX, and null.
Referenced by MATH_ZeroEquation::copy(), MATH_NewtonEquation::copy(), and MATH_TranscendentEquation::copy().
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().
|
inherited |
return the class name of the object
References tString.
Referenced by CORE_Object::getIdentityString().
|
inline |
get the error estimated with the solution
References mError.
Referenced by copy(), and MATH_NewtonEquation::hasSucceeded().
|
inline |
get the function
Referenced by MATH_NewtonEquation::hasFunction(), and hasFunction().
|
inline |
get the function
|
inlineinherited |
return the identity string of the object of the form className_at_address
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().
get interval of searching
Referenced by MATH_NewtonEquation::solve().
|
inline |
get the iterations number to reach the solution
References mIterationsNumber.
Referenced by copy().
|
inline |
get the wished max error
References mMaxError.
Referenced by copy(), MATH_NewtonEquation::hasSucceeded(), and MATH_NewtonEquation::solve().
|
inline |
get the max iteration number
References mMaxIterationsNumber.
Referenced by copy(), and MATH_TranscendentEquation::solve().
|
inlinestaticinherited |
get output
|
inlineinherited |
return the identity string of the object
References CORE_Object::pointer2String().
|
inlineinherited |
get the shared pointer of this class into p
Referenced by CORE_Map< Key, Value >::getSharedPointer(), CORE_Array< tFlag >::getSharedPointer(), LAP_ConstVector< lapack_real >::getSharedPointer(), STAT_Combinatorial< T >::getSharedPointer(), LAP_Vector< lapack_int >::getSharedPointer(), CORE_Vector< T >::getSharedPointer(), CORE_Matrix< T >::getSharedPointer(), and CORE_Object::printObjectsInMemory().
|
inlineinherited |
get the shared pointer of this class into p
|
inline |
get the solution
References mX.
Referenced by copy(), MATH_ZeroEquation::solve(), and MATH_NewtonEquation::solve().
|
inlinestaticinherited |
get type name
References tString.
|
inlineinherited |
return true if the object has completely been loaded
Referenced by UI_Class::loadAssociation().
|
inlinevirtual |
return true if the optimized method has function
Reimplemented in MATH_NewtonEquation.
References getFunction(), and null.
Referenced by MATH_ZeroEquation::solve(), and MATH_TranscendentEquation::solve().
|
inlinevirtual |
return true if the method has succeeded
Reimplemented in MATH_NewtonEquation.
Referenced by MATH_NewtonEquation::hasSucceeded().
|
inlinestaticinherited |
return true if the machine is a 32 bits machine
References CORE_Object::is64Architecture().
|
staticinherited |
return true if the machine is a 64 bits machine
Referenced by CORE_Object::is32Architecture().
|
inlineinherited |
return true if the object is an instance of T
References null.
|
virtual |
how to load the object from a Meta Model class
Reimplemented from UI_Object.
Reimplemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
References UI_Class::loadField(), UI_Object::loadFromUIClass(), mError, mInterval, mIterationsNumber, mMaxError, mMaxIterationsNumber, and mX.
Referenced by MATH_ZeroEquation::loadFromUIClass(), MATH_NewtonEquation::loadFromUIClass(), and MATH_TranscendentEquation::loadFromUIClass().
|
staticinherited |
print on output
References null, and CORE_Object::print().
Referenced by CORE_Exception::CORE_Exception().
|
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().
|
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().
|
inlinevirtualinherited |
print the class
References CORE_Object::print(), and CORE_Object::toString().
|
virtualinherited |
print the class
Reimplemented in CORE_Out.
References null, and CORE_Object::print().
|
virtualinherited |
References null.
|
virtualinherited |
References null.
|
inlinestaticinherited |
print the class
|
staticinherited |
print object in memory
References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.
Referenced by main().
|
virtual |
how to save the object from a mate model class
Reimplemented from UI_Object.
Reimplemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
References mError, mInterval, mIterationsNumber, mMaxError, mMaxIterationsNumber, mX, UI_Class::saveField(), and UI_Object::saveToUIClass().
Referenced by MATH_ZeroEquation::saveToUIClass(), MATH_NewtonEquation::saveToUIClass(), and MATH_TranscendentEquation::saveToUIClass().
|
inlineprotected |
set the error estimated with the solution
Referenced by MATH_NewtonEquation::solve(), and MATH_TranscendentEquation::solve().
|
inline |
set function
|
inlineinherited |
set the if the object has completely been loaded
Referenced by UI_Class::loadAssociation().
set the interval of searching
Reimplemented in MATH_NewtonEquation.
Referenced by MATH_NewtonEquation::setInterval().
|
inlineprotected |
set the iterations number to reach the solution
Referenced by MATH_NewtonEquation::solve(), and MATH_TranscendentEquation::solve().
|
inline |
set the wished max error
|
inline |
set max iterations number
|
inlinestaticinherited |
set output
|
inlineprotected |
set the solution
Referenced by MATH_ZeroEquation::solve(), MATH_NewtonEquation::solve(), and MATH_TranscendentEquation::solve().
|
inlineprotectedinherited |
set this weak shared pointer called toDoAfterThis setting method
References CORE_Object::toDoAfterThisSetting().
|
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_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_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().
|
pure virtual |
solve the equation
Implemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
Referenced by MMSD_ConstraintGaussianCluster::updateFreedomDegrees(), and MMSD_GaussianCluster::updateFreedomDegrees().
solve the equation with initial point
Implemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
|
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().
|
virtual |
to string
Reimplemented from CORE_Object.
Reimplemented in MATH_TranscendentEquation, MATH_NewtonEquation, and MATH_ZeroEquation.
References mError, mIterationsNumber, mMaxIterationsNumber, mX, CORE_Real::toString(), CORE_Integer::toString(), and tString.
Referenced by MATH_ZeroEquation::toString(), MATH_NewtonEquation::toString(), and MATH_TranscendentEquation::toString().
|
static |
tReal MATH_Equation::mError |
Referenced by copy(), getError(), loadFromUIClass(), MATH_Equation(), saveToUIClass(), and toString().
WP::MATH_Function MATH_Equation::mFunction |
tReal MATH_Equation::mInterval[2] |
Referenced by loadFromUIClass(), MATH_Equation(), and saveToUIClass().
|
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 |
Referenced by copy(), getIterationsNumber(), loadFromUIClass(), MATH_Equation(), saveToUIClass(), and toString().
tReal MATH_Equation::mMaxError |
Referenced by copy(), getMaxError(), loadFromUIClass(), MATH_Equation(), and saveToUIClass().
int MATH_Equation::mMaxIterationsNumber |
Referenced by copy(), getMaxIterationsNumber(), loadFromUIClass(), MATH_Equation(), saveToUIClass(), and toString().
tReal MATH_Equation::mX |
Referenced by copy(), getSolution(), loadFromUIClass(), MATH_Equation(), saveToUIClass(), and toString().