|
C++ mpi module for stochmagnet_main Package
|
This class describes a demagnetized operator consided as external applied field. More...
#include <SM_MacroCellsExternalDemagnetizedOperator.h>


Public Member Functions | |
| virtual tMemSize | getMemorySize () const |
| return the memory size of the class and the memory size of all its attributes/associations More... | |
| virtual tMemSize | getContentsMemorySize () const |
| return the memory size of the included associations More... | |
| virtual CORE_UniquePointer< SM_SliceOperator > | NewInstance () const override |
| create a New instance of this More... | |
| void | setDemagnetizedUpdatingStepsNumber (const tInteger &n) |
| set the number of steps to update demagnetized field More... | |
| const tInteger & | getDemagnetizedUpdatingStepsNumber () const |
| get the number of steps to update demagnetized field | |
| virtual void | discretize (const SM_Network &network, const SM_Material &material) final |
| discretize the operator on the netowek More... | |
| virtual void | updateState (const tIndex &timeIndex, const SM_Network &network, const SM_Material &material, const SM_RealField &S) final |
| uopdate the state of the operator at time index More... | |
| virtual tReal | computeSpinEnergy (const tIndex &i, const tIndex &timeIndex, const SM_Network &network, const SM_Material &material, const SM_RealField &S) const final |
| compute the spin energy by virtual method More... | |
| virtual tReal | computeEnergySlice (const tIndex &stepIndex, const SM_Network &network, const SM_Material &material, const tIndex &startIndex, const tIndex &endIndex, const tReal *S) const final |
| compute the energy by virtual method More... | |
| virtual tString | toString () const final |
| return string representaton of the operator | |
Public Member Functions inherited from SM_MacroCellsDemagnetizedOperator | |
| void | setMacroCellsNetwork (CORE_UniquePointer< SM_MacroCellsNetwork > network) |
| set the macro cell network | |
| SM_MacroCellsNetwork & | getMacroCellsNetwork () |
| get the macro cell network | |
| const SM_MacroCellsNetwork & | getMacroCellsNetwork () const |
| get the macro cell network | |
| void | setMacroCellsMagnetizationField (CORE_UniquePointer< SM_MacroCellsMagnetizationField > f) |
| set the macro cell Magnetization field | |
| SM_MacroCellsMagnetizationField & | getMacroCellsMagnetizationField () |
| get the macro cells Magnetization field | |
| const SM_MacroCellsMagnetizationField & | getMacroCellsMagnetizationField () const |
| get the macro cells Magnetization field | |
| void | setMacroCellsDemagnetizedField (CORE_UniquePointer< SM_MacroCellsDemagnetizedField > f) |
| set the macro cell demagnetized field | |
| SM_MacroCellsDemagnetizedField & | getMacroCellsDemagnetizedField () |
| get the macro cells demagnetized field | |
| const SM_MacroCellsDemagnetizedField & | getMacroCellsDemagnetizedField () const |
| get the macro cells demagnetized field | |
| virtual void | computeMagneticFieldSlice (const tIndex &timeIndex, const SM_Network &network, const SM_Material &material, const tIndex &startIndex, const tIndex &endIndex, const tReal *S, const tBoolean &alpha, const tIndex &nH, tReal *H) const final |
| compute the anisotropy magnetic field by virtual method More... | |
Public Member Functions inherited from SM_SliceOperator | |
| const tString & | getName () const |
| return the operator name More... | |
| virtual void | copy (const SM_SliceOperator &op) |
| copy More... | |
| virtual void | adimensionize (const tReal &cH) |
| adimensionize operator with characteric field value in J More... | |
Public Member Functions inherited from SM_Object | |
| SM_Object (void) | |
| create | |
| virtual | ~SM_Object (void) |
| destroy | |
Public Member Functions inherited from CORE_Object | |
| template<class T > | |
| std::shared_ptr< T > | getSharedPointer () |
| return the shared pointer for this More... | |
| template<class T > | |
| std::shared_ptr< const T > | getConstSharedPointer () const |
| return a const shared pointer for this More... | |
| template<class T > | |
| tBoolean | isInstanceOf () const |
| test if the clas T is an instance of this class More... | |
| tString | getClassName () const |
| return the name of the class More... | |
| tString | getPointerString () const |
| retrun the pointer of the class as a string More... | |
| tString | getIdentityString () const |
| retrun the string identification of the class More... | |
Static Public Member Functions | |
| static CORE_UniquePointer< SelfClass > | New (const CORE_OptionsList &arguments) |
| build a new instance of the operator More... | |
| static CORE_UniquePointer< SelfClass > | New () |
| build a new instance of the operator More... | |
Static Public Member Functions inherited from CORE_Object | |
| static tBoolean | EnableMemoryStack (const tBoolean &isMemoryChecked) |
| enable the memory stack More... | |
| static void | EnableMemoryStack () |
| enable the memory stack | |
| static void | DisableMemoryStack () |
| disable the memory stack | |
| static tBoolean | IsMemoryStackEnabled () |
| return trur if the memory stack is enabled | |
| static tString | MemoryStackToString () |
| get the memory stack in string More... | |
| static tIndex | GetRegisteredClassesNumber () |
| get the memory stack in string More... | |
Protected Member Functions | |
| SM_MacroCellsExternalDemagnetizedOperator (const CORE_OptionsList &arguments) | |
| create a network class | |
| virtual | ~SM_MacroCellsExternalDemagnetizedOperator (void) |
| destroy | |
Protected Member Functions inherited from SM_MacroCellsDemagnetizedOperator | |
| SM_MacroCellsDemagnetizedOperator (const CORE_OptionsList &arguments) | |
| create a network class | |
| virtual | ~SM_MacroCellsDemagnetizedOperator (void) |
| destroy | |
Protected Member Functions inherited from SM_SliceOperator | |
| SM_SliceOperator (void) | |
| create a network class | |
| virtual | ~SM_SliceOperator (void) |
| destroy | |
| void | setName (const tString &name) |
| set the name More... | |
Protected Member Functions inherited from CORE_Object | |
| CORE_Object () | |
| build an instance of the object | |
| virtual | ~CORE_Object () |
| destroy the instance of object std | |
This class describes a demagnetized operator consided as external applied field.
The Demagnetized field is considered as an external field. So the energy is computed as a Zeeman operator:
Total Energy of the system : \( E=-\mu_s \sum_i H_{dem}^{p_i}.S(i) \)
|
finalvirtual |
compute the energy by virtual method
| [in] | stepIndex | index of step |
| [in] | network | : network |
| [in] | material | : material of the network |
| [in] | startIndex | : start index of the particle to compute the energy |
| [in] | endIndex | : end index of the particle to compute the energy |
| [in] | S | unit direction of magnetic spin moment of size nParticles x SM_Constants::DIM |
It returns \( E=\frac{1}{2} \sum_p E_i \)
Reimplemented from SM_MacroCellsDemagnetizedOperator.
|
finalvirtual |
compute the spin energy by virtual method
| [in] | i | : index of the particles |
| [in] | timeIndex | : time step index |
| [in] | network | : network |
| [in] | material | : material of the network |
| [in] | S | unit direction of magnetic spin moment of size nParticles x dim |
Reimplemented from SM_MacroCellsDemagnetizedOperator.
|
inlinefinalvirtual |
discretize the operator on the netowek
| [in] | network | :operator on which the operatr is applied |
| [in] | material | : material of the particles of the network |
Reimplemented from SM_MacroCellsDemagnetizedOperator.
|
inlinevirtual |
return the memory size of the included associations
Reimplemented from SM_MacroCellsDemagnetizedOperator.
|
inlinevirtual |
return the memory size of the class and the memory size of all its attributes/associations
Reimplemented from SM_MacroCellsDemagnetizedOperator.
|
inlinestatic |
build a new instance of the operator
|
inlinestatic |
build a new instance of the operator
|
inlineoverridevirtual |
|
inline |
set the number of steps to update demagnetized field
| [in] | n | : number of steps betwrrn 2 computations of demagnetized field on macro cells |
|
inlinefinalvirtual |
uopdate the state of the operator at time index
| [in] | timeIndex | : time step index |
| [in] | network | : network |
| [in] | material | : material of the network |
| [in] | S | unit direction of magnetic spin moment of size nParticles x dim |
Reimplemented from SM_MacroCellsDemagnetizedOperator.