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

#include <EMMH_HysteresisFile.h>

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

Public Member Functions

tBoolean append (const EMM_RealArray &M, const tUSInt &D, const EMM_RealArray &data, const tUSInt &dataDim, const tUSInt &n) const
 append the data to the hysteresis file & relaxation return code More...
 
tBoolean save (const EMM_RealArray &Hext, const vector< tString > &dataNames, const tUInteger &nMaxHCycles, const tUSInt &flowSize) const
 save all the external field for all hysteresis files: More...
 
tBoolean save (const EMM_RealArray &H, const EMM_RealArray &M, const tUSInt &D, const tUInteger &i, const tUInteger &c, const tUSInt &s) const
 save the file : More...
 
tBoolean load (EMM_RealArray &H, EMM_RealArray &M, tUSInt &D, tUInteger &i, tUInteger &c, tUSInt &s) const
 load the file and fill the H values and the M values More...
 
tBoolean load (EMM_RealArray &H, tUSInt &D, tUInteger &i, tUInteger &c, tUSInt &s) const
 load the file and fill the H external values More...
 
tBoolean isEmpty () const
 return true if the file is empty More...
 
virtual tString toString () const
 turn the hsteresis file into string More...
 
void setPath (const tString &path)
 set the path More...
 
void setPrefix (const tString &prefix)
 set the prefix More...
 
void setFileName (const tString &name)
 set the file name More...
 
void setFileDigitsNumber (const tUSInt &n)
 get the file digits number for backup file More...
 
const tStringgetPath () const
 get the path More...
 
const tStringgetPrefix () const
 get the prefix More...
 
const tUSIntgetFileDigitsNumber () const
 get the file digits number 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::EMMH_HysteresisFile New ()
 create a run 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 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

 EMMH_HysteresisFile (void)
 create More...
 
virtual ~EMMH_HysteresisFile (void)
 destroy 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 (EMMH_HysteresisFile)
 
template<class T >
tBoolean append (const tString &fileName, const EMM_Array< T > &values, const tUSInt &d, const tUSInt &n) const
 append the array to the file More...
 
tBoolean save (const tString &fileName, const tString &comment, const tUSInt &dim, const EMM_RealArray &H, const tUInteger &nMaxHCycles, const tUSInt &flowSize) const
 save all the external field for all hysteresis file: More...
 
template<class T >
tBoolean save (const tString &fileName, const tString &comment, const EMM_RealArray &H, const EMM_Array< T > &M, const tUSInt &D, const tUInteger &i, const tUInteger &c, const tUSInt &s) const
 save the file : More...
 
template<class T >
tBoolean load (const tString &fileName, EMM_RealArray *H, EMM_Array< T > *M, tUIndex &n, tUSInt &D, tUInteger &i, tUInteger &c, tUSInt &s) const
 load the file and fill the H values and the M values More...
 

Static Private Attributes

static const tUIndex MAX_LINES =10000
 

Constructor & Destructor Documentation

◆ EMMH_HysteresisFile()

EMMH_HysteresisFile::EMMH_HysteresisFile ( void  )
inlineprotected

create

Referenced by New().

Here is the caller graph for this function:

◆ ~EMMH_HysteresisFile()

virtual EMMH_HysteresisFile::~EMMH_HysteresisFile ( void  )
inlineprotectedvirtual

destroy

Member Function Documentation

◆ append() [1/2]

tBoolean EMMH_HysteresisFile::append ( const EMM_RealArray M,
const tUSInt D,
const EMM_RealArray data,
const tUSInt dataDim,
const tUSInt n 
) const

append the data to the hysteresis file & relaxation return code

Parameters
[in]Mthe hysteresis point data to add of size n x D
[in]Dthe dimension of the M field
[in]data: the relaxation return codes of size n
[in]dataDim: the dimension of the data field
[in]n: the number of point of dimension D to add

The indices of the M are those corresponding to the hystereies file as to know for an hystereris file with 4 data:

0 7 8
1 6 9
2 5 10
3 4 11

References EMM_IO::getPath(), EMM_IO::getPrefix(), tBoolean, tString, and tUIndex.

Referenced by New().

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

◆ append() [2/2]

template<class T >
tBoolean EMMH_HysteresisFile::append ( const tString fileName,
const EMM_Array< T > &  values,
const tUSInt d,
const tUSInt n 
) const
private

append the array to the file

Parameters
fileNamename of the output file
values: values of the array of size n x d
ddimension of each point
n: the number of points of dimension d to add

