C++ main module for emicrom Package
1.0
|
This class describes the building of fields on multiscale centered dioptic grids initialized by the initialize() method. More...
#include <EMM_MultiScaleCDGrid.h>
Public Member Functions | |
EMM_MultiScaleCDGrid (void) | |
create More... | |
virtual | ~EMM_MultiScaleCDGrid (void) |
destroy More... | |
virtual void | initialize (const tDimension &dim, const tUInteger &Nx, const tUInteger &Ny, const tUInteger &Nz, const tBoolean &Px, const tBoolean &Py, const tBoolean &Pz, const tUInteger &l) |
set the discretization More... | |
void | meanValuesFromFineToCoarseGrid (const tUIndex &nCells, const tDimension &dim, const tReal *Mf, tReal *Ml) const |
compute the field in a corse field from its fine grid. More... | |
void | completeValuesOutsideFineGridByPeriodicity (const tUIndex &nCells, const tDimension &dim, tReal *Ml) const |
complete the values of the field in the coarse grid is set from its values in its included fine grid by periodicity More... | |
tBoolean | resetValuesWithinCenteredZone (const tUIndex &nCells, const tDimension &dim, tReal *Mz) const |
void | addValuesFromCoarseGridToFinestGrid (const tUIndex &nCells, const tDimension &dim, const tUInteger &twoPowerL, const tReal *Ml, tReal *Mf) const |
add the value of the field defined in coarse grid bigger than its finest grid into the field defined in its finest grid More... | |
void | setToeplitzMatrix (SP::MATH_MultiLevelsToeplitzMatrix toeplitz) |
setthe toeplitz associated matrix More... | |
tUInteger | computeLevelsNumber (const tUInteger &Nx, const tUInteger &Ny, const tUInteger &Nz, const tBoolean &isXPeriodic, const tBoolean &isYPeriodic, const tBoolean &isZPeriodic) const |
compute the optimal levels number More... | |
const tUCInt & | getFineElementsNumberPerCoarseElement () const |
get the number of elements of the fine grid per cell of the corse grid More... | |
void | getSegmentsNumber (tUInteger &Nx, tUInteger &Ny, tUInteger &Nz) const |
get the segments number in all directions More... | |
const tUInteger * | getSegmentsNumber () const |
get the segments number per dierction More... | |
const tBoolean * | getPeriodicDirections () const |
get the periodicity per direction More... | |
void | getPeriodicDirections (tBoolean &isXPeriodic, tBoolean &isYPeriodic, tBoolean &isZPeriodic) const |
get the periodicity per direction More... | |
const tUInteger & | getLevelsNumber () const |
get the leves number More... | |
const MATH_MultiLevelsToeplitzMatrix & | getToeplitzMatrix () const |
get the toeplitz matrix More... | |
EMM_RealField & | getLevelMagnetizationField () |
get the magnetization field at level l More... | |
EMM_RealField & | getLevelUpMagnetizationField () |
get the magnetization field at level l+1 More... | |
EMM_RealField & | getZonalMagnetizationField () |
get the magnetization field at zone More... | |
virtual void | computeMultiGridExcitationField (const tUIndex &nCells, const tDimension &dim, const tReal *sigmaM, tReal *H) |
compute the magnetic excitation field by superposition of multi scale grids More... | |
virtual tString | toString () const |
return the class information in a tString 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::EMM_MultiScaleCDGrid | New () |
build a new instance of class More... | |
static tBoolean | resetBlockValues (const tDimension &dim, const tUInteger &Nx, const tUInteger &Ny, const tUInteger &Nz, const tUInteger &iMin, const tUInteger &iMax, const tUInteger &jMin, const tUInteger &jMax, const tUInteger &kMin, const tUInteger &kMax, tReal *M) |
reset the values in a block grid [iMin,iMax[x[jMin,jMax[x[kMin,kMax[ of dimension dim per point inside a grid of size [0,Nx[x[0,Ny[x[0,Nz[ 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_Out & | out () |
get the output More... | |
static SP::CORE_Out | getOut () |
get the output More... | |
static CORE_Thread & | getThread () |
get the profilier More... | |
static const tBoolean & | isMemoryChecked () |
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 tBoolean | SAVE_H_M_AT_LEVEL_1 =false |
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 | |
virtual void | computeZonalDemagnetizedFieldAndNextLevelMagnetizationField (const tUInteger &twoPowerL, const tUIndex &nCells, const tDimension &dim, const tReal *Ml, tReal *Mz, tReal *Mlp1, tReal *H0) const |
compute the zonal demagnetized field added to demagnetized field at level 0 and compute the magnetization field at level l+1 More... | |
virtual void | computeZonalCenteredDemagnetizedFieldFromLevel (const tUInteger &twoPowerL, const tUIndex &nCells, const tDimension &dim, tReal *Ml, tReal *Mz, tReal *H0) const |
compute the centered demagnetized field of level l outside zone anad add it to demagnetized field at level 0 More... | |
tUInteger & | getLevelComputationsNumber () |
return the number of calls of the level computations only for debug More... | |
const tUInteger & | getLevelComputationsNumber () const |
return the number of calls of the level computations only for debug 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 (EMM_MultiScaleCDGrid) | |
void | completeValuesOutsideFineGridByPeriodicityByExclusion (const tUIndex &nCells, const tDimension &dim, tReal *Ml) const |
complete the values of the field in the coarse grid is set from its values in its included fine grid by periodicity More... | |
void | computeMagnetizationFieldAtNextLevel (const tUIndex &nCells, const tDimension &dim, const tReal *Ml, tReal *Mlp1) const |
compute the magntization field at level l+1 for field at level l More... | |
void | computeDemagnetizedExcitationFieldFromLevel (const tUInteger &twoPowerL, const tUIndex &nCells, const tDimension &dim, tReal *Ml, tReal *H0) const |
compute the magnetic exitation of the grid at level l and add it to the magnetic excitation field of level 0 More... | |
This class describes the building of fields on multiscale centered dioptic grids initialized by the initialize() method.
For building centered dyotic coarse grids, the number of segments in each direction must be 1 or a pair number.
For computing the magnetic excitation field for periodic domain, a sequence of l-dyotic grids is built: the grid of level l is included into the grid of level l+1. The grid of level l+1 is twice size of the grid of level l in each direction. The total magnetic excitation field is built as follow see computeMultiGridExcitationField() :
the number of levels is set to 1 for non periodic domain. the number of levels of periodic domain must be at least 2
To compute the demagnetized magnetic excitation field in a grid 4x4x1 with peridicity on x & y.
Step 1 | M at level l | |
Step 2 | M at level l+1 |
the values of the field is meaned in the common part of the both grids as follow:
because of periodicity the value of the magnetization ouside the fine grid is for the x periodicity:
and for the y periodicity (if there is periodicity on y, 0 otherwise) we have:
Step 3 | Mh for computing magnetic excitation contribution of level l+1 |
To compute the contribution of magnetic excitation field of the level l+1 over the grid at level 0 , M is set to 0 on common cells between grid at level l and at level l+1 and
Then, the magnetic excitation at level l+1 is is computed for all levels
Then, the magnetic excitation is over the grid at level 0 .
Step 4 | go to the step 1 for next level | |
to compute the contribution of the next periodic cells |
Note that this algorithm is not valid if the number of segments in only pair (such as N=2 for example). Consider the fine grid as a periodical to compute the mean of the magnetization inside the coarse grid:
For example, consider N=6 at first level with the magnetized field :
| 1 | 2 | 3 | 4 | 5 | 6 | -> H0
By periodicity the mean is as follow:
| | 7/2 | 5/2 | 9/2 | 7/2 | |
and then the magnetization at next level is as follow:
| 7/2 | 7/2 | 5/2 | 9/2 | 7/2 | 7/2 |
So to compute H1, the magnetization field is turned into :
| 7/2 |x 0 | 0 | 0 |0 x | 7/2 | -> H1
But the part of the x set to 0 is forgotten in H0 and H1...
To remains valid all the cells in common of the grid the level l+1 and l must be equal to the union of cells at level l.
EMM_MultiScaleCDGrid::EMM_MultiScaleCDGrid | ( | void | ) |
|
virtual |
destroy
void EMM_MultiScaleCDGrid::addValuesFromCoarseGridToFinestGrid | ( | const tUIndex & | nCells, |
const tDimension & | dim, | ||
const tUInteger & | twoPowerL, | ||
const tReal * | Ml, | ||
tReal * | Mf | ||
) | const |
add the value of the field defined in coarse grid bigger than its finest grid into the field defined in its finest grid
[in] | nCells | number of elements of the field |
[in] | dim | dimension of the field |
[in] | twoPowerL | : step size of the coarse grid with respect of the finest grid |
[in] | Ml | : the large field values of size dim . Nx . Ny . Nz |
[in,out] | Mf | : the fine field values of size dim . Nx . Ny . Nz |
add the value of the field Ml to the value of the field Mf on the cells in common.
For each cell of the finest grid, the corresponding cell of the coarse grid is computed and the values of the field at the coarse element is added to the value of the field at the fine element.
The corresponding coarse elements to the element from the fine grid is computed such that the coarse element contains the center of the element of the fine grid by the following relation.
For each element (i,j,k) of the grid at level 0, the corresponding element (I(i),J(j),K(k)) of the grid at level l is searched such that the center of the element (i,j,k) of the grid at level 0 is inside the element (I,J,K) of the grid at level l.
The left boundary of the grid at level l is when the origin is at the center of the grid
The center of the grid at level 0 is when the origin is at the center of the grid
So, to search the cell of the grid at level l containing the center of the grid at level 0 leads to . We conclude that
References EMM_MultiScaleGrid::getLevelComputationsNumber(), EMM_MultiScaleGrid::getSegmentsNumber(), null, OMP_GET_THREAD_ID, OMP_GET_THREADS_NUMBER, OMP_PARALLEL_PRIVATE_SHARED_DEFAULT, EMM_Output::saveVTI(), tDimension, CORE_Integer::toString(), tReal, tUIndex, and tUInteger.
Referenced by completeValuesOutsideFineGridByPeriodicity(), and computeDemagnetizedExcitationFieldFromLevel().
|
inline |
complete the values of the field in the coarse grid is set from its values in its included fine grid by periodicity
[in] | nCells | number of elements of the mesh |
[in] | dim | dimension of the field |
[in,out] | Ml | : the coarse field values of size dim . nCells |
Step 1 | M at level l | |
Step 2 | M at level l+1 |
If there is periodicity on x, we have:
If there is periodicity on y, we have:
If there is periodicity on x and y, we have in addition:
References addValuesFromCoarseGridToFinestGrid(), completeValuesOutsideFineGridByPeriodicityByExclusion(), resetValuesWithinCenteredZone(), tBoolean, tDimension, tReal, tUIndex, and tUInteger.
Referenced by computeMagnetizationFieldAtNextLevel().
|
private |
complete the values of the field in the coarse grid is set from its values in its included fine grid by periodicity
[in] | nCells | number of elements of the mesh |
[in] | dim | dimension of the field |
[in,out] | Ml | : the coarse field values of size dim . nCells |
Step 1 | M at level l | |
Step 2 | M at level l+1 |
If there is periodicity on y, we have:
If there is periodicity on x and y, we have in addition:
loop all elements of the coarse grid.
References EMM_MultiScaleGrid::getPeriodicDirections(), EMM_MultiScaleGrid::getSegmentsNumber(), OMP_GET_THREAD_ID, OMP_GET_THREADS_NUMBER, OMP_PARALLEL_PRIVATE_SHARED_DEFAULT, tBoolean, tDimension, tReal, tUIndex, and tUInteger.
Referenced by completeValuesOutsideFineGridByPeriodicity().
|
private |
compute the magnetic exitation of the grid at level l and add it to the magnetic excitation field of level 0
[in] | twoPowerL | : ratio size of the grid at level l |
[in] | nCells | : number of cells of the mesh |
[in] | dim | dimension of each point of the mesh |
[in,out] | Ml | magnetization values of size nCells x dim at level L |
[in,out] | H0 | : demagnetized excitation field at level l |
References addValuesFromCoarseGridToFinestGrid(), EMM_MultiScaleGrid::getLevelComputationsNumber(), EMM_MultiScaleGrid::getSegmentsNumber(), EMM_MultiScaleGrid::getToeplitzMatrix(), resetValuesWithinCenteredZone(), EMM_Output::saveVTI(), CORE_Integer::toString(), tReal, tUInteger, and MATH_MultiLevelsToeplitzMatrix::vectorProduct().
Referenced by computeZonalCenteredDemagnetizedFieldFromLevel().
|
inlinestaticinherited |
compute epsilon
|
inherited |
compute the optimal levels number
Nx | number of segments along x-direction |
Ny | number of segments along y-direction |
Nz | number of segments along z-direction |
isXPeriodic | true if the x-direction is periodic |
isYPeriodic | true if the y-direction is periodic |
isZPeriodic | true if the z-direction is periodic |
The level number per direction is such that if If the domain is not periodic the level number is 0
References CORE_Object::getMaxUInteger(), tBoolean, tUInteger, and tUSInt.
Referenced by EMM_MultiScaleGrid::setToeplitzMatrix().
|
private |
compute the magntization field at level l+1 for field at level l
[in] | nCells | : number of cells of the mesh |
[in] | dim | dimension of each point of the mesh |
[in] | Ml | magnetization values of size nCells x dim at level l |
[out] | Mlp1 | : magnetization values of size nCells x dim at level l+1 |
References completeValuesOutsideFineGridByPeriodicity(), and meanValuesFromFineToCoarseGrid().
Referenced by computeZonalCenteredDemagnetizedFieldFromLevel(), and computeZonalDemagnetizedFieldAndNextLevelMagnetizationField().
|
virtualinherited |
compute the magnetic excitation field by superposition of multi scale grids
[in] | nCells | : number of cells of the mesh |
[in] | dim | dimension of each point of the mesh |
[in] | sigmaM | magnetization values of size nCells x dim not necessarly normalized : sigmaM=sigma.M |
[out] | H | return excitation magnetic values of size nCells x dim |
The following algorithm needs 3 temporary fields , and for computing by zone
Computes the magnetic excitation field as follow:
Reimplemented in EMMG_SLSDXPeriodicMultiScale, and EMMG_SLRPPeriodicMultiScale.
References EMM_MultiScaleGrid::computeZonalCenteredDemagnetizedFieldFromLevel(), EMM_MultiScaleGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField(), EMM_MultiScaleGrid::getLevelMagnetizationField(), EMM_MultiScaleGrid::getLevelsNumber(), EMM_MultiScaleGrid::getLevelUpMagnetizationField(), EMM_MultiScaleGrid::getToeplitzMatrix(), EMM_MultiScaleGrid::getZonalMagnetizationField(), EMM_MultiScaleGrid::mLevelComputationsNumber, EMM_MultiScaleGrid::mN, null, EMM_MultiScaleGrid::SAVE_H_M_AT_LEVEL_1, EMM_Output::saveVTI(), CORE_Integer::toString(), tReal, tUIndex, tUInteger, and MATH_MultiLevelsToeplitzMatrix::vectorProduct().
Referenced by EMM_MultiScaleGrid::getZonalMagnetizationField().
|
inlineprotectedvirtual |
compute the centered demagnetized field of level l outside zone anad add it to demagnetized field at level 0
[in] | twoPowerL | : ratio size of the grid at level l |
[in] | nCells | : number of cells of the mesh |
[in] | dim | dimension of each point of the mesh |
[in,out] | Ml | magnetization values of size nCells x dim at level l |
[out] | Mz | magnetization at zone . Working field |
[in,out] | H0 | : demagnetized excitation field at level 0 |
Implements EMM_MultiScaleGrid.
Reimplemented in EMM_MultiScaleSDGrid.
References computeDemagnetizedExcitationFieldFromLevel(), computeMagnetizationFieldAtNextLevel(), tDimension, tReal, tUIndex, and tUInteger.
Referenced by EMM_MultiScaleSDGrid::computeZonalCenteredDemagnetizedFieldFromLevel().
|
inlineprotectedvirtual |
compute the zonal demagnetized field added to demagnetized field at level 0 and compute the magnetization field at level l+1
[in] | twoPowerL | : ratio size of the grid at level l |
[in] | nCells | : number of cells of the mesh |
[in] | dim | dimension of each point of the mesh |
[in] | Ml | magnetization at level l |
[out] | Mz | magnetization at zone . Working field |
[in,out] | Mlp1 | magnetization values of size nCells x dim at level l+1 |
[in,out] | H0 | : demagnetized excitation field at level 0 |
It computes the magnetization field at level l+1. No zone.
Implements EMM_MultiScaleGrid.
Reimplemented in EMM_MultiScaleSDGrid.
References computeMagnetizationFieldAtNextLevel().
Referenced by EMM_MultiScaleSDGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField().
|
inherited |
return the class name of the object
References tString.
Referenced by CORE_Object::getIdentityString(), EMM_Operator::getName(), and CORE_Object::isMemoryChecked().
return the class name of the object
identityString | the identity string of the object |
|
inlinestaticinherited |
get the epsilon value for tDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the infinity value for tFloat type
|
inlinestaticinherited |
get the epsilon value for T type
|
inlineinherited |
get the number of elements of the fine grid per cell of the corse grid
References EMM_MultiScaleGrid::mFineElementsNumberPerCoarseElement.
Referenced by meanValuesFromFineToCoarseGrid(), and EMM_MultiScaleSDGrid::meanValuesFromShiftFineGridToCoarseGrid().
|
inlinestaticinherited |
get the epsilon value for tFloat type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the infinity value for tFloat type
|
inlineinherited |
return the identity string of the object of the form className_at_address
References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.
Referenced by MATH_GaussLegendreIntegration::copy(), EMM_MultiScaleGrid::initialize(), CORE_Object::isInstanceOf(), CORE_Object::printObjectsInMemory(), MATH_Matrix::toString(), EMMG_SLPeriodicMultiScale::toString(), EMM_Stepper::toString(), EMM_AnisotropyDirectionsField::toString(), EMM_BlockMassMatrix::toString(), CORE_Object::toString(), EMM_Tensors::toString(), EMM_MultiScaleGrid::toString(), EMM_MatterField::toString(), EMM_Grid3D::toString(), and EMM_LandauLifschitzSystem::toString().
|
inlinestaticinherited |
get the infinity for T type
|
inlinestaticinherited |
get the epsilon value for tLDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the infinity value for tDouble type
|
inlineprotectedinherited |
return the number of calls of the level computations only for debug
References EMM_MultiScaleGrid::mLevelComputationsNumber.
Referenced by addValuesFromCoarseGridToFinestGrid(), EMM_MultiScaleSDGrid::addValuesFromGridToZoneFinestGrid(), computeDemagnetizedExcitationFieldFromLevel(), EMM_MultiScaleSDGrid::computeZonalCenteredDemagnetizedFieldFromLevel(), and EMM_MultiScaleSDGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField().
|
inlineprotectedinherited |
return the number of calls of the level computations only for debug
References EMM_MultiScaleGrid::mLevelComputationsNumber, EMM_MultiScaleGrid::toString(), and tString.
|
inlineinherited |
get the magnetization field at level l
Referenced by EMM_MultiScaleGrid::computeMultiGridExcitationField().
|
inlineinherited |
get the leves number
References EMM_MultiScaleGrid::mLevelsNumber.
Referenced by EMMG_SLRPPeriodicMultiScale::computeMultiGridExcitationField(), EMMG_SLSDXPeriodicMultiScale::computeMultiGridExcitationField(), and EMM_MultiScaleGrid::computeMultiGridExcitationField().
|
inlineinherited |
get the magnetization field at level l+1
Referenced by EMM_MultiScaleGrid::computeMultiGridExcitationField().
|
inlinestaticinherited |
get the max value for tChar type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for the tFlag type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tFloat type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for the array/vector indexing type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tInt type
Referenced by MATSGN_FFT::fastFourierTransform3D_FFTW(), and CORE_Test::testType().
|
inlinestaticinherited |
get the max value for the integer type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tLDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tLInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tULInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for the real type
Referenced by EMM_MatterField::adimensionize(), and CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tSInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tUChar type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get 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().
|
inlinestaticinherited |
get the max value for tUInt type
Referenced by EMM_Array< tCellFlag >::loadFromFile(), EMM_RealField::loadFromFile(), and CORE_Test::testType().
|
inlinestaticinherited |
get 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().
|
inlinestaticinherited |
get the max value for tULInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tULLInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the max value for tUSInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tChar type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for the tFlag type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tFloat type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for the array/vector indexing type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for the integer type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tLDouble type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tLInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tLLInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for the real type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tSInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tUChar type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for difference the array/vector indexing type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tUInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for the unsigned integer type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tULInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tULLInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
get the min value for tUSInt type
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
|
inlineinherited |
get the periodicity per direction
References EMM_MultiScaleGrid::mIsPeriodic.
Referenced by completeValuesOutsideFineGridByPeriodicityByExclusion(), EMMG_SLRPPeriodicMultiScale::computeMultiGridExcitationField(), EMMG_SLSDXPeriodicMultiScale::computeMultiGridExcitationField(), EMM_MultiScaleSDGrid::computeValuesOnShiftFineGrid(), and meanValuesFromFineToCoarseGrid().
|
inlineinherited |
get the periodicity per direction
isXPeriodic | : true if the x-direction is periodic |
isYPeriodic | : true if the y-direction is periodic |
isZPeriodic | : true if the z-direction is periodic |
|
inlineinherited |
return the identity string of the object
References CORE_Object::pointer2String().
|
inlinestaticinherited |
get 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().
|
inlinestaticinherited |
get the infinity value
Referenced by BrentFunction::BrentFunction(), EMM_OperatorsTest::compareDiscretizedData(), EMM_IterativeTimeStep::EMM_IterativeTimeStep(), EMM_SLElementaryDemagnetizedMatrix::Kxy(), NRFunction::NRFunction(), EMM_PolynomialInterpolationTimeStep::optimizeTimeFunction(), and CORE_Test::testType().
|
inlineinherited |
get the segments number in all directions
Nx | the segments number in x-direction |
Ny | the segments number in y-direction |
Nz | the segments number in z-direction |
|
inlineinherited |
get the segments number per dierction
References EMM_MultiScaleGrid::mN.
Referenced by addValuesFromCoarseGridToFinestGrid(), EMM_MultiScaleSDGrid::addValuesFromCoarseGridToFinestGrid(), EMM_MultiScaleSDGrid::addValuesFromShiftFineGridToFinestGrid(), completeValuesOutsideFineGridByPeriodicityByExclusion(), computeDemagnetizedExcitationFieldFromLevel(), EMMG_SLRPPeriodicMultiScale::computeMultiGridExcitationField(), EMMG_SLSDXPeriodicMultiScale::computeMultiGridExcitationField(), EMM_MultiScaleSDGrid::computeValuesOnShiftFineGrid(), EMM_MultiScaleSDGrid::computeZonalCenteredDemagnetizedFieldFromLevel(), EMM_MultiScaleSDGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField(), EMM_MultiScaleSDGrid::getShiftZone(), meanValuesFromFineToCoarseGrid(), EMM_MultiScaleSDGrid::meanValuesFromShiftFineGridToCoarseGrid(), resetValuesWithinCenteredZone(), and EMM_MultiScaleSDGrid::resetValuesWithinShiftZone().
|
inlineinherited |
get the shared pointer of this class into p
p | : shared pointer of the class This |
Referenced by CORE_Map< Key, Value >::getSharedPointer(), CORE_ArrayList< tString >::getSharedPointer(), EMM_Array< tCellFlag >::getSharedPointer(), CORE_Array< tCellFlag >::getSharedPointer(), CORE_MorseArray< tUChar >::getSharedPointer(), CORE_Vector< T >::getSharedPointer(), and CORE_Object::printObjectsInMemory().
|
inlineinherited |
get the shared pointer of this class into p
p | : shared pointer of the class This |
|
inlinestaticinherited |
get the profilier
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().
|
inlineinherited |
get the toeplitz matrix
Referenced by computeDemagnetizedExcitationFieldFromLevel(), EMMG_SLSDXPeriodicMultiScale::computeLevelDemagnetizedField(), EMMG_SLRPPeriodicMultiScale::computeMultiGridExcitationField(), EMM_MultiScaleGrid::computeMultiGridExcitationField(), EMM_MultiScaleSDGrid::computeZonalCenteredDemagnetizedFieldFromLevel(), and EMM_MultiScaleSDGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField().
|
inlinestaticinherited |
|
inlineinherited |
get the magnetization field at zone
References EMM_MultiScaleGrid::computeMultiGridExcitationField(), EMM_MultiScaleGrid::computeZonalCenteredDemagnetizedFieldFromLevel(), EMM_MultiScaleGrid::computeZonalDemagnetizedFieldAndNextLevelMagnetizationField(), EMM_MultiScaleGrid::resetBlockValues(), tBoolean, tDimension, tReal, tUIndex, and tUInteger.
Referenced by EMM_MultiScaleGrid::computeMultiGridExcitationField(), and EMM_MultiScaleSDGrid::initialize().
|
virtual |
set the discretization
dim | dimension of the field |
Nx | : number of segements along x-direction |
Ny | : number of segements along y-direction |
Nz | : number of segements along z-direction |
Px | : periodicity along x-direction |
Py | : periodicity along y-direction |
Pz | : periodicity along z-direction |
l | : number of levels |
Reimplemented from EMM_MultiScaleGrid.
Reimplemented in EMM_MultiScaleSDGrid.
References EMM_MultiScaleGrid::initialize().
Referenced by EMM_MultiScaleSDGrid::initialize(), and New().
|
inlinestaticinherited |
return true if the machine is a 32 bits machine
References CORE_Object::pointer2String(), CORE_Object::printObjectsInMemory(), and tString.
Referenced by CORE_Test::testType().
|
inlinestaticinherited |
return true if the machine is a 64 bits machine
Referenced by EMM_VTK::getVTKType(), and CORE_Test::testType().
|
inlineinherited |
test if the clas T is an instance of this class
References null.
Referenced by MATH_ToeplitzTest::toeplitzTest().
test if the object is an instance of className
name | name of the class |
References CORE_Object::getIdentityString().
|
inlinestaticinherited |
get if the memory checking is used
References CORE_Object::getClassName(), CORE_Object::mIsMemoryTesting, and tString.
Referenced by main().
void EMM_MultiScaleCDGrid::meanValuesFromFineToCoarseGrid | ( | const tUIndex & | nCells, |
const tDimension & | dim, | ||
const tReal * | Mf, | ||
tReal * | Ml | ||
) | const |
compute the field in a corse field from its fine grid.
the values of the field is meaned in the common part of the both grids as follow:
The values outside the fine grid are set to 0 by defaut.
For each element of the fine grid (i,j,k), the corresponding element (I(i),J(j),K(k)) of the coarse grid is searched such that the center of the element (i,j,k) of the finest grid is inside the element (I,J,K) of the coarse grid.
The left boundary of the coarse grid is when the origin is at the center of the grid
The center of the cell i of the fine grid is when the origin is at the center of the grid
So, to search the cell of the coarse grid containing the center of the fine grid leads to . We conclude that
So than for all (i,j,k) such that I(i)=I, J(j)=J and K(k)=k
In the reverse way, we have where for or .
References EMM_MultiScaleGrid::getFineElementsNumberPerCoarseElement(), EMM_MultiScaleGrid::getPeriodicDirections(), EMM_MultiScaleGrid::getSegmentsNumber(), OMP_GET_THREAD_ID, OMP_GET_THREADS_NUMBER, OMP_PARALLEL_PRIVATE_SHARED_DEFAULT, tBoolean, tDimension, tInteger, tReal, tUCInt, tUIndex, and tUInteger.
Referenced by computeMagnetizationFieldAtNextLevel(), and New().
|
inlinestatic |
build a new instance of class
References EMM_MultiScaleCDGrid(), initialize(), meanValuesFromFineToCoarseGrid(), tBoolean, tDimension, tReal, tUIndex, and tUInteger.
Referenced by EMM_DemagnetizedPeriodicalTest::multiCDGridScaleTest(), and EMMG_ClassFactory::NewInstance().
|
inlinestaticinherited |
get the output
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().
|
staticinherited |
return the string representation of a pointer
obj | : oject to get the string pointer |
References tString.
Referenced by CORE_Object::CORE_Object(), CORE_Object::getIdentityString(), CORE_Object::getPointerAddress(), CORE_Object::is32Architecture(), and CORE_Object::~CORE_Object().
|
staticinherited |
print object in memory
f | : output to print the objects in memory |
References CORE_Object::getIdentityString(), CORE_Object::getSharedPointer(), CORE_Object::mIsMemoryTesting, CORE_Object::mObjects, and tInteger.
|
inlinestaticinherited |
print object in memory in the standart output
Referenced by CORE_Object::is32Architecture(), and main().
|
staticinherited |
reset the values in a block grid [iMin,iMax[x[jMin,jMax[x[kMin,kMax[ of dimension dim per point inside a grid of size [0,Nx[x[0,Ny[x[0,Nz[
[in] | dim | dimension of point |
[in] | Nx | : size of the grid in the x direction |
[in] | Ny | : size of the grid in the y direction |
[in] | Nz | : size of the grid in the z direction |
[in] | iMin | bounds if the block grid in [0,Nx[ |
[in] | iMax | bounds if the block grid in [0,Nx[ |
[in] | jMin | bounds if the block grid in [0,Ny[ |
[in] | jMax | bounds if the block grid in [0,Ny[ |
[in] | kMin | bounds if the block grid in [0,Nz[ |
[in] | kMax | bounds if the block grid in [0,Nz[ |
[in,out] | M | : field to reset values within the block grid |
M is set to 0 on all points inside the grid [iMin,iMax[x[jMin,jMax[x[kMin,kMax[
References null, OMP_PARALLEL_PRIVATE_SHARED_DEFAULT, tReal, tUIndex, and tUInteger.
Referenced by EMM_MultiScaleGrid::getZonalMagnetizationField(), resetValuesWithinCenteredZone(), and EMM_MultiScaleSDGrid::resetValuesWithinShiftZone().
|
inlinestaticinherited |
|
inlinestaticinherited |
tBoolean EMM_MultiScaleCDGrid::resetValuesWithinCenteredZone | ( | const tUIndex & | nCells, |
const tDimension & | dim, | ||
tReal * | Mz | ||
) | const |
References EMM_MultiScaleGrid::getSegmentsNumber(), EMM_MultiScaleGrid::resetBlockValues(), tInteger, and tUInteger.
Referenced by completeValuesOutsideFineGridByPeriodicity(), computeDemagnetizedExcitationFieldFromLevel(), and EMM_MultiScaleSDGrid::computeZonalCenteredDemagnetizedFieldFromLevel().
|
inlinestaticinherited |
set if the memory checking is used
v | : true to check memory |
Referenced by main().
|
inlinestaticinherited |
|
inlineprotectedinherited |
set this weak shared pointer called toDoAfterThis setting method
p | : shared pointer of the class This |
References CORE_Object::toDoAfterThisSetting().
|
inlinestaticinherited |
set the thread
thread | the shared pointer to the thread |
References null.
Referenced by EMM_Run::EMM_Run(), EMM_TensorsRun::EMM_TensorsRun(), and MATH_SolverRun::MATH_SolverRun().
|
inlineinherited |
setthe toeplitz associated matrix
toeplitz | the toeplitz matrix to set |
References EMM_MultiScaleGrid::computeLevelsNumber(), EMM_MultiScaleGrid::initialize(), tBoolean, tDimension, and tUInteger.
|
private |
|
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().
|
virtualinherited |
return the class information in a tString
Reimplemented from CORE_Object.
Reimplemented in EMMG_SLPeriodicMultiScale.
References CORE_Object::getIdentityString().
Referenced by EMM_MultiScaleGrid::getLevelComputationsNumber().
|
staticinherited |
|
staticinherited |
Referenced by EMM_MatterField::adimensionize(), EMM_MagnetostrictionOperator::adimensionize(), EMM_Matter::adimensionize(), EMM_CubicAnisotropyOperator::ComputeMagneticExcitation(), EMM_CubicAnisotropyOperator::computeMagneticExcitationField(), EMM_CubicAnisotropyOperator::computeMagneticExcitationFieldGradient(), EMM_CubicAnisotropyOperator::ComputeMagneticExcitationGradient(), EMM_Test::createMatters(), EMM_MatterField::getElasticTensorAdimensionizedParameter(), and EMM_MatterTest::testAdimensionize().
|
staticinherited |
Referenced by EMM_DisplacementFVM_VOGGROperator::computeGradAlmostNullUAtCellByOstrogradskiGreenIntegration(), EMM_DisplacementFVM_VTEGROperator::computeGradAlmostNullUAtCellByTaylorExpansionWithNeumannInterpolation(), EMM_DisplacementFVM_SSGROperator::computeGradAlmostNullUAtFaceByStokesIntegration(), EMM_DisplacementFVM_VOGGROperator::computeGradAlmostNullUAtNextCellByOstrogradskiGreenIntegration(), EMM_DisplacementFVM_VTEGROperator::computeGradUAtCellByTaylorExpansionWithNeumannInterpolation(), EMM_DisplacementFVM_VGROperator::computeGradUAtFace(), EMM_DisplacementFVM_SSGROperator::computeGradUAtFaceByStokesIntegration(), EMM_DisplacementFVM_STEGROperator::computeGradUAtFaceByTaylorExpansion(), EMM_DisplacementFVM_Interpolator::interpolateUAtEdge(), and EMM_DisplacementFVM_Interpolator::interpolateUAtVertices().
|
staticinherited |
|
staticinherited |
|
staticinherited |
Referenced by EMMG_SLSDXPeriodicMultiScale::computeMultiGridExcitationField(), EMMG_RealField::fitToSize(), EMM_MassMatrix::getElementVolume(), EMM_CanonicalMassMatrix::isSymmetric(), EMM_BlockMassMatrix::product(), EMM_CondensedMassMatrix::product(), EMM_RealField::setValue(), EMM_CanonicalMassMatrix::solve(), EMM_BlockMassMatrix::solve(), EMM_BlockMassMatrix::toString(), and EMMG_RealField::wedge().
|
staticinherited |