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

This class compute the new time step by optimizing a function EMM_LandauLisfchitzSystem::computePredictiveEnergyAtTime() within the optimizeTimeFunction() method as the quasi newton optimization. More...

#include <EMM_QuasiNewtonIterativeTimeStep.h>

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

Public Member Functions

void setMinTimeStep (const tReal &dt)
 set the min time step of iterative time step computing More...
 
void setInitialTimeType (const tFlag &t)
 set the initial time type More...
 
void setInitialTimeType (const tString &t)
 set the initial time type More...
 
void resetInitialTimeStepToOptimalOne (const tBoolean &isReset)
 set if the initial time step is set to optimal time step More...
 
void setIntegrationOrder (const tFlag &order)
 set the order of evaluation the time function More...
 
void setMaximumEvaluationsNumber (const tUInteger &n)
 set the max evalution of Energy for finding the best dt for which the variation of energy is <0 More...
 
void setZoomOutFactor (const tReal &z)
 set the zoom out factor >1 More...
 
void setZoomInFactor (const tReal &z)
 set the zoom in factor <1 More...
 
void setMaxTimeStepGap (const tReal &dt)
 set the max gap betewen 2 time step More...
 
void setTimeStepBound (const tReal &dt)
 set the max time step More...
 
const tRealgetMinTimeStep () const
 get the min time step of iterative time step computing More...
 
const tFlaggetInitialTimeType () const
 get the initial type type More...
 
const tUIntegergetMaximumEvaluationsNumber () const
 get the max evalution of Energy for finding the best dt for which the variation of energy is <0 More...
 
const tRealgetZoomOutFactor () const
 set the zoom out factor >1 More...
 
const tRealgetZoomInFactor () const
 set the zoom in factor <1 More...
 
const tFlaggetIntegrationOrder () const
 get integration order More...
 
const tRealgetMaximumTimeStepGap () const
 get the maximum time step gap More...
 
const tRealgetTimeStepBound () const
 get the max time step More...
 
tReal computeInitialTimeStep ()
 compute initial time steps More...
 
virtual tBoolean computeNewTimeStep (tReal &dt, tUInteger &nEvaluations)
 compute the new time step More...
 
tReal computeTimeFunction (const tReal &t)
 compute the time function at t More...
 
const tRealcomputeTimeFunction () const
 compute the time function at 0 More...
 
tReal computeTimeFunctionDerivative (const tReal &t, tReal &dF_dt)
 compute the time function at t and its first derivative More...
 
const tRealcomputeTimeFunctionDerivative (tReal &dF_dt_0) const
 compute the time function at 0 and its first derivative at time =0 More...
 
virtual tString toString () const
 turn the regular time into a string More...
 
tBoolean setSystem (SP::EMM_LandauLifschitzSystem system)
 set the reverse system relation More...
 
void resetSystem ()
 reset the reverse system relation More...
 
void setCharacteristicTime (const tReal &t)
 set the characteristic time the real time will be t. mTc in seconds More...
 
void setTargetTime (const tReal &t)
 set the end time with respect of the characteristic time real time = t * getCharacteristicTime() More...
 
void setDt (const tReal &dt)
 set the time step More...
 
void setDtFactor (const tReal &f)
 set the dt factor More...
 
void setTimeStepsNumber (const tUInteger &n)
 set the time steps number More...
 
const tRealgetDtFactor () const
 get the dt factor More...
 
const tRealgetTargetTime () const
 get the end time More...
 
const tRealgetCharacteristicTime () const
 get the characteristic time More...
 
const tUIntegergetTimeStepsNumber () const
 get the time steps number More...
 
const tRealgetDt () const
 get the time step More...
 
tRealgetDt ()
 get the time step 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
 test if the clas T is an instance of this class More...
 
tBoolean isInstanceOf (const tString &name) const
 test if the object is an instance of className More...
 

Static Public Member Functions

static SP::EMM_QuasiNewtonIterativeTimeStep New ()
 build a shared pointer associated to the class More...
 
static void setIsMemoryChecked (const tBoolean &v)
 set if the memory checking is used More...
 
static void setOut (SP::CORE_Out out)
 set the output stream More...
 
static void resetOut ()
 reset the output stream More...
 
static void setThread (SP::CORE_Thread thread)
 set the thread More...
 
static void resetThread ()
 reset the output stream More...
 
static CORE_Outout ()
 get the output More...
 
static SP::CORE_Out getOut ()
 get the output More...
 
static CORE_ThreadgetThread ()
 get the profilier More...
 
static const tBooleanisMemoryChecked ()
 get if the memory checking is used More...
 
static tString getClassName (const tString &identityString)
 return the class name of the object 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 representation of a pointer More...
 
static void printObjectsInMemory (ostream &f)
 print object in memory More...
 
static void printObjectsInMemory ()
 print object in memory in the standart output More...
 
static tChar getMaxChar ()
 get the max value for tChar type More...
 
static tChar getMinChar ()
 get the min value for tChar type More...
 
static tUChar getMaxUChar ()
 get the max value for tUChar type More...
 
static tUChar getMinUChar ()
 get the min value for tUChar type More...
 
static tSInt getMaxSInt ()
 get the max value for tSInt type More...
 
static tSInt getMinSInt ()
 get the min value for tSInt type More...
 
static tUSInt getMaxUSInt ()
 get the max value for tUSInt type More...
 
static tUSInt getMinUSInt ()
 get the min value for tUSInt type More...
 
static tInt getMaxInt ()
 get the max value for tInt type More...
 
static tInt getMinInt ()
 get the min value for tInt type More...
 
static tUInt getMaxUInt ()
 get the max value for tUInt type More...
 
static tUInt getMinUInt ()
 get the min value for tUInt type More...
 
static tLInt getMaxLInt ()
 get the max value for tLInt type More...
 
static tLInt getMinLInt ()
 get the min value for tLInt type More...
 
static tULInt getMaxULInt ()
 get the max value for tULInt type More...
 
static tULInt getMinULInt ()
 get the min value for tULInt type More...
 
static tLLInt getMaxLLInt ()
 get the max value for tULInt type More...
 
static tLLInt getMinLLInt ()
 get the min value for tLLInt type More...
 
static tULLInt getMaxULLInt ()
 get the max value for tULLInt type More...
 
static tULLInt getMinULLInt ()
 get the min value for tULLInt type More...
 
static tFloat getMaxFloat ()
 get the max value for tFloat type More...
 
static tFloat getMinFloat ()
 get the min value for tFloat type More...
 