The saving file is as follow with the index is in [0,n[

0 7 8
1 6 9
2 5 10
3 4 11

References load(), MAX_LINES, CORE_IO::mv(), CORE_String::New(), null, CORE_Integer::parseInt(), tBoolean, CORE_Integer::toString(), tString, tUIndex, tUInteger, and tUSInt.

Here is the call graph for this function:

◆ 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}

◆ 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

◆ getEpsilon()

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

get the epsilon value for T type

Returns
the epsilon value for T type

◆ getFileDigitsNumber()

const tUSInt& EMM_IO::getFileDigitsNumber ( ) const
inlineinherited

get the file digits number

Returns
the number of digits for file

References EMM_IO::mFileDigitsNumber.

Referenced by EMM_Input::restoreBackup(), and EMM_Output::saveBackup().

Here is the caller graph for this function:

◆ 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

◆ 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:

◆ 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:

◆ 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.

◆ getPath()

const tString& EMM_IO::getPath ( ) const
inlineinherited

get the path

Returns
the path to save or restore data

References EMM_IO::mPath.

Referenced by append(), isEmpty(), load(), EMM_Input::loadFieldFromAIMFile(), EMM_Input::loadFieldFromTXTFile(), EMM_Input::restoreBackup(), EMM_Output::save(), save(), EMM_Output::saveFieldToAIMFile(), EMM_Output::saveVTI(), and toString().

Here is the caller graph for this function:

◆ 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:

◆ getPrefix()

const tString& EMM_IO::getPrefix ( ) const
inlineinherited

get the prefix

Returns
the prefix of the file names

References EMM_IO::mPrefix.

Referenced by append(), isEmpty(), load(), EMM_Input::loadFieldFromAIMFile(), EMM_Input::loadFieldFromTXTFile(), EMM_Input::restoreBackup(), EMM_Output::save(), save(), EMM_Output::saveFieldToAIMFile(), EMM_Output::saveVTI(), and toString().

Here is the caller 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

◆ 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:

◆ getTypeName()

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

get type name

Returns
the type name of the class

References tString.

◆ 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:

◆ isEmpty()

tBoolean EMMH_HysteresisFile::isEmpty ( ) const
inline

return true if the file is empty

Returns
true if the file is empty

References CORE_IO::exists(), EMM_IO::getPath(), EMM_IO::getPrefix(), tString, and tUIndex.

Here is the call 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:

◆ load() [1/3]

tBoolean EMMH_HysteresisFile::load ( EMM_RealArray H,
EMM_RealArray M,
tUSInt D,
tUInteger i,
tUInteger c,
tUSInt s 
) const

load the file and fill the H values and the M values

Parameters
Hall the value of external field of external magnetism of size Nx3, N is the number of external values of H.
Mall the computed values of the magnetism of size N x D x nHCycles : nHCycles is the maximum number of half cycles and D is the number of values of M at each point
Dthe dimension of the M field
ifirst index of the data NOT computed.
cindex of half cycle containing the data i
sthe data step for saving magnetism file
Returns
true if the file reading has succeeded

References EMM_IO::getPath(), EMM_IO::getPrefix(), tString, and tUInteger.

Referenced by append(), load(), and New().

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

◆ load() [2/3]

tBoolean EMMH_HysteresisFile::load ( EMM_RealArray H,
tUSInt D,
tUInteger i,
tUInteger c,
tUSInt s 
) const

load the file and fill the H external values

Parameters
Hall the value of external field of external magnetism of size Nx3, N is the number of external values of H.
Dthe dimension of the M field
ifirst index of the data NOT computed.
cindex of half cycle containing the data i
sthe data step for saving magnetism file
Returns
true if the file reading has succeeded

References EMM_IO::getPath(), EMM_IO::getPrefix(), load(), null, tString, and tUInteger.

Here is the call graph for this function:

◆ load() [3/3]

template<class T >
tBoolean EMMH_HysteresisFile::load ( const tString fileName,
EMM_RealArray H,
EMM_Array< T > *  M,
tUIndex n,
tUSInt D,
tUInteger i,
tUInteger c,
tUSInt s 
) const
private

load the file and fill the H values and the M values

Parameters
fileNamename of the file to load
Hall the value of external field of external magnetism of size Nx3, N is the number of external values of H. If null, H is not loaded.
Mall the computed values of the field to load of size N x D x nHCycles : nHCycles is the maximum number of half cycles and D is the number of values of M at each point. If null, M is not loaded
nthe number of data
Dthe dimension of the M field
ifirst index of the data NOT computed.
cindex of half cycle containing the data i
sthe data step for saving the field in file
Returns
true if the file reading has succeeded

References MAX_LINES, CORE_String::New(), null, CORE_String::parse(), CORE_Integer::parseInt(), CORE_Real::parseReal(), CORE_Array< T >::setSize(), tBoolean, CORE_Integer::toString(), tReal, tString, tUIndex, tUInteger, and tUSInt.

Here is the call graph for this function:

◆ New()

static SP::EMMH_HysteresisFile EMMH_HysteresisFile::New ( )
inlinestatic

create a run class

Returns
a shared pointer to the class this

References append(), EMMH_HysteresisFile(), load(), save(), tBoolean, tString, tUIndex, tUInteger, and tUSInt.

Referenced by EMMH_HysteresisTest::hysteresisCycleTest(), EMMH_HysteresisTest::hysteresisDefaultCycleTest(), and EMMH_Hysteresis::setHysteresisFile().

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:

◆ resetOut()

static void CORE_Object::resetOut ( )
inlinestaticinherited

reset the output stream

Referenced by run().

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:

◆ save() [1/4]

tBoolean EMMH_HysteresisFile::save ( const EMM_RealArray Hext,
const vector< tString > &  dataNames,
const tUInteger nMaxHCycles,
const tUSInt flowSize 
) const

save all the external field for all hysteresis files:

  • mean magnetism hysteresis file
  • data hysteresis file
Parameters
Hextthe external magnetic field of size n where n is the number of hsysteresis point
dataNamesnames of data
nMaxHCyclesnumber of half cycles to compute
flowSizesize of the flow

References EMM_IO::getPath(), EMM_IO::getPrefix(), tBoolean, tString, and tUIndex.

Referenced by New(), and save().

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

◆ save() [2/4]

tBoolean EMMH_HysteresisFile::save ( const EMM_RealArray H,
const EMM_RealArray M,
const tUSInt D,
const tUInteger i,
const tUInteger c,
const tUSInt s 
) const

save the file :

  • the H values
  • the M values untill the included point at index i and cycle c
Parameters
Hall the value of external field of external magnetism of size Nx3, N is the number of external values of H.
Mall the computed values of the magnetism of size N x D x nHCycles : nHCycles is the maximum number of half cycles and D is the number of values of M at each point
Dthe dimension of the M field
ilast index of the computed data in [0,N[
cindex of the half cycle containing the data i in [0,nHCycles[
sthe data step for saving magnetizm file
Returns
true if the file saving has succeeded The hysteresis file is as follow: c is the computed half cycles number, D is the dimenson of M depending on the d flag.

References EMM_IO::getPath(), EMM_IO::getPrefix(), save(), and tString.

Here is the call graph for this function:

◆ save() [3/4]

tBoolean EMMH_HysteresisFile::save ( const tString fileName,
const tString comment,
const tUSInt dim,
const EMM_RealArray H,
const tUInteger nMaxHCycles,
const tUSInt flowSize 
) const
private

save all the external field for all hysteresis file:

Parameters
fileNamehysteresis file name
comment: comment of the file
dim: dimension of the data to save
Hthe external magnetic field of size n where n is the number of hsysteresis point
nMaxHCyclesnumber of half cycles to compute
flowSizesize of the flow

References CORE_Array< T >::getSize(), CORE_Out::getTime(), CORE_Run::getVersion(), tReal, tUIndex, and tUSInt.

Here is the call graph for this function:

◆ save() [4/4]

template<class T >
tBoolean EMMH_HysteresisFile::save ( const tString fileName,
const tString comment,
const EMM_RealArray H,
const EMM_Array< T > &  M,
const tUSInt D,
const tUInteger i,
const tUInteger c,
const tUSInt s 
) const
private

save the file :

  • the H values
  • the M values untill the included point at index i and cycle c
Parameters
fileName: name of the file
comment: comment abount the field to save in file
Hall the value of external field of external magnetism of size Nx3, N is the number of external values of H.
Mall the computed values of the field of size N x D x nHCycles : nHCycles is the maximum number of half cycles and D is the number of values of M at each point
Dthe dimension of the M field
ilast index of the computed data in [0,N[
cindex of the half cycle containing the data i in [0,nHCycles[
sthe data step for saving magnetizm file
Returns
true if the file saving has succeeded The hysteresis file is as follow: c is the computed half cycles number, D is the dimenson of M depending on the d flag.

iterator on dimension of M

References CORE_Array< T >::getSize(), tReal, tUIndex, and tUSInt.

Here is the call graph for this function:

◆ setFileDigitsNumber()

void EMM_IO::setFileDigitsNumber ( const tUSInt n)
inlineinherited

get the file digits number for backup file

Returns
the number of digits for file

◆ setFileName()

void EMM_IO::setFileName ( const tString name)
inlineinherited

set the file name

Parameters
namename of the file exteract the path and the prefix

References CORE_IO::getPathAndFileName().

Here is the call graph for this function:

◆ 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:

◆ 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.

◆ setPath()

void EMM_IO::setPath ( const tString path)
inlineinherited

set the path

Parameters
paththe path to save or restore data

◆ setPrefix()

void EMM_IO::setPrefix ( const tString prefix)
inlineinherited

set the prefix

Parameters
prefixthe prefix of the file names

◆ 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:

◆ SP_OBJECT()

EMMH_HysteresisFile::SP_OBJECT ( EMMH_HysteresisFile  )
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()

virtual tString EMMH_HysteresisFile::toString ( ) const
inlinevirtual

turn the hsteresis file into string

Returns
the string representation of the class

Reimplemented from CORE_Object.

References EMM_IO::getPath(), and EMM_IO::getPrefix().

Here is the call graph for this function:

Member Data Documentation

◆ Gamma

const tReal EMM_Object::Gamma =-1.7e11
staticinherited

◆ MAX_LINES

const tUIndex EMMH_HysteresisFile::MAX_LINES =10000
staticprivate

Referenced by append(), and load().

◆ 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: