PPL Logo

femMeshModify Class Reference

The shadow array attached to a fem chunk to perform all communication during adaptivity. More...

#include <fem_mesh_modify.h>

Inheritance diagram for femMeshModify:

Inheritance graph
[legend]
Collaboration diagram for femMeshModify:

Collaboration graph
[legend]

Public Member Functions

 femMeshModify (femMeshModMsg *fm)
 femMeshModify (CkMigrateMessage *m)
 ~femMeshModify ()
intMsglockRemoteChunk (int2Msg *i2msg)
intMsgunlockRemoteChunk (int2Msg *i2msg)
intMsglockRemoteNode (int sharedIdx, int fromChk, int isGhost, int readLock)
intMsgunlockRemoteNode (int sharedIdx, int fromChk, int isGhost, int readLock)
void setFemMesh (FEMMeshMsg *fm)
 Part of the initialization phase, create all the new objects Populate all data structures, include all locks It also computes all the fixed nodes and populates a data structure with it.
int getNumChunks ()
int getIdx ()
FEM_MeshgetfmMesh ()
FEM_lockgetfmLock ()
FEM_lockNgetfmLockN (int nodeid)
FEM_MUtilgetfmUtil ()
FEM_AdaptgetfmAdapt ()
FEM_AdaptLgetfmAdaptL ()
FEM_Adapt_AlgsgetfmAdaptAlgs ()
FEM_InterpolategetfmInp ()
intMsgaddNodeRemote (addNodeMsg *fm)
void addSharedNodeRemote (sharedNodeMsg *fm)
void removeSharedNodeRemote (removeSharedNodeMsg *fm)
void addGhostElem (addGhostElemMsg *fm)
chunkListMsggetChunksSharingGhostNode (int2Msg *)
void addElementRemote (addElemMsg *fm)
void removeGhostElem (removeGhostElemMsg *fm)
void removeElementRemote (removeElemMsg *fm)
void removeGhostNode (int fromChk, int sharedIdx)
intMsgeatIntoElement (int fromChk, int sharedIdx)
intMsggetLockOwner (int fromChk, int sharedIdx)
boolMsgknowsAbtNode (int fromChk, int toChk, int sharedIdx)
void refine_flip_element_leb (int fromChk, int propElemT, int propNodeT, int newNodeT, int nbrOpNodeT, int nbrghost, double longEdgeLen)
void addToSharedList (int fromChk, int sharedIdx)
void updateNodeAttrs (int fromChk, int sharedIdx, double coordX, double coordY, int bound, bool isGhost)
void updateghostsend (verifyghostsendMsg *vmsg)
findgsMsgfindghostsend (int fromChk, int sharedIdx)
double2MsggetRemoteCoord (int fromChk, int ghostIdx)
intMsggetRemoteBound (int fromChk, int ghostIdx)
intMsggetIdxGhostSend (int fromChk, int idxshared, int toChk)
void updateIdxlList (int fromChk, int idxTrans, int transChk)
void removeIDXLRemote (int fromChk, int sharedIdx, int type)
void addTransIDXLRemote (int fromChk, int sharedIdx, int type)
void verifyIdxlList (int fromChk, int size, int type)
void idxllockRemote (int fromChk, int type)
void idxlunlockRemote (int fromChk, int type)
intMsghasLockRemoteNode (int sharedIdx, int fromChk, int isGhost)
void modifyLockAll (int fromChk, int sharedIdx)
boolMsgverifyLock (int fromChk, int sharedIdx, int isGhost)
void verifyghostsend (verifyghostsendMsg *vmsg)
boolMsgshouldLoseGhost (int fromChk, int sharedIdx, int toChk)
void addghostsendl (int fromChk, int sharedIdx, int toChk, int transIdx)
 The node index is the sharedIdx with 'fromChk' This local node index is then to be send as a ghost to 'toChk'.
void addghostsendl1 (int fromChk, int transChk, int transIdx)
 The node index is obtained as a the ghost received from 'transChk' at 'transIdx'.
void addghostsendr (int fromChk, int sharedIdx, int toChk, int transIdx)
 The node is the obtained on the ghost recv list from 'fromChk' at 'sharedIdx' index.