template<class T >
static T getEpsilon ()
 get the epsilon value for T type More...
 
template<class T >
static T getInfinity ()
 get the infinity for T type More...
 
static tFloat getFloatEpsilon ()
 get the epsilon value for tFloat type More...
 
static tFloat getFloatInfinity ()
 get the infinity value for tFloat type More...
 
static tDouble getMaxDouble ()
 get the max value for tDouble type More...
 
static tDouble getMinDouble ()
 get the min value for tDouble type More...
 
static tDouble getDoubleInfinity ()
 get the infinity value for tFloat type More...
 
static tDouble getDoubleEpsilon ()
 get the epsilon value for tDouble type More...
 
static tLDouble getMinLDouble ()
 get the min value for tLDouble type More...
 
static tLDouble getMaxLDouble ()
 get the max value for tLDouble type More...
 
static tLDouble getLDoubleEpsilon ()
 get the epsilon value for tLDouble type More...
 
static tDouble getLDoubleInfinity ()
 get the infinity value for tDouble type More...
 
static tIndex getMaxIndex ()
 get the max value for the array/vector indexing type More...
 
static tIndex getMinIndex ()
 get the min value for the array/vector indexing type More...
 
static tUIndex getMaxUIndex ()
 get the max value for difference the array/vector indexing type More...
 
static tUIndex getMinUIndex ()
 get the min value for difference the array/vector indexing type More...
 
static tFlag getMaxFlag ()
 get the max value for the tFlag type More...
 
static tFlag getMinFlag ()
 get the min value for the tFlag type More...
 
static tUInteger getMaxUInteger ()
 get the max value for the unsigned integer type More...
 
static tUInteger getMinUInteger ()
 get the min value for the unsigned integer type More...
 
static tInteger getMaxInteger ()
 get the max value for the integer type More...
 
static tInteger getMinInteger ()
 get the min value for the integer type More...
 
static tReal getMaxReal ()
 get the max value for the real type More...
 
static tReal getMinReal ()
 get the min value for the real type More...
 
static tReal getRealEpsilon ()
 get the eps which is the difference between 1 and the least value greater than 1 that is representable. More...
 
static tReal getRealInfinity ()
 get the infinity value More...
 
template<class T >
static T computeEpsilon ()
 compute epsilon More...
 

Static Public Attributes

static const tFlag INITIAL_TIME_AS_REGULAR =0
 
static const tFlag INITIAL_TIME_AS_OPTIMAL_AFFINE_H =1
 
static const tFlag INITIAL_TIME_AS_MAX_LINEAR_CONSTANT_H =2
 
static const tReal Mu0 =4*M_PI*1e-07
 
static const tReal Gamma =-1.7e11
 
static const tDimension X =0
 
static const tDimension Y =1
 
static const tDimension Z =2
 
static const tReal NULL_VALUE [] ={0,0,0}
 

Protected Member Functions

 EMM_QuasiNewtonIterativeTimeStep (void)
 create More...
 
virtual ~EMM_QuasiNewtonIterativeTimeStep (void)
 destroy More...
 
virtual tBoolean optimizeTimeFunction (tReal &dt, const tReal &dt_bound, tUInteger &evaluationsNumber)
 optimize the time step function More...
 
void computeOptimalTimeSteps (tReal &dt_c, tReal &dt_l)
 compute optimal time steps More...
 
virtual tBoolean isSystemCompatible (SPC::EMM_LandauLifschitzSystem system) const
 return true if the system is compatible More...
 
SPC::EMM_LandauLifschitzSystem getSystem () const
 get system for reading More...
 
SP::EMM_LandauLifschitzSystem getSystem ()
 get system for writing More...
 
virtual void toDoAfterThisSetting ()
 method called after the setting of the shared pointer this method can only be called once. More...
 
void setThis (SP::CORE_Object p)
 set this weak shared pointer called toDoAfterThis setting method More...
 

Private Member Functions

 SP_OBJECT (EMM_QuasiNewtonIterativeTimeStep)
 

Detailed Description

This class compute the new time step by optimizing a function EMM_LandauLisfchitzSystem::computePredictiveEnergyAtTime() within the optimizeTimeFunction() method as the quasi newton optimization.

Author
Stephane Despreaux
Version
1.0

Constructor & Destructor Documentation

◆ EMM_QuasiNewtonIterativeTimeStep()

EMM_QuasiNewtonIterativeTimeStep::EMM_QuasiNewtonIterativeTimeStep ( void  )
inlineprotected

create

Referenced by New().

Here is the caller graph for this function:

◆ ~EMM_QuasiNewtonIterativeTimeStep()

virtual EMM_QuasiNewtonIterativeTimeStep::~EMM_QuasiNewtonIterativeTimeStep ( void  )
inlineprotectedvirtual

destroy

Member Function Documentation

◆ computeEpsilon()

template<class T >
static T CORE_Object::computeEpsilon ( )
inlinestaticinherited

compute epsilon

Returns
the epsilon value eps=10^{-p/3} where p is defined by getEpsilon()=10^{-p}

◆ computeInitialTimeStep()

tReal EMM_IterativeTimeStep::computeInitialTimeStep ( )
inherited

compute initial time steps

Returns
the max optial time steps considering H linera or constant

References EMM_IterativeTimeStep::computeOptimalTimeSteps(), EMM_Stepper::getDt(), EMM_IterativeTimeStep::INITIAL_TIME_AS_MAX_LINEAR_CONSTANT_H, EMM_IterativeTimeStep::INITIAL_TIME_AS_REGULAR, EMM_IterativeTimeStep::mInitialTimeType, and tReal.

Referenced by EMM_IterativeTimeStep::computeNewTimeStep(), and EMM_IterativeTimeStep::getTimeStepBound().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeNewTimeStep()

tBoolean EMM_IterativeTimeStep::computeNewTimeStep ( tReal dt,
tUInteger nEvaluations 
)
virtualinherited

compute the new time step

Parameters
dtthe new time step
nEvaluationsthe number of evaluation of M to compute the new dt
Returns
true if the dt computation succeeded

do

  • gets the energy E0
  • set the magnetization field M at dt see EMM_LandauLifschitzSystem::computeFieldsAtNextStep()
  • compute the energy E(M) : see EMM_LandauLifstchitstSystem::computeEnergy()
  • if (dE<0)
    • get the max absolute variation of energy by increasing dt
    • get the max absolute variation of energy by decreasing dt return the max absolute variation of energy in the both cases
  • if (dE>=0) get the first decreasing dt such that the variation of energy is <0

