1 #ifndef EMMG_DemagnetizedOperator_H 2 #define EMMG_DemagnetizedOperator_H 60 inline static SP::EMMG_DemagnetizedOperator
New() {
97 if (nCells==0)
return;
101 if (gM==
null)
throw EMM_Exception(
"generic",
"EMMG_DemagnetizedOperator:: computeMagneticExcitationField(..)",
102 "M is an incompatible real field");
106 if (gH==
null)
throw EMM_Exception(
"generic",
"EMMG_DemagnetizedOperator:: computeMagneticExcitationField(..)",
107 "H is an incompatible real field");
116 &(*gH)[0],&(*gH)[0]);
119 &(*gM)[0],&(*gH)[0]);
const tUIndex & getSize() const
return the size of the array for reading
Definition: CORE_Array.h:1018
virtual tUIndex getSize() const =0
return the size of the field
This class describes a generic real field.
Definition: EMMG_RealField.h:17
This class describes the linear demagnetized operator of the Landau Lifschitz system EMM_LandauLifsch...
Definition: EMM_DemagnetizedOperator.h:81
virtual ~EMMG_DemagnetizedOperator(void)
destroy the class
Definition: EMMG_DemagnetizedOperator.h:51
virtual void computeMagneticExcitationField(const EMM_RealArray &sigma, const EMM_RealField &M, EMM_RealField &H) const
compute the normalized excitation magnetic field at M
Definition: EMMG_DemagnetizedOperator.h:86
SP_OBJECT(EMMG_DemagnetizedOperator)
This class describes the linear demagnetized operator EMM_DemagnetizedOperator of the Landau Lifschit...
Definition: EMMG_DemagnetizedOperator.h:19
#define null
Definition: types.h:144
DEFINE_SPTR(EMMG_DemagnetizedOperator)
virtual void initField(const tReal &f)=0
init the field to uniform value in each direction
static SP::EMMG_DemagnetizedOperator New()
create a demagnetized operator
Definition: EMMG_DemagnetizedOperator.h:60
virtual void computeMagneticExcitationField(const tUIndex &nCells, const tDimension &dim, const tReal *sigmaM, tReal *H) const
compute the excitation magnetic field at M
Definition: EMM_DemagnetizedOperator.cpp:258
#define tUIndex
Definition: types.h:126
This class describes a real array.
Definition: EMM_RealArray.h:16
const tDimension & getDimension() const
get the dimension
Definition: EMM_RealField.h:553
this class describes the exceptions raised for E-MicromM package
Definition: EMM_Exception.h:14
EMMG_DemagnetizedOperator(void)
create the class
Definition: EMMG_DemagnetizedOperator.h:44
void setDimension(const tDimension &d)
set the dimension
Definition: EMM_RealField.h:158
This class describes a real field.
Definition: EMM_RealField.h:21
virtual void setSize(const tUIndex &n)=0
set the size
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:141