void addghostsendr1 (int fromChk, int transChk, int transIdx)
 The local node index is obtained on the shared list of 'transChk' at 'transIdx'.
boolMsgwillItLose (int fromChk, int sharedIdx)
void interpolateElemCopy (int fromChk, int sharedIdx1, int sharedIdx2)
 The two local elements indices are obtained from the ghost send list to 'fromChk' Data is copied from the first element to the second.
void cleanupIDXL (int fromChk, int sharedIdx)
void purgeElement (int fromChk, int sharedIdx)
elemDataMsgpackElemData (int fromChk, int sharedIdx)
 femMeshModify (femMeshModMsg *fm)
 constructor
 femMeshModify (CkMigrateMessage *m)
 constructor for migration
 ~femMeshModify ()
 destructor
void pup (PUP::er &p)
 Pup to transfer this object's data.
void ckJustMigrated (void)
 This function is overloaded, it is called on this object just after migration.
void setPointersAfterMigrate (FEM_Mesh *m)
 Set the mesh pointer after the migration.
void setFemMesh (FEMMeshMsg *fm)
 Initialize the mesh pointer for this chunk.
intMsglockRemoteChunk (int2Msg *i2msg)
 Deprecated: Try to lock this node on this chunk (the node index is local to this chunk).
intMsgunlockRemoteChunk (int2Msg *i2msg)
 Deprecated: Unlock the node on this chunk (the node index is local to this chunk).
intMsglockRemoteNode (int sharedIdx, int fromChk, int isGhost, int readLock)
 Try to lock this node on this chunk (receives a shared/ghost index).
intMsgunlockRemoteNode (int sharedIdx, int fromChk, int isGhost, int readLock)
 Unlock this node on this chunk (receives a shared/ghost index).
int getNumChunks ()
 Get number of chunks.
int getIdx ()
 Get the index of this chunk.
FEM_MeshgetfmMesh ()
 Get the pointer to the mesh object.
FEM_lockgetfmLock ()
 Deprecated: Get the pointer to the lock-chunk object.
FEM_lockN getfmLockN (int nodeid)
 Get the status of the lock for this node.
FEM_MUtilgetfmUtil ()
 Get the pointer to the utility object on this chunk.
FEM_AdaptgetfmAdapt ()
 Deprecated: Get the pointer to the primitive operation object.
FEM_AdaptLgetfmAdaptL ()
 Get the pointer to the object that encapsulates the primitive adaptive operations.
FEM_Adapt_AlgsgetfmAdaptAlgs ()
 Get the pointer to the object that encapsulates the adaptive algorithms.
FEM_InterpolategetfmInp ()
 Get the pointer to the interpolate object.
chunkListMsggetChunksSharingGhostNode (int2Msg *)
 Get the list of chunks that share this node.
intMsgaddNodeRemote (addNodeMsg *fm)
 Add a node on this chunk.
void addSharedNodeRemote (sharedNodeMsg *fm)
 Add a shared node on this chunk.
void removeSharedNodeRemote (removeSharedNodeMsg *fm)
 Remove a shared node on this chunk.
void removeGhostNode (int fromChk, int sharedIdx)
 Remove a ghost node on this chunk.
void addGhostElem (addGhostElemMsg *fm)
 Add a ghost element on this chunk.
intMsgaddElementRemote (addElemMsg *fm)
 Add a local element on this chunk.
void removeGhostElem (removeGhostElemMsg *fm)
 Remove a ghost element on this chunk.
void removeElementRemote (removeElemMsg *fm)
 Remove a local element on this chunk.
intMsgeatIntoElement (int fromChk, int sharedIdx)
 Acquire this element from 'fromChk'.
intMsggetLockOwner (int fromChk, int sharedIdx)
 Get the owner of the lock for this shared node.
boolMsgknowsAbtNode (int fromChk, int toChk, int sharedIdx)
 Does this chunk send this as a ghost to 'toChk'.
void refine_flip_element_leb (int fromChk, int propElemT, int propNodeT, int newNodeT, int nbrOpNodeT, int nbrghost, double longEdgeLen)
 propagate a flip operation across chunks