Reimplemented from EMM_RegularTimeStep.

Reimplemented in EMM_OptimalIterativeTimeStep, and EMM_SecondOrderIterativeTimeStep.

References EMM_IterativeTimeStep::computeInitialTimeStep(), EMM_IterativeTimeStep::mIsInitialTimeStepReset, EMM_IterativeTimeStep::mMaxEvaluationsNumber, EMM_IterativeTimeStep::mMaxTimeStepGap, EMM_IterativeTimeStep::mTimeStepBound, EMM_IterativeTimeStep::optimizeTimeFunction(), tBoolean, and tReal.

Referenced by EMM_IterativeTimeStep::getTimeStepBound().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeOptimalTimeSteps()

void EMM_IterativeTimeStep::computeOptimalTimeSteps ( tReal dt_c,
tReal dt_l 
)
protectedinherited

compute optimal time steps

Parameters
[out]dt_coptimal time step when H is constant
[out]dt_loptimal time step when H is linear & self-adjointness

Referenced by EMM_IterativeTimeStep::computeInitialTimeStep(), EMM_OptimalIterativeTimeStep::computeNewTimeStep(), and EMM_IterativeTimeStep::getTimeStepBound().

Here is the caller graph for this function:

◆ computeTimeFunction() [1/2]

tReal EMM_IterativeTimeStep::computeTimeFunction ( const tReal t)
inherited

compute the time function at t

Parameters
ttime to compute the function to optimize

Referenced by BrentFunction::operator()().

Here is the caller graph for this function:

◆ computeTimeFunction() [2/2]

const tReal & EMM_IterativeTimeStep::computeTimeFunction ( ) const
inherited

◆ computeTimeFunctionDerivative() [1/2]

tReal EMM_IterativeTimeStep::computeTimeFunctionDerivative ( const tReal t,
tReal dF_dt 
)
inherited

compute the time function at t and its first derivative

Parameters
ttime to compute the function to optimize
dF_dt: the derivative of the time function

Referenced by EMM_IterativeTimeStep::getTimeStepBound(), optimizeTimeFunction(), and EMM_PolynomialInterpolationTimeStep::optimizeTimeFunction().

Here is the caller graph for this function:

◆ computeTimeFunctionDerivative() [2/2]

const tReal & EMM_IterativeTimeStep::computeTimeFunctionDerivative ( tReal dF_dt_0) const
inherited

compute the time function at 0 and its first derivative at time =0

Parameters
dF_dt_0: the derivative of the time function

References EMM_Stepper::getSystem().

Here is the call graph for this function:

◆ getCharacteristicTime()

const tReal& EMM_Stepper::getCharacteristicTime ( ) const
inlineinherited

get the characteristic time

Returns
the characteristic time

References EMM_Stepper::mCharacteristicTime.

◆ getClassName() [1/2]

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(), EMM_Operator::getName(), and CORE_Object::isMemoryChecked().

Here is the caller graph for this function:

◆ getClassName() [2/2]

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

return the class name of the object

Parameters
identityStringthe identity string of the object
Returns
the class name

◆ getDoubleEpsilon()

static tDouble CORE_Object::getDoubleEpsilon ( )
inlinestaticinherited

get the epsilon value for tDouble type

Returns
the epsilon value for tDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getDoubleInfinity()

static tDouble CORE_Object::getDoubleInfinity ( )
inlinestaticinherited

get the infinity value for tFloat type

Returns
the intinity value for tFloat type

◆ getDt() [1/2]

const tReal& EMM_Stepper::getDt ( ) const
inlineinherited

get the time step

Returns
the time step

References EMM_Stepper::mDt.

Referenced by EMM_IterativeTimeStep::computeInitialTimeStep(), and EMM_RegularTimeStep::computeNewTimeStep().

Here is the caller graph for this function:

◆ getDt() [2/2]

tReal& EMM_Stepper::getDt ( )
inlineinherited

get the time step

Returns
the time step

References EMM_Stepper::mDt.

◆ getDtFactor()

const tReal& EMM_Stepper::getDtFactor ( ) const
inlineinherited

get the dt factor

Returns
the multiplied dt factor

References EMM_Stepper::mDtFactor.

◆ getEpsilon()

template<class T >
static T CORE_Object::getEpsilon ( )
inlinestaticinherited

get the epsilon value for T type

Returns
the epsilon value for T type

◆ getFloatEpsilon()

static tFloat CORE_Object::getFloatEpsilon ( )
inlinestaticinherited

get the epsilon value for tFloat type

Returns
the epsilon value for tFloat type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getFloatInfinity()

static tFloat CORE_Object::getFloatInfinity ( )
inlinestaticinherited

get the infinity value for tFloat type

Returns
the intinity value for tFloat type

◆ getIdentityString()

tString CORE_Object::getIdentityString ( ) const
inlineinherited

◆ getInfinity()

template<class T >
static T CORE_Object::getInfinity ( )
inlinestaticinherited

get the infinity for T type

Returns
the infinity value for T type

◆ getInitialTimeType()

const tFlag& EMM_IterativeTimeStep::getInitialTimeType ( ) const
inlineinherited

get the initial type type

Returns
the intitial time type

References EMM_IterativeTimeStep::mInitialTimeType.

◆ getIntegrationOrder()

const tFlag& EMM_IterativeTimeStep::getIntegrationOrder ( ) const
inlineinherited

get integration order

Returns
the integration ordr in 1|2

References EMM_IterativeTimeStep::mOrder.

Referenced by EMM_SecondOrderIterativeTimeStep::computeTimeFunctionDerivatives().

Here is the caller graph for this function:

◆ getLDoubleEpsilon()

static tLDouble CORE_Object::getLDoubleEpsilon ( )
inlinestaticinherited

get the epsilon value for tLDouble type

Returns
the epsilon value for tLDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getLDoubleInfinity()

static tDouble CORE_Object::getLDoubleInfinity ( )
inlinestaticinherited

get the infinity value for tDouble type

Returns
the infinity value for tDouble type

◆ getMaxChar()

static tChar CORE_Object::getMaxChar ( )
inlinestaticinherited

get the max value for tChar type

Returns
the max value for tChar type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxDouble()

static tDouble CORE_Object::getMaxDouble ( )
inlinestaticinherited

get the max value for tDouble type

Returns
the max value for tDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxFlag()

static tFlag CORE_Object::getMaxFlag ( )
inlinestaticinherited

