1 #ifndef EMM_GaussLegendreRelaxation_H 2 #define EMM_GaussLegendreRelaxation_H 69 SP::EMM_RealField
mMs;
70 SP::EMM_RealField
mFs;
98 inline static SP::EMM_GaussLegendreRelaxation
New() {
DEFINE_SVPTR(EMM_GaussLegendreRelaxation)
tBoolean computeMagnetizationFieldAtTimeWithGL1Interpolation(const tReal &dt, const EMM_RealArray &sigma, const EMM_RealField &dM_dt0, const EMM_RealField &M0, EMM_RealField &Mt)
compute the new Mt by gauss legendre interpolation of degre N (N=1)
Definition: EMM_GaussLegendreRelaxation.cpp:65
EMM_RealField & getIntermediateMagnetizationTimeDerivativeField()
get temporary magnetization time derivative field used in computeMagnetizationFieldAtTime() ...
Definition: EMM_GaussLegendreRelaxation.h:142
virtual ~EMM_GaussLegendreRelaxation(void)
destroy the class
Definition: EMM_GaussLegendreRelaxation.cpp:34
SP_OBJECT(EMM_GaussLegendreRelaxation)
tBoolean computeMagnetizationFieldAtTimeWithGLnInterpolation(const tReal &dt, const EMM_RealArray &sigma, const EMM_RealField &dM_dt0, const EMM_RealField &M0, EMM_RealField &Mt)
compute the new Mt by gauss legendre interpolation of degre N (N=4)
Definition: EMM_GaussLegendreRelaxation.cpp:78
SP::EMM_RealField mFs
Definition: EMM_GaussLegendreRelaxation.h:70
#define tBoolean
Definition: types.h:139
SP::MATH_GaussLegendreIntegration mIntegrator
Definition: EMM_GaussLegendreRelaxation.h:66
virtual void toDoAfterThisSetting()
method called after the setting of the shared pointer this method can only be called once...
Definition: EMM_GaussLegendreRelaxation.cpp:37
This class describes implements the main method for the relaxation processs of the Landau Lifschitz S...
Definition: EMM_GaussLegendreRelaxation.h:55
virtual tBoolean integrateMagnetizationFieldAtTime(const tReal &t, const tFlag &order, const EMM_RealArray &sigma, const EMM_RealField &dM_dt0, const EMM_RealField &M0, EMM_RealField &M)
integrate the magnetic field at tme t in [0,dt [ where dt will be the next time step ...
Definition: EMM_GaussLegendreRelaxation.cpp:141
const EMM_RealField & getIntermediateMagnetizationField() const
get temporary magnetization field used in computeMagnetizationFieldAtTime()
Definition: EMM_GaussLegendreRelaxation.h:121
virtual tBoolean discretize()
discretize the problem
Definition: EMM_GaussLegendreRelaxation.cpp:52
EMM_RealField & getIntermediateMagnetizationField()
get temporary magnetization field only used in computeMagnetizationFieldAtTime()
Definition: EMM_GaussLegendreRelaxation.h:135
This class describes a real array.
Definition: EMM_RealArray.h:16
static SP::EMM_GaussLegendreRelaxation New()
create a shared pointer class of this
Definition: EMM_GaussLegendreRelaxation.h:98
This class describes a resolution of landau-lifschitz system of the Core Package for E-MicroM...
Definition: EMM_LandauLifschitzRelaxation.h:32
DEFINE_SPTR(EMM_GaussLegendreRelaxation)
SP::EMM_RealField mMs
Definition: EMM_GaussLegendreRelaxation.h:69
static const tFlag M
Definition: EMM_LandauLifschitzSystem.h:110
This class describes a real field.
Definition: EMM_RealField.h:21
const EMM_RealField & getIntermediateMagnetizationTimeDerivativeField() const
get temporary magnetization time derivative field used in computeMagnetizationFieldAtTime() ...
Definition: EMM_GaussLegendreRelaxation.h:127
EMM_GaussLegendreRelaxation(void)
create the class
Definition: EMM_GaussLegendreRelaxation.cpp:8
#define tReal
Definition: types.h:118
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141
#define tFlag
Definition: types.h:74