void addToSharedList (int fromChk, int sharedIdx)
 add this node to the shared idxl lists for 'fromChk'
void updateAttrs (updateAttrsMsg *umsg)
 update the attributes of the node with this data
void updateghostsend (verifyghostsendMsg *vmsg)
 get rid of unnecessary node sends to some chunks for a node
findgsMsgfindghostsend (int fromChk, int sharedIdx)
 find the set of chunks where this node should be sent as a ghost
intMsggetIdxGhostSend (int fromChk, int idxshared, int toChk)
 return the shared index on the ghost send list for chunk 'toChk'
double2MsggetRemoteCoord (int fromChk, int ghostIdx)
 Get the coordinates for this node.
intMsggetRemoteBound (int fromChk, int ghostIdx)
 Get the boundary variable for this node.
void updateIdxlList (int fromChk, int idxTrans, int transChk)
 find the ghost received from 'transChk' at index 'idxTrans' and add this ghost as received from 'fromChk'
void removeIDXLRemote (int fromChk, int sharedIdx, int type)
 remove this node from this idxl list of chunk 'fromChk'
void addTransIDXLRemote (int fromChk, int sharedIdx, int type)
 find the shared node with 'transChk' at index 'sharedIdx' and send this as a ghost to 'fromChk'
void verifyIdxlList (int fromChk, int size, int type)
 verify that the size of the idxl list is same on this chunk and 'fromChk'
void idxllockRemote (int fromChk, int type)
 lock the idxl list for 'fromChk' on this chunk (blocking call)
void idxlunlockRemote (int fromChk, int type)
 unlock the idxl list for 'fromChk' on this chunk
intMsghasLockRemoteNode (int sharedIdx, int fromChk, int isGhost)
 Return the lock owner for this node if there is one (return -1 otherwise).
void modifyLockAll (int fromChk, int sharedIdx)
 Reassign lock on this node.
boolMsgverifyLock (int fromChk, int sharedIdx, int isGhost)
 verify that this lock is locked on the smallest chunk
void verifyghostsend (verifyghostsendMsg *vmsg)
 Verify that the number of chunks I get this node as a ghost is same as the number of chunnks that this node is shared on.
boolMsgshouldLoseGhost (int fromChk, int sharedIdx, int toChk)
 Should this node be send as a ghost from this chunk to 'fromChk' (if no, return true).
void addghostsendl (int fromChk, int sharedIdx, int toChk, int transIdx)
 If this node is not in the ghostSend list add it on the idxl lists on both chunks.
void addghostsendl1 (int fromChk, int transChk, int transIdx)
 add this node to the idxl ghost recv list of this chunk
void addghostsendr (int fromChk, int sharedIdx, int toChk, int transIdx)
 Add the node as a ghostRecv from 'toChk'.
void addghostsendr1 (int fromChk, int transChk, int transIdx)
 Add this node on the ghostSend list with 'fromChk'.
boolMsgwillItLose (int fromChk, int sharedIdx)
 Will it lose this element as a ghost send to 'fromChk'.
void interpolateElemCopy (int fromChk, int sharedIdx1, int sharedIdx2)
 The element data is copied from the first element to the second.
void cleanupIDXL (int fromChk, int sharedIdx)
 Remove this ghost element from the ghostRecv idxl list and delete the ghost node.
void purgeElement (int fromChk, int sharedIdx)
 Purge this element on this chunk.
entDataMsgpackEntData (int fromChk, int sharedIdx, bool isnode=false, int elemType=0)
 Pack the data from this element/node and return it.
boolMsgisFixedNodeRemote (int fromChk, int sharedIdx)
 Is this node a fixed node on this chunk.
void finish1 (void)
void finish (void)

Data Fields

int numChunks
 Total number of chunks.
int idx
 Index of this chunk (the chunk this is attached to).
FEM_MeshfmMesh
FEM_lockfmLock
CkVec< FEM_lockN * > fmLockN
CkVec< boolfmIdxlLock
CkVec< intfmfixedNodes
FEM_MUtilfmUtil
FEM_InterpolatefmInp
FEM_AdaptfmAdapt
FEM_AdaptLfmAdaptL
FEM_Adapt_AlgsfmAdaptAlgs
TCharmtc
 The Tcharm pointer to set it even outside the thread..