get the max value for the tFlag type

Returns
the max value for the tFlag type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxFloat()

static tFloat CORE_Object::getMaxFloat ( )
inlinestaticinherited

get the max value for tFloat type

Returns
the max value for tFloat type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaximumEvaluationsNumber()

const tUInteger& EMM_IterativeTimeStep::getMaximumEvaluationsNumber ( ) const
inlineinherited

get the max evalution of Energy for finding the best dt for which the variation of energy is <0

Returns
the max loops number

References EMM_IterativeTimeStep::mMaxEvaluationsNumber.

Referenced by optimizeTimeFunction(), EMM_QuadraticNumberIterativeTimeStep::optimizeTimeFunction(), and EMM_GoldenNumberIterativeTimeStep::optimizeTimeFunction().

Here is the caller graph for this function:

◆ getMaximumTimeStepGap()

const tReal& EMM_IterativeTimeStep::getMaximumTimeStepGap ( ) const
inlineinherited

get the maximum time step gap

Returns
the maximum time step gap

References EMM_IterativeTimeStep::mMaxTimeStepGap.

◆ getMaxIndex()

static tIndex CORE_Object::getMaxIndex ( )
inlinestaticinherited

get the max value for the array/vector indexing type

Returns
the max value for the array/vector indexing type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxInt()

static tInt CORE_Object::getMaxInt ( )
inlinestaticinherited

get the max value for tInt type

Returns
the max value for tInt type

