C++ mpi module for stochmagnet_main Package
Public Member Functions | Static Public Member Functions | List of all members
SM_Loader Class Reference

this class loads classes of the package More...

#include <SM_Loader.h>

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

Public Member Functions

 SM_Loader ()
 build a SM_Loader
 
virtual ~SM_Loader (void)
 destroy a SM_Loader
 
virtual tMemSize getMemorySize () const override
 return the memory size of the class and the memory size of all its attributes/associations More...
 
- 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...
 
virtual tMemSize getContentsMemorySize () const
 return nthe memory size of the included associations 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...
 
virtual tString toString () const
 return the string representation of the object node More...
 

Static Public Member Functions

static tBoolean LoadBeamFromOptions (SM_Beam &beam, const CORE_OptionsList &options)
 load the beam from options More...
 
static tBoolean LoadSystemFromOptions (SM_System &system, const CORE_OptionsList &options)
 load the system from options More...
 
static tBoolean LoadNetworkFromOptions (SM_Network &network, const SM_CrystalStructure &cStructure, const CORE_OptionsList &options)
 load the network from options More...
 
static tBoolean LoadMaterialFromOptions (SM_Material &material, const CORE_OptionsList &options)
 load the material form options More...
 
static tBoolean LoadCrystalStructureFromOptions (SM_CrystalStructure &cStructure, const CORE_OptionsList &options)
 load crystal structure from options More...
 
static tBoolean LoadSystemOperatorsFromOptions (SM_System &system, const CORE_OptionsList &options)
 load the operators of the system More...
 
static tBoolean LoadSystemInitialMagneticMomentDirectionsFromOptions (SM_System &system, const CORE_OptionsList &options)
 load the dierction of initial magnetic moments of the system More...
 
static tBoolean LoadSystemNoiseFromOptions (SM_System &system, const CORE_OptionsList &options)
 load the noise of the system More...
 
static tBoolean LoadStochasticOutputFromOptions (SM_StochasticOutputComponent &outputSData, const CORE_OptionsList &options)
 load the stochastic outputs for the runer 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...
 

Additional Inherited Members

- Protected Member Functions inherited from CORE_Object
 CORE_Object ()
 build an instance of the object
 
virtual ~CORE_Object ()
 destroy the instance of object std

 

Detailed Description

this class loads classes of the package

Member Function Documentation

◆ getMemorySize()

virtual tMemSize SM_Loader::getMemorySize ( ) const
inlineoverridevirtual

return the memory size of the class and the memory size of all its attributes/associations

Returns
the memory size of the class and the memory size of its attributes/associations in bytes The mamory size is :
  • the added size of the base classes which contains:
    • the primary attributes size depends on the order: (first delare the smallest attributes size
    • all virtual functions costs <pointer-size> (4 32xor 8 64x) bytes by virtual function
    • virtual inherihtance will increase of (4 or 8) bytes
  • we add the size of the contains values of the attributes : for example the size of a string is the length of the string 1 octet = 1 byte 1 Ko = 1024 bytes 1 Mo = 1024 Ko 1 Go = 1024 Mo

Reimplemented from CORE_Object.

Reimplemented in SM_MonteCarloLoader, SM_StochasticOutputLoader, and SM_LandauLifschitzLoader.

◆ LoadBeamFromOptions()

tBoolean SM_Loader::LoadBeamFromOptions ( SM_Beam beam,
const CORE_OptionsList options 
)
static

load the beam from options

Parameters
[in,out]beam: beam to load
[in]optionsoptions of the builder It loads :
  • the beam size with option="simulation-number"
  • the stochastic function with options "random-distribution","random-generator","seed"

◆ LoadCrystalStructureFromOptions()

tBoolean SM_Loader::LoadCrystalStructureFromOptions ( SM_CrystalStructure cStructure,
const CORE_OptionsList options 
)
static

load crystal structure from options

Parameters
[in,out]cStructurestcuture to load to load
[in]optionsoptions of the builder

◆ LoadMaterialFromOptions()

tBoolean SM_Loader::LoadMaterialFromOptions ( SM_Material material,
const CORE_OptionsList options 
)
static

load the material form options

Parameters
[in,out]materialmaterial to load
[in]optionsoptions of the builder It loads : -name of material with option "material-name" -atomic magnetic moment of material in \( \mu_B\) with option "mu_s" -exchange coefficient in J/link of material with option "J" -anisotropy constant in J/atom of material with option "Ku" -anisotropy directions of material with option "U" -anisotropy type of material with option "crystal-type"

◆ LoadNetworkFromOptions()

tBoolean SM_Loader::LoadNetworkFromOptions ( SM_Network network,
const SM_CrystalStructure cStructure,
const CORE_OptionsList options 
)
static

load the network from options

Parameters
[in,out]network: net to load
[in]cStructure: crystal structure used to build the network
[in]optionsoptions of the builder It loads :
  • unit cell size with option "network-cell-size"
  • number of structures of the network with option "network-size"
  • periodicity of the network with options "network-periodicity"

◆ LoadStochasticOutputFromOptions()

tBoolean SM_Loader::LoadStochasticOutputFromOptions ( SM_StochasticOutputComponent outputSData,
const CORE_OptionsList options 
)
static

load the stochastic outputs for the runer

Parameters
[in,out]outputSDatastochastic output data for generating stochastic properties
[in]optionsoptions of the builder
  • If loads
    • its output path with option "output-path"
    • its output prefix with option "output-prefix"
    • its drawns number during the system running with opton s"stochastic-drawns-number"

◆ LoadSystemFromOptions()

tBoolean SM_Loader::LoadSystemFromOptions ( SM_System system,
const CORE_OptionsList options 
)
static

load the system from options

Parameters
[in,out]system: system to load
[in]optionsoptions of the builder -It creates:
  • its network by the option "network" -It loads
  • its network
  • its materials
  • its operators -It initializes
  • the direction of magnetic moment with option "-S0"
  • the adimensionizing of the parameters with options "adimensionnized"
  • the noise options

◆ LoadSystemInitialMagneticMomentDirectionsFromOptions()

tBoolean SM_Loader::LoadSystemInitialMagneticMomentDirectionsFromOptions ( SM_System system,
const CORE_OptionsList options 
)
static

load the dierction of initial magnetic moments of the system

Parameters
[in,out]system: system to load
[in]optionsoptions of the builder

◆ LoadSystemNoiseFromOptions()

tBoolean SM_Loader::LoadSystemNoiseFromOptions ( SM_System system,
const CORE_OptionsList options 
)
static

load the noise of the system

Parameters
[in,out]system: system to load
[in]optionsoptions of the builder
  • It creates noise with option "temperature". The noise rate is computed using the adimensionized material data

◆ LoadSystemOperatorsFromOptions()

tBoolean SM_Loader::LoadSystemOperatorsFromOptions ( SM_System system,
const CORE_OptionsList options 
)
static

load the operators of the system

Parameters
[in,out]system: system to load
[in]optionsoptions of the builder It creates operators with options "use-zeeman", "use-exchange","use-anisotropy","use-dipolar", "use-macro-cell-dipolar"

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