CProxy_TCharm tproxy
 The proxy for the current Tcharm object.
FEM_MeshfmMesh
 cross-pointer to the fem mesh on this chunk
FEM_lockfmLock
 Deprecated: used to lock this chunk.
CkVec< FEM_lockNfmLockN
 Set of locks for all nodes on this chunk.
CkVec< boolfmIdxlLock
 Set of locks for all idxl lists.
CkVec< intfmfixedNodes
 The list of fixed nodes.
FEM_MUtilfmUtil
 Pointer to the utility object (performs most adaptive utilities).
FEM_InterpolatefmInp
 Pointer to the object that performs the interpolations.
FEM_AdaptfmAdapt
 Deprecated: Pointer to the FEM_Adapt object.
FEM_AdaptLfmAdaptL
 Pointer to the object that performs the primitive adaptive operations.
FEM_Adapt_AlgsfmAdaptAlgs
 Pointer to the object that performs the adaptive algorithms.

Friends

class FEM_lock
class FEM_MUtil
class FEM_Mesh
class FEM_Interpolate
class FEM_Adapt
class FEM_AdaptL
class FEM_Adapt_Algs

Detailed Description

The shadow array attached to a fem chunk to perform all communication during adaptivity.

This data structure maintains some adaptivity information, along with locks for nodes and idxl lists. It handles all the remote function calls and uses FEM_MUtil to perform most of the operations.

Definition at line 313 of file fem_mesh_modify.h.


Constructor & Destructor Documentation

femMeshModify::femMeshModify ( femMeshModMsg fm  ) 

constructor

femMeshModify::femMeshModify ( CkMigrateMessage m  ) 

constructor for migration

femMeshModify::~femMeshModify (  ) 

destructor


Member Function Documentation

int femMeshModify::getNumChunks (  )  [inline]

Definition at line 347 of file fem_mesh_modify.h.

References numChunks.

int femMeshModify::getIdx (  )  [inline]

FEM_Mesh* femMeshModify::getfmMesh (  )  [inline]

Definition at line 349 of file fem_mesh_modify.h.

References fmMesh.

FEM_lock* femMeshModify::getfmLock (  )  [inline]

Definition at line 350 of file fem_mesh_modify.h.

References fmLock.

Referenced by FEM_Modify_Lock(), and FEM_Modify_Unlock().

Here is the caller graph for this function:

FEM_lockN* femMeshModify::getfmLockN ( int  nodeid  )  [inline]

Definition at line 351 of file fem_mesh_modify.h.

References fmLockN, and CkVec< T >::size().

Referenced by FEM_Modify_correctLockN(), FEM_Modify_LockAll(), FEM_Modify_LockN(), FEM_Modify_LockUpdate(), FEM_Modify_UnlockN(), and FEM_MUtil::getLockOwner().

Here is the call graph for this function:

Here is the caller graph for this function:

FEM_MUtil* femMeshModify::getfmUtil (  )  [inline]

FEM_Adapt* femMeshModify::getfmAdapt (  )  [inline]

Definition at line 361 of file fem_mesh_modify.h.

References fmAdapt.

FEM_AdaptL* femMeshModify::getfmAdaptL (  )  [inline]

Definition at line 362 of file fem_mesh_modify.h.

References fmAdaptL.

FEM_Adapt_Algs* femMeshModify::getfmAdaptAlgs (  )  [inline]

FEM_Interpolate* femMeshModify::getfmInp (  )  [inline]

Definition at line 364 of file fem_mesh_modify.h.

References fmInp.

Referenced by FEM_MUtil::copyElemData(), FEM_AdaptL::edge_contraction_help(), FEM_add_node(), FEM_MUtil::Replace_node_local(), and FEM_MUtil::splitEntityRemote().

Here is the caller graph for this function:

void femMeshModify::updateNodeAttrs ( int  fromChk,
int  sharedIdx,
double  coordX,
double  coordY,
int  bound,
bool  isGhost 
)