Referenced by MATSGN_FFT::fastFourierTransform3D_FFTW(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxInteger()

static tInteger CORE_Object::getMaxInteger ( )
inlinestaticinherited

get the max value for the integer type

Returns
the max value for the integer type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxLDouble()

static tLDouble CORE_Object::getMaxLDouble ( )
inlinestaticinherited

get the max value for tLDouble type

Returns
the max value for tLDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxLInt()

static tLInt CORE_Object::getMaxLInt ( )
inlinestaticinherited

get the max value for tLInt type

Returns
the max value for tLInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxLLInt()

static tLLInt CORE_Object::getMaxLLInt ( )
inlinestaticinherited

get the max value for tULInt type

Returns
the max value for tULInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxReal()

static tReal CORE_Object::getMaxReal ( )
inlinestaticinherited

get the max value for the real type

Returns
he max value for the real type

Referenced by EMM_MatterField::adimensionize(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxSInt()

static tSInt CORE_Object::getMaxSInt ( )
inlinestaticinherited

get the max value for tSInt type

Returns
the max value for tSInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxUChar()

static tUChar CORE_Object::getMaxUChar ( )
inlinestaticinherited

get the max value for tUChar type

Returns
the max value for tUChar type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxUIndex()

static tUIndex CORE_Object::getMaxUIndex ( )
inlinestaticinherited

get the max value for difference the array/vector indexing type

Returns
the max value for difference the array/vector indexing type

Referenced by CORE_Vector< T >::addAfterIndices(), CORE_Vector< T >::search(), CORE_Test::testType(), CORE_Integer::toHexString(), and CORE_Integer::toString().

Here is the caller graph for this function:

◆ getMaxUInt()

static tUInt CORE_Object::getMaxUInt ( )
inlinestaticinherited

get the max value for tUInt type

Returns
the max value for tUInt type

Referenced by EMM_Array< tCellFlag >::loadFromFile(), EMM_RealField::loadFromFile(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxUInteger()

static tUInteger CORE_Object::getMaxUInteger ( )
inlinestaticinherited

get the max value for the unsigned integer type

Returns
the max value for the unsigned integer type

Referenced by MATH_Pn::computeExtrenums(), EMM_MultiScaleGrid::computeLevelsNumber(), EMM_Input::restoreBackup(), MATH_P0::solve(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxULInt()

static tULInt CORE_Object::getMaxULInt ( )
inlinestaticinherited

get the max value for tULInt type

Returns
the max value for tULInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxULLInt()

static tULLInt CORE_Object::getMaxULLInt ( )
inlinestaticinherited

get the max value for tULLInt type

Returns
the max value for tULLInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMaxUSInt()

static tUSInt CORE_Object::getMaxUSInt ( )
inlinestaticinherited

get the max value for tUSInt type

Returns
the max value for tUSInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinChar()

static tChar CORE_Object::getMinChar ( )
inlinestaticinherited

get the min value for tChar type

Returns
the min value for tChar type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinDouble()

static tDouble CORE_Object::getMinDouble ( )
inlinestaticinherited

get the min value for tDouble type

Returns
the min value for tDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinFlag()

static tFlag CORE_Object::getMinFlag ( )
inlinestaticinherited

get the min value for the tFlag type

Returns
the min value for the tFlag type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinFloat()

static tFloat CORE_Object::getMinFloat ( )
inlinestaticinherited

get the min value for tFloat type

Returns
the min value for tFloat type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinIndex()

static tIndex CORE_Object::getMinIndex ( )
inlinestaticinherited

get the min value for the array/vector indexing type

Returns
the min value for the array/vector indexing type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinInt()

static tInt CORE_Object::getMinInt ( )
inlinestaticinherited

get the min value for tInt type

Returns
the min value for tInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinInteger()

static tInteger CORE_Object::getMinInteger ( )
inlinestaticinherited

get the min value for the integer type

Returns
the minin value for the integer type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinLDouble()

static tLDouble CORE_Object::getMinLDouble ( )
inlinestaticinherited

get the min value for tLDouble type

Returns
the min value for tLDouble type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinLInt()

static tLInt CORE_Object::getMinLInt ( )
inlinestaticinherited

get the min value for tLInt type

Returns
the min value for tLInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinLLInt()

static tLLInt CORE_Object::getMinLLInt ( )
inlinestaticinherited

get the min value for tLLInt type

Returns
the min value for tLLInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinReal()

static tReal CORE_Object::getMinReal ( )
inlinestaticinherited

get the min value for the real type

Returns
the min value for the real type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinSInt()

static tSInt CORE_Object::getMinSInt ( )
inlinestaticinherited

get the min value for tSInt type

Returns
the min value for tSInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinTimeStep()

const tReal& EMM_IterativeTimeStep::getMinTimeStep ( ) const
inlineinherited

get the min time step of iterative time step computing

Returns
the min value of the time step under which the computing is stopped

References EMM_IterativeTimeStep::mMinTimeStep.

◆ getMinUChar()

static tUChar CORE_Object::getMinUChar ( )
inlinestaticinherited

get the min value for tUChar type

Returns
the min value for tUChar type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinUIndex()

static tUIndex CORE_Object::getMinUIndex ( )
inlinestaticinherited

get the min value for difference the array/vector indexing type

Returns
the min value for difference the array/vector indexing type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinUInt()

static tUInt CORE_Object::getMinUInt ( )
inlinestaticinherited

get the min value for tUInt type

Returns
the min value for tUInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinUInteger()

static tUInteger CORE_Object::getMinUInteger ( )
inlinestaticinherited

get the min value for the unsigned integer type

Returns
the min value for the unsigned integer type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinULInt()

static tULInt CORE_Object::getMinULInt ( )
inlinestaticinherited

get the min value for tULInt type

Returns
the min value for tULInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinULLInt()

static tULLInt CORE_Object::getMinULLInt ( )
inlinestaticinherited

get the min value for tULLInt type

Returns
the min value for tULLInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getMinUSInt()

static tUSInt CORE_Object::getMinUSInt ( )
inlinestaticinherited

get the min value for tUSInt type

Returns
the min value for tUSInt type

Referenced by CORE_Test::testType().

Here is the caller graph for this function:

◆ getOut()

static SP::CORE_Out CORE_Object::getOut ( )
inlinestaticinherited

get the output

Returns
the shared pointer to the output stream

References CORE_Object::OUT.

◆ getPointerAddress()

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:

◆ getRealEpsilon()

static tReal CORE_Object::getRealEpsilon ( )
inlinestaticinherited

get the eps which is the difference between 1 and the least value greater than 1 that is representable.

Returns
the eps which is the difference between 1 and the least value greater than 1 that is representable.

Referenced by MATH_P4::solveP4De(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ getRealInfinity()

static tReal CORE_Object::getRealInfinity ( )
inlinestaticinherited

◆ getSharedPointer() [1/2]

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

◆ getSharedPointer() [2/2]

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

get the shared pointer of this class into p

Parameters
p: shared pointer of the class This

◆ getSystem() [1/2]

SPC::EMM_LandauLifschitzSystem EMM_Stepper::getSystem ( ) const
inlineprotectedinherited

◆ getSystem() [2/2]

SP::EMM_LandauLifschitzSystem EMM_Stepper::getSystem ( )
inlineprotectedinherited

get system for writing

Returns
the system

References EMM_Stepper::computeNewTimeStep(), tBoolean, EMM_Stepper::toString(), tReal, tString, and tUInteger.

Here is the call graph for this function:

◆ getTargetTime()

const tReal& EMM_Stepper::getTargetTime ( ) const
inlineinherited

get the end time

Returns
the target time

References EMM_Stepper::mEndTime.

◆ getThread()

static CORE_Thread& CORE_Object::getThread ( )
inlinestaticinherited

get the profilier

Returns
the profiler

Referenced by MATH_MaskVector::add(), MATH_Vector::add(), EMM_DisplacementFEMOperator::addBoundaryElasticStress(), EMM_DisplacementFEMOperator::buildDataOnNeumannBoundaryFaces(), EMM_DisplacementFVMOperator::computeCineticEnergy(), EMM_DisplacementFVMOperator::computeElasticStress(), EMM_DisplacementFEMOperator::computeElasticStress(), EMM_DisplacementFVMOperator::computeElasticTensor(), EMM_DisplacementFEMOperator::computeElasticTensor(), EMM_StaticMagneticTensorOperator::computeEnergy(), EMM_CubicAnisotropyOperator::computeEnergy(), EMM_MagnetostrictionOperator::computeEnergy(), EMM_DisplacementOperator::computeEnergy(), EMM_AnisotropyOperator::computeEnergyWithMagneticExcitation(), EMM_DisplacementFVMOperator::computeEquilibriumMatrixDiagonalConditioner(), EMM_DisplacementFEMOperator::computeEquilibriumMatrixDiagonalConditioner(), EMM_FullExchangeOperator::computeMagneticExcitationField(), EMM_StaticMagnetostrictionOperator::computeMagneticExcitationField(), EMM_LinearAnisotropyOperator::computeMagneticExcitationField(), EMM_StaticMagneticTensorOperator::computeMagneticExcitationField(), EMM_CubicAnisotropyOperator::computeMagneticExcitationField(), EMM_MinimalExchangeOperator::computeMagneticExcitationField(), EMM_AnisotropyOperator::computeMagneticExcitationField(), EMM_MagnetostrictionOperator::computeMagneticExcitationField(), EMM_CubicAnisotropyOperator::computeMagneticExcitationFieldGradient(), EMM_AnisotropyOperator::computeMagneticExcitationFieldGradient(), EMM_DisplacementFVMOperator::computeMagneticStress(), EMM_DisplacementFEMOperator::computeMagneticStress(), EMM_OptimalTimeStep::computeOptimalTimeStep(), EMM_DisplacementFEMOperator::computeStressConstraintEnergy(), EMM_FullExchangeOperator::discretize(), EMM_MinimalExchangeOperator::discretize(), EMM_CondensedMassMatrix::discretize(), EMM_LinearAnisotropyOperator::discretize(), EMM_AnisotropyOperator::discretize(), EMM_DemagnetizedOperator::discretize(), EMMG_SLDemagnetizedOperator::discretize(), EMM_LandauLifschitzSystem::discretize(), MATH_Vector::divide(), MATH_MaskVector::dot(), MATH_Vector::dot(), EMM_4SymmetricTensors::doubleDot(), EMM_4Tensors::doubleDotCrossDoubleDotScalar(), EMM_4Tensors::doubleDotCrossProduct(), EMM_4Tensors::doubleDotCrossSquaredScalar(), EMM_4Tensors::doubleDotProduct(), MATH_Vector::init(), MATH_MaskVector::init(), EMM_LandauLifschitzODE_RK::integrateMagnetizationFieldAtTime(), EMM_DisplacementFVM_Interpolator::interpolateUAtVertices(), EMMG_SLDemagnetizedOperator::localAssembly(), EMM_DisplacementOperator::nullProjectionOnDirichletBoundary(), EMM_DisplacementOperator::periodicProjection(), EMM_2PackedSymmetricTensors::product(), EMM_CanonicalMassMatrix::product(), MATH_FullMatrix::product(), EMM_CondensedMassMatrix::product(), EMM_BlockMassMatrix::product(), MATH_MorseMatrix::product(), EMMG_SLDemagnetizedOperator::product(), EMM_DisplacementOperator::projectionOnDirichletBoundary(), EMM_LandauLifschitzSystem::resetOperatorsToInitialState(), EMM_DisplacementFVMOperator::setBoundaryFaceTypes(), FFTW_MultiDFTs::setFFT(), FFTW_MultiLevelsDFT::setFFT(), FFTW_MultiLevelsDFT::setLevels(), FFTW_MultiDFTs::setPlan(), FFTW_MultiLevelsDFT::setPlan(), EMM_CondensedMassMatrix::solve(), EMM_LandauLifschitzODE::solveODE(), EMM_4SymmetricTensors::squaredDoubleDot(), EMM_4Tensors::squaredDoubleDotCrossScalar(), EMM_4Tensors::squaredDoubleDotScalar(), EMM_CanonicalMassMatrix::symmetricDot(), EMM_CondensedMassMatrix::symmetricDot(), EMM_BlockMassMatrix::symmetricDot(), FFTW_Test::test(), MATH_SolverTest::test(), EMM_ODETest::testODE(), and EMM_Grid3D::updateLimitConditionOnPoints().

Here is the caller graph for this function:

◆ getTimeStepBound()

const tReal& EMM_IterativeTimeStep::getTimeStepBound ( ) const
inlineinherited

◆ getTimeStepsNumber()

const tUInteger& EMM_Stepper::getTimeStepsNumber ( ) const
inlineinherited

get the time steps number

References EMM_Stepper::mTimeStepsNumber.

◆ getTypeName()

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

get type name

Returns
the type name of the class

References tString.

◆ getZoomInFactor()

const tReal& EMM_IterativeTimeStep::getZoomInFactor ( ) const
inlineinherited

set the zoom in factor <1

Returns
zoom in factor < 1

References EMM_IterativeTimeStep::mZoomInFactor.

Referenced by optimizeTimeFunction(), EMM_QuadraticNumberIterativeTimeStep::optimizeTimeFunction(), and EMM_GoldenNumberIterativeTimeStep::optimizeTimeFunction().

Here is the caller graph for this function:

◆ getZoomOutFactor()

const tReal& EMM_IterativeTimeStep::getZoomOutFactor ( ) const
inlineinherited

◆ is32Architecture()

static tBoolean CORE_Object::is32Architecture ( )
inlinestaticinherited

return true if the machine is a 32 bits machine

Returns
true is the computing is done in a 32 bits machine

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

Referenced by CORE_Test::testType().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ is64Architecture()

static tBoolean CORE_Object::is64Architecture ( )
inlinestaticinherited

return true if the machine is a 64 bits machine

Returns
true is the computing is done in a 64 bits machine

Referenced by EMM_VTK::getVTKType(), and CORE_Test::testType().

Here is the caller graph for this function:

◆ isInstanceOf() [1/2]

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

test if the clas T is an instance of this class

Returns
true if the object is an instance of T

References null.

Referenced by MATH_ToeplitzTest::toeplitzTest().

Here is the caller graph for this function:

◆ isInstanceOf() [2/2]

tBoolean CORE_Object::isInstanceOf ( const tString name) const
inlineinherited

test if the object is an instance of className

Parameters
namename of the class
Returns
true if the object is an instance of class Name

References CORE_Object::getIdentityString().

Here is the call graph for this function:

◆ isMemoryChecked()

static const tBoolean& CORE_Object::isMemoryChecked ( )
inlinestaticinherited

get if the memory checking is used

Returns
true: if the memory checking is used.

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

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isSystemCompatible()

virtual tBoolean EMM_Stepper::isSystemCompatible ( SPC::EMM_LandauLifschitzSystem  system) const
inlineprotectedvirtualinherited

return true if the system is compatible

Parameters
system: system to optimize
Returns
true if the system is compatible with the time optimizer

Reimplemented in EMM_OptimalTimeStep, and EMM_ODETimeStep.

References null.

Referenced by EMM_ODETimeStep::isSystemCompatible(), EMM_OptimalTimeStep::isSystemCompatible(), and EMM_Stepper::setSystem().

Here is the caller graph for this function:

◆ New()

static SP::EMM_QuasiNewtonIterativeTimeStep EMM_QuasiNewtonIterativeTimeStep::New ( )
inlinestatic

build a shared pointer associated to the class

References EMM_QuasiNewtonIterativeTimeStep(), optimizeTimeFunction(), tBoolean, tReal, and tUInteger.

Referenced by EMM_TimeClassFactory::NewInstance().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ optimizeTimeFunction()

tBoolean EMM_QuasiNewtonIterativeTimeStep::optimizeTimeFunction ( tReal dt,
const tReal dt_bound,
tUInteger evaluationsNumber 
)
protectedvirtual

optimize the time step function

Parameters
dt
  • input : the initial time step
  • output : the optimal time step
dt_bound: max value for dt
evaluationsNumberthe number of calling of the method.
Returns
true if the optimization has succeeded
  • given the magnetizaton at M0, energy E0 at $dt_0=0 $ and $\frac{dE}{dt} $ at $ dt_0 $ and $ \rho=0.1$
  • $ dt=dt_0-\rho*\frac{dE}{dt}$
  • computes $ M_t $ , $ E_t $ and $\frac{dE}{dt} $ at dt by the methods
    • EMM_LandauLifshitzSystem::computeFieldsAtNextStep(dt,Mt)
    • Et=EMM_LandauLifshitzSystem::computeEnergy(Mt)
    • EMM_LandauLifshitzSystem:computeFunction(Mt,Ht,Ft);
    • dE_dt=EMM_LandauLifshitzSystem::computeEnergyTimeDerivative(Ft,Ht);
  • until $|\frac{dE}{dt}|<\varepsilon $

Implements EMM_IterativeTimeStep.

References EMM_IterativeTimeStep::computeTimeFunctionDerivative(), EMM_IterativeTimeStep::getMaximumEvaluationsNumber(), EMM_IterativeTimeStep::getZoomInFactor(), tReal, and tUInteger.

Referenced by New().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ out()

static CORE_Out& CORE_Object::out ( )
inlinestaticinherited

get the output

Returns
the output stream

Referenced by EMM_Matter::adimensionize(), EMM_DisplacementFVMOperator::backup(), EMM_DisplacementOperator::backup(), MATH_ElementaryMultiLevelsToeplitzMatrix::buildSpectralVectorProjector(), EMM_Test::caseTest(), EMM_Test::caseTests(), EMM_MatterField::computeAnisotropyDirectionsField(), EMM_OptimalTimeStep::computeOptimalTimeStep(), MATH_MultiLevelsToeplitzMatrix::copy(), CORE_Exception::CORE_Exception(), EMM_MatterField::createAnisotropyOperator(), CORE_Run::createIO(), EMM_ElementaryTest::defaultBackupTest(), EMM_ElementaryTest::defaultTest(), MATH_MultiLevelsFFTToeplitzMatrix::diagonalize(), EMM_DisplacementFVMOperator::discretize(), EMM_MagnetostrictionOperator::discretize(), EMM_DisplacementFEMOperator::discretize(), EMM_4SymmetricTensors::doubleDot(), EMM_4Tensors::doubleDotCrossDoubleDotScalar(), EMM_TensorsTest::doubleDotCrossDoubleDotScalarTests(), EMM_4Tensors::doubleDotCrossProduct(), EMM_TensorsTest::doubleDotCrossProductTests(), EMM_4Tensors::doubleDotCrossSquaredScalar(), EMM_TensorsTest::doubleDotCrossSquaredScalarTests(), EMM_4Tensors::doubleDotProduct(), EMM_TensorsTest::doubleDotProductTests(), EMM_DisplacementWaveTest::elasticWaveTest(), EMM_Test::elementaryTests(), FFTW_Test::fftwTutorial(), MATH_IntegrationTest::gaussLegendreTest(), EMM_MagnetostrictionTest::HComputingTest(), EMM_DemagnetizedPeriodicalTest::HTest(), EMMH_HysteresisTest::hysteresisDefaultCycleTest(), EMM_TensorsTest::initializationTests(), EMM_MultiScaleGrid::initialize(), EMM_MultiScaleSDGrid::initialize(), EMM_MatterField::loadFromANIFile(), EMM_AnisotropyDirectionsField::loadFromFile(), EMM_Matter::loadFromFile(), EMM_Grid3D::loadFromGEOFile(), EMM_MatterField::loadFromLOCFile(), EMM_Array< tCellFlag >::loadFromStream(), EMM_Matter::loadFromStream(), EMM_Matter::loadMattersFromFile(), EMM_Run::loadSystemFromOptions(), EMM_ElementaryTest::magnetostrictionBackupTest(), CORE_Run::make(), EMMH_Run::makeHysteresis(), EMM_Run::makeRun(), CORE_Run::makeType(), EMM_ElementaryTest::optionsTest(), MATH_PolynomialTest::P4Tests(), EMM_Test::primaryTests(), EMM_LandauLifschitzSystem::printLog(), CORE_Run::printOptions(), EMM_2PackedSymmetricTensors::product(), EMMG_SLDemagnetizedOperator::projectionOnSpectralSpace(), CORE_Run::readOptionsFromCommandLine(), CORE_Test::readVectorTest(), EMM_DemagnetizedPeriodicalTest::relaxationTest(), EMM_DisplacementFVMOperator::restore(), EMM_DisplacementOperator::restore(), EMM_Input::restoreBackup(), EMMH_Hysteresis::run(), EMM_Output::save(), EMM_AnisotropyDirectionsField::saveToFile(), EMM_MatterField::saveToFile(), EMM_Grid3D::saveToGEOFile(), CORE_IOTest::searchTest(), EMMH_Hysteresis::setInitialMagnetizationField(), MATH_MultiLevelsToeplitzMatrix::setLevels(), EMM_4SymmetricTensors::squaredDoubleDot(), EMM_4Tensors::squaredDoubleDotCrossScalar(), EMM_TensorsTest::squaredDoubleDotCrossScalarTests(), EMM_4Tensors::squaredDoubleDotScalar(), EMM_TensorsTest::squaredDoubleDotScalarTests(), EMM_TensorsTest::squaredDoubleDotTests(), EMM_MatterTest::testAdimensionize(), EMM_MatterTest::testANIFile(), CORE_Test::testComplex(), CORE_Test::testDateWeek(), FFTW_Test::testDFT(), EMM_MatterTest::testIO(), EMM_ODETest::testODE(), CORE_Test::testOut(), CORE_Test::testReal(), EMM_FieldTest::testRealArray(), EMM_Grid3DTest::testSegment(), EMM_Grid3DTest::testThinSheet(), CORE_Test::testTime(), CORE_Test::testType(), MATH_FullMatrix::toString(), EMM_DemagnetizedPeriodicalTest::xyPeriodicalCubeSDGTest(), and EMM_DemagnetizedPeriodicalTest::xyPeriodicalSheetSDGTest().

Here is the caller graph for this function:

◆ pointer2String()

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

return the string representation of a pointer

Parameters
obj: oject to get the string pointer
Returns
the string pointer of the object

References tString.

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

Here is the caller graph for this function:

◆ printObjectsInMemory() [1/2]

void CORE_Object::printObjectsInMemory ( ostream &  f)
staticinherited

print object in memory

Parameters
f: output to print the objects in memory

References CORE_Object::getIdentityString(), CORE_Object::getSharedPointer(), CORE_Object::mIsMemoryTesting, CORE_Object::mObjects, and tInteger.

Here is the call graph for this function:

◆ printObjectsInMemory() [2/2]

static void CORE_Object::printObjectsInMemory ( )
inlinestaticinherited

print object in memory in the standart output

Referenced by CORE_Object::is32Architecture(), and main().

Here is the caller graph for this function:

◆ resetInitialTimeStepToOptimalOne()

void EMM_IterativeTimeStep::resetInitialTimeStepToOptimalOne ( const tBoolean isReset)
inlineinherited

set if the initial time step is set to optimal time step

Parameters
isReset: true to recompute the initial time step from the optimal one

◆ resetOut()

static void CORE_Object::resetOut ( )
inlinestaticinherited

reset the output stream

Referenced by run().

Here is the caller graph for this function:

◆ resetSystem()

void EMM_Stepper::resetSystem ( )
inherited

reset the reverse system relation

References EMM_Stepper::mSystem, and null.

Referenced by EMM_Stepper::setSystem().

Here is the caller graph for this function:

◆ resetThread()

static void CORE_Object::resetThread ( )
inlinestaticinherited

reset the output stream

Referenced by run().

Here is the caller graph for this function:

◆ setCharacteristicTime()

void EMM_Stepper::setCharacteristicTime ( const tReal t)
inlineinherited

set the characteristic time the real time will be t. mTc in seconds

Referenced by EMM_LandauLifschitzSystem::adimensionize().

Here is the caller graph for this function:

◆ setDt()

void EMM_Stepper::setDt ( const tReal dt)
inlineinherited

set the time step

Parameters
[in]dt: time step

Referenced by EMMH_Hysteresis::run().

Here is the caller graph for this function:

◆ setDtFactor()

void EMM_Stepper::setDtFactor ( const tReal f)
inlineinherited

set the dt factor

Parameters
[in]fthe multiply factor of dt

◆ setInitialTimeType() [1/2]

void EMM_IterativeTimeStep::setInitialTimeType ( const tFlag t)
inlineinherited

set the initial time type

Parameters
t: intitial time type in {INITIAL_TIME_AS_REGULAR,INTIAL_TIME_AS_LINEAR_H}

◆ setInitialTimeType() [2/2]

void EMM_IterativeTimeStep::setInitialTimeType ( const tString t)
inlineinherited

set the initial time type

Parameters
t: intitial time type in {"regular","optimal-linear","max-optimal-linear-constant}

References EMM_IterativeTimeStep::INITIAL_TIME_AS_MAX_LINEAR_CONSTANT_H.

◆ setIntegrationOrder()

void EMM_IterativeTimeStep::setIntegrationOrder ( const tFlag order)
inlineinherited

set the order of evaluation the time function

Parameters
orderis iether 1 or 2

◆ setIsMemoryChecked()

static void CORE_Object::setIsMemoryChecked ( const tBoolean v)
inlinestaticinherited

set if the memory checking is used

Parameters
v: true to check memory

Referenced by main().

Here is the caller graph for this function:

◆ setMaximumEvaluationsNumber()

void EMM_IterativeTimeStep::setMaximumEvaluationsNumber ( const tUInteger n)
inlineinherited

set the max evalution of Energy for finding the best dt for which the variation of energy is <0

Parameters
nthe max loops number

◆ setMaxTimeStepGap()

void EMM_IterativeTimeStep::setMaxTimeStepGap ( const tReal dt)
inlineinherited

set the max gap betewen 2 time step

Parameters
dtmax time set gap

◆ setMinTimeStep()

void EMM_IterativeTimeStep::setMinTimeStep ( const tReal dt)
inlineinherited

set the min time step of iterative time step computing

Parameters
dt: is the min value of the time step under which the computing is stopped

◆ setOut()

static void CORE_Object::setOut ( SP::CORE_Out  out)
inlinestaticinherited

set the output stream

Parameters
out: the shared pointer to the new output stream

References null.

◆ setSystem()

tBoolean EMM_Stepper::setSystem ( SP::EMM_LandauLifschitzSystem  system)
inherited

set the reverse system relation

Parameters
system: the system to set
Returns
true if the system is compatible

References CORE_Object::getThis(), EMM_Stepper::isSystemCompatible(), EMM_Stepper::mSystem, null, and EMM_Stepper::resetSystem().

Here is the call graph for this function:

◆ setTargetTime()

void EMM_Stepper::setTargetTime ( const tReal t)
inlineinherited

set the end time with respect of the characteristic time real time = t * getCharacteristicTime()

Parameters
ttarget time

References EMM_Stepper::mEndTime, and EMM_Stepper::mTimeStepsNumber.

◆ setThis()

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

set this weak shared pointer called toDoAfterThis setting method

Parameters
p: shared pointer of the class This

References CORE_Object::toDoAfterThisSetting().

Here is the call graph for this function:

◆ setThread()

static void CORE_Object::setThread ( SP::CORE_Thread  thread)
inlinestaticinherited

set the thread

Parameters
threadthe shared pointer to the thread

References null.

Referenced by EMM_Run::EMM_Run(), EMM_TensorsRun::EMM_TensorsRun(), and MATH_SolverRun::MATH_SolverRun().

Here is the caller graph for this function:

◆ setTimeStepBound()

void EMM_IterativeTimeStep::setTimeStepBound ( const tReal dt)
inlineinherited

set the max time step

Parameters
dtmax time step

◆ setTimeStepsNumber()

void EMM_Stepper::setTimeStepsNumber ( const tUInteger n)
inlineinherited

set the time steps number

◆ setZoomInFactor()

void EMM_IterativeTimeStep::setZoomInFactor ( const tReal z)
inlineinherited

set the zoom in factor <1

Parameters
zzoom in factor

◆ setZoomOutFactor()

void EMM_IterativeTimeStep::setZoomOutFactor ( const tReal z)
inlineinherited

set the zoom out factor >1

Parameters
zzoom out factor

◆ SP_OBJECT()

EMM_QuasiNewtonIterativeTimeStep::SP_OBJECT ( EMM_QuasiNewtonIterativeTimeStep  )
private

◆ toDoAfterThisSetting()

virtual void EMM_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited

method called after the setting of the shared pointer this method can only be called once.

Reimplemented from CORE_Object.

Reimplemented in EMM_DisplacementOperator, EMM_DisplacementFVMOperator, EMM_GaussLegendreRelaxation, and EMM_GradGaussLegendreRelaxation.

Referenced by EMM_GaussLegendreRelaxation::toDoAfterThisSetting(), and EMM_DisplacementOperator::toDoAfterThisSetting().

Here is the caller graph for this function:

◆ toString()

tString EMM_IterativeTimeStep::toString ( ) const
virtualinherited

Member Data Documentation

◆ Gamma

const tReal EMM_Object::Gamma =-1.7e11
staticinherited

◆ INITIAL_TIME_AS_MAX_LINEAR_CONSTANT_H

const tFlag EMM_IterativeTimeStep::INITIAL_TIME_AS_MAX_LINEAR_CONSTANT_H =2
staticinherited

◆ INITIAL_TIME_AS_OPTIMAL_AFFINE_H

const tFlag EMM_IterativeTimeStep::INITIAL_TIME_AS_OPTIMAL_AFFINE_H =1
staticinherited

◆ INITIAL_TIME_AS_REGULAR

const tFlag EMM_IterativeTimeStep::INITIAL_TIME_AS_REGULAR =0
staticinherited

◆ Mu0

const tReal EMM_Object::Mu0 =4*M_PI*1e-07
staticinherited

◆ NULL_VALUE

const tReal EMM_Object::NULL_VALUE ={0,0,0}
staticinherited

◆ X

const tDimension EMM_Object::X =0
staticinherited

◆ Y

const tDimension EMM_Object::Y =1
staticinherited

◆ Z

const tDimension EMM_Object::Z =2
staticinherited

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