elemDataMsg * femMeshModify::packElemData ( int  fromChk,
int  sharedIdx 
)

void femMeshModify::setFemMesh ( FEMMeshMsg fm  ) 

Initialize the mesh pointer for this chunk.

intMsg* femMeshModify::lockRemoteChunk ( int2Msg i2msg  ) 

Deprecated: Try to lock this node on this chunk (the node index is local to this chunk).

intMsg* femMeshModify::unlockRemoteChunk ( int2Msg i2msg  ) 

Deprecated: Unlock the node on this chunk (the node index is local to this chunk).

intMsg* femMeshModify::lockRemoteNode ( int  sharedIdx,
int  fromChk,
int  isGhost,
int  readLock 
)

Try to lock this node on this chunk (receives a shared/ghost index).

intMsg* femMeshModify::unlockRemoteNode ( int  sharedIdx,
int  fromChk,
int  isGhost,
int  readLock 
)

Unlock this node on this chunk (receives a shared/ghost index).

int femMeshModify::getNumChunks (  )  [inline]

Get number of chunks.

Definition at line 432 of file ParFUM_Mesh_Modify.h.

References numChunks.

int femMeshModify::getIdx (  )  [inline]

Get the index of this chunk.

Definition at line 434 of file ParFUM_Mesh_Modify.h.

References idx.

FEM_Mesh* femMeshModify::getfmMesh (  )  [inline]

Get the pointer to the mesh object.

Definition at line 436 of file ParFUM_Mesh_Modify.h.

References fmMesh.

FEM_lock* femMeshModify::getfmLock (  )  [inline]

Deprecated: Get the pointer to the lock-chunk object.

Definition at line 438 of file ParFUM_Mesh_Modify.h.

References fmLock.

FEM_lockN femMeshModify::getfmLockN ( int  nodeid  )  [inline]

Get the status of the lock for this node.

Definition at line 440 of file ParFUM_Mesh_Modify.h.

References fmLockN, and CkVec< T >::size().

Here is the call graph for this function:

FEM_MUtil* femMeshModify::getfmUtil (  )  [inline]

Get the pointer to the utility object on this chunk.

Definition at line 450 of file ParFUM_Mesh_Modify.h.

References fmUtil.

FEM_Adapt* femMeshModify::getfmAdapt (  )  [inline]

Deprecated: Get the pointer to the primitive operation object.

Definition at line 452 of file ParFUM_Mesh_Modify.h.

References fmAdapt.

FEM_AdaptL* femMeshModify::getfmAdaptL (  )  [inline]

Get the pointer to the object that encapsulates the primitive adaptive operations.

Definition at line 454 of file ParFUM_Mesh_Modify.h.

References fmAdaptL.

FEM_Adapt_Algs* femMeshModify::getfmAdaptAlgs (  )  [inline]

Get the pointer to the object that encapsulates the adaptive algorithms.

Definition at line 456 of file ParFUM_Mesh_Modify.h.

References fmAdaptAlgs.

FEM_Interpolate* femMeshModify::getfmInp (  )  [inline]

Get the pointer to the interpolate object.

Definition at line 458 of file ParFUM_Mesh_Modify.h.

References fmInp.

chunkListMsg* femMeshModify::getChunksSharingGhostNode ( int2Msg  ) 

Get the list of chunks that share this node.

intMsg* femMeshModify::addNodeRemote ( addNodeMsg fm  ) 

Add a node on this chunk.

void femMeshModify::addSharedNodeRemote ( sharedNodeMsg fm  ) 

Add a shared node on this chunk.

void femMeshModify::removeSharedNodeRemote ( removeSharedNodeMsg fm  ) 

Remove a shared node on this chunk.

void femMeshModify::removeGhostNode ( int  fromChk,
int  sharedIdx 
)

Remove a ghost node on this chunk.

void femMeshModify::addGhostElem ( addGhostElemMsg fm  ) 

Add a ghost element on this chunk.

intMsg* femMeshModify::addElementRemote ( addElemMsg fm  ) 

Add a local element on this chunk.

void femMeshModify::removeGhostElem ( removeGhostElemMsg fm  ) 

Remove a ghost element on this chunk.

void femMeshModify::removeElementRemote ( removeElemMsg fm  ) 

Remove a local element on this chunk.

intMsg* femMeshModify::eatIntoElement ( int  fromChk,
int  sharedIdx 
)

Acquire this element from 'fromChk'.

intMsg* femMeshModify::getLockOwner ( int  fromChk,
int  sharedIdx 
)

Get the owner of the lock for this shared node.

boolMsg* femMeshModify::knowsAbtNode ( int  fromChk,
int  toChk,
int  sharedIdx 
)

Does this chunk send this as a ghost to 'toChk'.

void femMeshModify::refine_flip_element_leb ( int  fromChk,
int  propElemT,
int  propNodeT,
int  newNodeT,
int  nbrOpNodeT,
int  nbrghost,
double  longEdgeLen 
)

propagate a flip operation across chunks

void femMeshModify::addToSharedList ( int  fromChk,
int  sharedIdx 
)

add this node to the shared idxl lists for 'fromChk'

void femMeshModify::updateghostsend ( verifyghostsendMsg vmsg  ) 

get rid of unnecessary node sends to some chunks for a node

findgsMsg* femMeshModify::findghostsend ( int  fromChk,
int  sharedIdx 
)

find the set of chunks where this node should be sent as a ghost

intMsg* femMeshModify::getIdxGhostSend ( int  fromChk,
int  idxshared,
int  toChk 
)

return the shared index on the ghost send list for chunk 'toChk'

double2Msg* femMeshModify::getRemoteCoord ( int  fromChk,
int  ghostIdx 
)

Get the coordinates for this node.

intMsg* femMeshModify::getRemoteBound ( int  fromChk,
int  ghostIdx 
)

Get the boundary variable for this node.

void femMeshModify::updateIdxlList ( int  fromChk,
int  idxTrans,
int  transChk 
)

find the ghost received from 'transChk' at index 'idxTrans' and add this ghost as received from 'fromChk'

void femMeshModify::removeIDXLRemote ( int  fromChk,
int  sharedIdx,
int  type 
)

remove this node from this idxl list of chunk 'fromChk'

void femMeshModify::addTransIDXLRemote ( int  fromChk,
int  sharedIdx,
int  type 
)

find the shared node with 'transChk' at index 'sharedIdx' and send this as a ghost to 'fromChk'

void femMeshModify::verifyIdxlList ( int  fromChk,
int  size,
int  type 
)

verify that the size of the idxl list is same on this chunk and 'fromChk'

void femMeshModify::idxllockRemote ( int  fromChk,
int  type 
)

lock the idxl list for 'fromChk' on this chunk (blocking call)

void femMeshModify::idxlunlockRemote ( int  fromChk,
int  type 
)

unlock the idxl list for 'fromChk' on this chunk

intMsg* femMeshModify::hasLockRemoteNode ( int  sharedIdx,
int  fromChk,
int  isGhost 
)

Return the lock owner for this node if there is one (return -1 otherwise).

void femMeshModify::modifyLockAll ( int  fromChk,
int  sharedIdx 
)

Reassign lock on this node.

boolMsg* femMeshModify::verifyLock ( int  fromChk,
int  sharedIdx,
int  isGhost 
)

verify that this lock is locked on the smallest chunk

void femMeshModify::verifyghostsend ( verifyghostsendMsg vmsg  ) 

Verify that the number of chunks I get this node as a ghost is same as the number of chunnks that this node is shared on.

boolMsg* femMeshModify::shouldLoseGhost ( int  fromChk,
int  sharedIdx,
int  toChk 
)

Should this node be send as a ghost from this chunk to 'fromChk' (if no, return true).

void femMeshModify::addghostsendl ( int  fromChk,
int  sharedIdx,
int  toChk,
int  transIdx 
)

If this node is not in the ghostSend list add it on the idxl lists on both chunks.

void femMeshModify::addghostsendl1 ( int  fromChk,
int  transChk,
int  transIdx 
)

add this node to the idxl ghost recv list of this chunk

void femMeshModify::addghostsendr ( int  fromChk,
int  sharedIdx,
int  toChk,
int  transIdx 
)

Add the node as a ghostRecv from 'toChk'.

void femMeshModify::addghostsendr1 ( int  fromChk,
int  transChk,
int  transIdx 
)

Add this node on the ghostSend list with 'fromChk'.

boolMsg* femMeshModify::willItLose ( int  fromChk,
int  sharedIdx 
)

Will it lose this element as a ghost send to 'fromChk'.

void femMeshModify::interpolateElemCopy ( int  fromChk,
int  sharedIdx1,
int  sharedIdx2 
)

The element data is copied from the first element to the second.

void femMeshModify::cleanupIDXL ( int  fromChk,
int  sharedIdx 
)

Remove this ghost element from the ghostRecv idxl list and delete the ghost node.

void femMeshModify::purgeElement ( int  fromChk,
int  sharedIdx 
)

Purge this element on this chunk.


Friends And Related Function Documentation

FEM_lock [friend]

Definition at line 314 of file fem_mesh_modify.h.

Referenced by femMeshModify().

FEM_MUtil [friend]

Definition at line 315 of file fem_mesh_modify.h.

Referenced by femMeshModify().

FEM_Mesh [friend]

Definition at line 316 of file fem_mesh_modify.h.

FEM_Interpolate [friend]

Definition at line 317 of file fem_mesh_modify.h.

Referenced by setFemMesh().

FEM_Adapt [friend]

Definition at line 318 of file fem_mesh_modify.h.

Referenced by setFemMesh().

FEM_AdaptL [friend]

Definition at line 319 of file fem_mesh_modify.h.

Referenced by setFemMesh().

FEM_Adapt_Algs [friend]

Definition at line 320 of file fem_mesh_modify.h.

Referenced by setFemMesh().


Field Documentation

Total number of chunks.

Definition at line 323 of file fem_mesh_modify.h.

Referenced by femMeshModify(), getNumChunks(), pup(), FEM_MUtil::residualLockTest(), setFemMesh(), and FEM_MUtil::unlockAll().

Definition at line 332 of file fem_mesh_modify.h.

Referenced by femMeshModify(), getfmInp(), pup(), setFemMesh(), and setPointersAfterMigrate().

The Tcharm pointer to set it even outside the thread..

Definition at line 376 of file ParFUM_Mesh_Modify.h.

Referenced by ckJustMigrated(), isFixedNodeRemote(), packEntData(), and updateAttrs().

CProxy_TCharm femMeshModify::tproxy

The proxy for the current Tcharm object.

Definition at line 378 of file ParFUM_Mesh_Modify.h.

Referenced by ckJustMigrated(), and pup().

cross-pointer to the fem mesh on this chunk

Definition at line 380 of file ParFUM_Mesh_Modify.h.

Deprecated: used to lock this chunk.

Definition at line 382 of file ParFUM_Mesh_Modify.h.

Set of locks for all nodes on this chunk.

Definition at line 384 of file ParFUM_Mesh_Modify.h.

Set of locks for all idxl lists.

each chunk can have numChunks*5 idxl lists, but numChunks locks.

Definition at line 388 of file ParFUM_Mesh_Modify.h.

The list of fixed nodes.

this list is populated initially, and never changes (defines shape)

Definition at line 392 of file ParFUM_Mesh_Modify.h.

Pointer to the utility object (performs most adaptive utilities).

Definition at line 394 of file ParFUM_Mesh_Modify.h.

Pointer to the object that performs the interpolations.

Definition at line 396 of file ParFUM_Mesh_Modify.h.

Deprecated: Pointer to the FEM_Adapt object.

Definition at line 398 of file ParFUM_Mesh_Modify.h.

Pointer to the object that performs the primitive adaptive operations.

Definition at line 400 of file ParFUM_Mesh_Modify.h.

Pointer to the object that performs the adaptive algorithms.

Definition at line 402 of file ParFUM_Mesh_Modify.h.


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

Generated on Mon Sep 21 08:24:58 2020 for Charm++ by  doxygen 1.5.5