PPL Logo

libs/ck-libs/fem/fem_mesh_modify.C File Reference

Go to the source code of this file.

Functions

CLINKAGE int FEM_add_node (int mesh, int *adjacent_nodes, int num_adjacent_nodes, int *chunks, int numChunks, int forceShared, int upcall)
CLINKAGE void FEM_remove_node (int mesh, int node)
CLINKAGE int FEM_remove_element (int mesh, int element, int elem_type, int permanent)
CLINKAGE int FEM_purge_element (int mesh, int element, int elem_type)
CLINKAGE int FEM_add_element (int mesh, int *conn, int conn_size, int elem_type, int chunkNo)
CLINKAGE int FEM_Modify_Lock (int mesh, int *affectedNodes, int numAffectedNodes, int *affectedElts, int numAffectedElts, int elemtype)
CLINKAGE int FEM_Modify_Unlock (int mesh)
CLINKAGE int FEM_Modify_LockN (int mesh, int nodeId, int readLock)
CLINKAGE int FEM_Modify_UnlockN (int mesh, int nodeId, int readLock)
void FEM_Mesh_dataP (FEM_Mesh *fem_mesh, int entity, int attr, void *data, int firstItem, int length, int datatype, int width)
 Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.
void FEM_Mesh_data_layoutP (FEM_Mesh *fem_mesh, int entity, int attr, void *data, int firstItem, int length, IDXL_Layout_t layout)
 Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.
void FEM_Mesh_data_layoutP (FEM_Mesh *m, int entity, int attr, void *data, int firstItem, int length, const IDXL_Layout &layout)
 Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.
int is_shared (FEM_Mesh *m, int node)
CLINKAGE void FEM_Print_Mesh_Summary (int mesh)
CLINKAGE void FEM_Print_n2n (int mesh, int nodeid)
CLINKAGE void FEM_Print_n2e (int mesh, int eid)
CLINKAGE void FEM_Print_e2n (int mesh, int eid)
CLINKAGE void FEM_Print_e2e (int mesh, int eid)
int FEM_add_node_local (FEM_Mesh *m, int addGhost)
int FEM_add_node (FEM_Mesh *m, int *adjacentNodes, int numAdjacentNodes, int *chunks, int numChunks, int forceShared, int upcall)
void FEM_add_shared_node_remote (FEM_Mesh *m, int chk, int nBetween, int *between)
void FEM_remove_node_local (FEM_Mesh *m, int node)
 Get rid of idxl entries for this node and clear adjacencies, invalidate node.
void FEM_remove_node (FEM_Mesh *m, int node)
 Remove a node on this mesh.
void FEM_remove_element_local (FEM_Mesh *m, int element, int etype)
 Clear up the adjacencies.
int FEM_remove_element (FEM_Mesh *m, int elementid, int elemtype, int permanent)
void FEM_remove_element_remote (FEM_Mesh *m, int element, int elemtype)
int FEM_purge_element (FEM_Mesh *m, int elementid, int elemtype)
 Purge the element from this mesh (invalidate entry).
void update_new_element_e2e (FEM_Mesh *m, int newEl, int elemType)
 Regenerate the e2e connectivity for the given element.
int FEM_add_element_local (FEM_Mesh *m, const int *conn, int connSize, int elemType, int addGhost)
int FEM_add_element (FEM_Mesh *m, int *conn, int connSize, int elemType, int chunkNo)
 Add an element on this mesh with this connectivity.
int FEM_add_element_remote ()
int FEM_Modify_Lock (FEM_Mesh *m, int *affectedNodes, int numAffectedNodes, int *affectedElts, int numAffectedElts, int elemtype)
 Deprecated: locks all chunks for the nodes and elements specified.
int FEM_Modify_Unlock (FEM_Mesh *m)
 Deprecated: Unlock all chunks that have been locked by this mesh.
int FEM_Modify_LockN (FEM_Mesh *m, int nodeId, int readlock)
 Lock this node on this mesh with a read/write lock.
int FEM_Modify_UnlockN (FEM_Mesh *m, int nodeId, int readlock)
 Lock the read/write lock for this node on this mesh.
void FEM_Modify_LockAll (FEM_Mesh *m, int nodeId, bool lockall)
 Reassign the lock on a node when a chunk is losing a node.
void FEM_Modify_LockUpdate (FEM_Mesh *m, int nodeId, bool lockall)
 Update the lock on this node (by locking the newly formed node: Deprecated.
void FEM_Modify_correctLockN (FEM_Mesh *m, int nodeId)
 For the newly acquired node, correct the lock by removing superfluous locks: Deprecated.
CLINKAGE void FEM_REF_INIT (int mesh, int dim)
void FEM_Ghost_Essential_attributes (FEM_Mesh *m, int coord_attr, int bc_attr, int nodeid)
 Copy the essential attributes for this ghost node from remote chunks.

Variables

CProxy_femMeshModify meshMod


Function Documentation

CLINKAGE int FEM_add_node ( int  mesh,
int adjacent_nodes,
int  num_adjacent_nodes,
int chunks,
int  numChunks,
int  forceShared,
int  upcall 
)

Definition at line 17 of file fem_mesh_modify.C.

References FEM_add_node().

Referenced by femMeshModify::addNodeRemote(), FEM_Adapt::edge_bisect_help(), FEM_add_node(), and FEM_Adapt::vertex_split_help().

Here is the call graph for this function:

Here is the caller graph for this function:

CLINKAGE void FEM_remove_node ( int  mesh,
int  node 
)

Definition at line 20 of file fem_mesh_modify.C.

References FEM_remove_node().

Here is the call graph for this function:

CLINKAGE int FEM_remove_element ( int  mesh,
int  element,
int  elem_type,
int  permanent 
)

Definition at line 23 of file fem_mesh_modify.C.

References FEM_remove_element().

Here is the call graph for this function:

CLINKAGE int FEM_purge_element ( int  mesh,
int  element,
int  elem_type 
)

Definition at line 26 of file fem_mesh_modify.C.

References FEM_purge_element().

Here is the call graph for this function:

CLINKAGE int FEM_add_element ( int  mesh,
int conn,
int  conn_size,
int  elem_type,
int  chunkNo 
)

Definition at line 29 of file fem_mesh_modify.C.

References FEM_add_element().

Here is the call graph for this function:

CLINKAGE int FEM_Modify_Lock ( int  mesh,
int affectedNodes,
int  numAffectedNodes,
int affectedElts,
int  numAffectedElts,
int  elemtype 
)

Definition at line 32 of file fem_mesh_modify.C.

References FEM_Modify_Lock().

Here is the call graph for this function:

CLINKAGE int FEM_Modify_Unlock ( int  mesh  ) 

Definition at line 35 of file fem_mesh_modify.C.

References FEM_Modify_Unlock().

Here is the call graph for this function:

CLINKAGE int FEM_Modify_LockN ( int  mesh,
int  nodeId,
int  readLock 
)

Definition at line 38 of file fem_mesh_modify.C.

References FEM_Modify_LockN().

Here is the call graph for this function:

CLINKAGE int FEM_Modify_UnlockN ( int  mesh,
int  nodeId,
int  readLock 
)

Definition at line 41 of file fem_mesh_modify.C.

References FEM_Modify_UnlockN().

Here is the call graph for this function:

void FEM_Mesh_dataP ( FEM_Mesh fem_mesh,
int  entity,
int  attr,
void *  data,
int  firstItem,
int  length,
int  datatype,
int  width 
)

Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.

Definition at line 46 of file fem_mesh_modify.C.

Referenced by FEM_AdaptL::edge_contraction_help(), FEM_Interpolate::FEM_InterpolateCopyAttributes(), FEM_Interpolate::FEM_InterpolateNodeOnEdge(), FEM_MUtil::FEM_Print_coords(), FEM_Adapt_Algs::getCoord(), femMeshModify::getRemoteBound(), femMeshModify::getRemoteCoord(), and FEM_Adapt::isCorner().

Here is the caller graph for this function:

void FEM_Mesh_data_layoutP ( FEM_Mesh fem_mesh,
int  entity,
int  attr,
void *  data,
int  firstItem,
int  length,
IDXL_Layout_t  layout 
)

Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.

Definition at line 51 of file fem_mesh_modify.C.

Referenced by FEM_Mesh_data_layoutP(), and FEM_Mesh_dataP().

Here is the caller graph for this function:

void FEM_Mesh_data_layoutP ( FEM_Mesh m,
int  entity,
int  attr,
void *  data,
int  firstItem,
int  length,
const IDXL_Layout layout 
)

Get the data for 'length' indices from 'fem_mesh' for the 'attr' of 'entity' starting at index 'firstItem'.

Definition at line 57 of file fem_mesh_modify.C.

int is_shared ( FEM_Mesh m,
int  node 
) [inline]

Definition at line 71 of file fem_mesh_modify.C.

References FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and FEM_MUtil::isShared().

Referenced by FEM_add_element(), FEM_add_node(), FEM_Modify_correctLockN(), FEM_Modify_LockN(), FEM_Modify_UnlockN(), and FEM_remove_node().

Here is the call graph for this function:

Here is the caller graph for this function:

CLINKAGE void FEM_Print_Mesh_Summary ( int  mesh  ) 

CLINKAGE void FEM_Print_n2n ( int  mesh,
int  nodeid 
)

Definition at line 99 of file fem_mesh_modify.C.

References FEM_MUtil::FEM_Print_n2n(), FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and PUP::m.

Here is the call graph for this function:

CLINKAGE void FEM_Print_n2e ( int  mesh,
int  eid 
)

Definition at line 104 of file fem_mesh_modify.C.

References FEM_MUtil::FEM_Print_n2e(), FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and PUP::m.

Here is the call graph for this function:

CLINKAGE void FEM_Print_e2n ( int  mesh,
int  eid 
)

Definition at line 111 of file fem_mesh_modify.C.

References FEM_MUtil::FEM_Print_e2n(), FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and PUP::m.

Here is the call graph for this function:

CLINKAGE void FEM_Print_e2e ( int  mesh,
int  eid 
)

Definition at line 116 of file fem_mesh_modify.C.

References FEM_MUtil::FEM_Print_e2e(), FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and PUP::m.

Here is the call graph for this function:

int FEM_add_node_local ( FEM_Mesh m,
int  addGhost 
)

int FEM_add_node ( FEM_Mesh m,
int adjacentNodes,
int  numAdjacentNodes,
int chunks,
int  numChunks,
int  forceShared,
int  upcall 
)

void FEM_add_shared_node_remote ( FEM_Mesh m,
int  chk,
int  nBetween,
int between 
)

Definition at line 224 of file fem_mesh_modify.C.

References CmiMemoryCheck(), FEM_add_node_local(), FEM_Mesh::getfmMM(), femMeshModify::getfmUtil(), and FEM_MUtil::splitEntityRemote().

Referenced by femMeshModify::addSharedNodeRemote().

Here is the call graph for this function:

Here is the caller graph for this function:

void FEM_remove_node_local ( FEM_Mesh m,
int  node 
)

Get rid of idxl entries for this node and clear adjacencies, invalidate node.

Definition at line 242 of file fem_mesh_modify.C.

Referenced by FEM_add_element(), FEM_remove_element(), FEM_remove_node(), FEM_MUtil::removeGhostElementRemote(), FEM_MUtil::removeNodeAll(), and FEM_MUtil::removeNodeRemote().

Here is the caller graph for this function:

void FEM_remove_node ( FEM_Mesh m,
int  node 
)

Remove a node on this mesh.

Definition at line 328 of file fem_mesh_modify.C.

void FEM_remove_element_local ( FEM_Mesh m,
int  element,
int  etype 
)

Clear up the adjacencies.

Definition at line 373 of file fem_mesh_modify.C.

Referenced by FEM_remove_element(), and FEM_MUtil::removeGhostElementRemote().

Here is the caller graph for this function:

int FEM_remove_element ( FEM_Mesh m,
int  elementid,
int  elemtype,
int  permanent 
)

void FEM_remove_element_remote ( FEM_Mesh m,
int  element,
int  elemtype 
)

Definition at line 816 of file fem_mesh_modify.C.

int FEM_purge_element ( FEM_Mesh m,
int  elementid,
int  elemtype 
)

Purge the element from this mesh (invalidate entry).

Definition at line 820 of file fem_mesh_modify.C.

int FEM_add_element_local ( FEM_Mesh m,
const int conn,
int  connSize,
int  elemType,
int  addGhost 
)

Definition at line 984 of file fem_mesh_modify.C.

References CmiMemoryCheck(), FEM_Mesh::e2e_getAll(), FEM_Mesh::e2e_removeAll(), FEM_Mesh::elem, FEM_Mesh::n2e_add(), FEM_Mesh::n2n_add(), FEM_Mesh::n2n_exists(), and update_new_element_e2e().

Referenced by FEM_MUtil::addGhostElementRemote(), and FEM_add_element().

Here is the call graph for this function:

Here is the caller graph for this function:

int FEM_add_element ( FEM_Mesh m,
int conn,
int  connSize,
int  elemType,
int  chunkNo 
)

Add an element on this mesh with this connectivity.

Definition at line 1023 of file fem_mesh_modify.C.

int FEM_add_element_remote (  ) 

Definition at line 1391 of file fem_mesh_modify.C.

int FEM_Modify_Lock ( FEM_Mesh m,
int affectedNodes,
int  numAffectedNodes,
int affectedElts,
int  numAffectedElts,
int  elemtype 
)

Deprecated: locks all chunks for the nodes and elements specified.

Definition at line 1403 of file fem_mesh_modify.C.

int FEM_Modify_Unlock ( FEM_Mesh m  ) 

Deprecated: Unlock all chunks that have been locked by this mesh.

Definition at line 1407 of file fem_mesh_modify.C.

int FEM_Modify_LockN ( FEM_Mesh m,
int  nodeId,
int  readlock 
)

Lock this node on this mesh with a read/write lock.

Definition at line 1411 of file fem_mesh_modify.C.

int FEM_Modify_UnlockN ( FEM_Mesh m,
int  nodeId,
int  readlock 
)

Lock the read/write lock for this node on this mesh.

Definition at line 1508 of file fem_mesh_modify.C.

void FEM_Modify_LockAll ( FEM_Mesh m,
int  nodeId,
bool  lockall 
)

Reassign the lock on a node when a chunk is losing a node.

Definition at line 1581 of file fem_mesh_modify.C.

Referenced by FEM_remove_element(), and femMeshModify::modifyLockAll().

Here is the caller graph for this function:

void FEM_Modify_LockUpdate ( FEM_Mesh m,
int  nodeId,
bool  lockall 
)

Update the lock on this node (by locking the newly formed node: Deprecated.

Definition at line 1616 of file fem_mesh_modify.C.

Referenced by FEM_MUtil::eatIntoElement(), and FEM_add_element().

Here is the caller graph for this function:

void FEM_Modify_correctLockN ( FEM_Mesh m,
int  nodeId 
)

For the newly acquired node, correct the lock by removing superfluous locks: Deprecated.

Definition at line 1669 of file fem_mesh_modify.C.

CLINKAGE void FEM_REF_INIT ( int  mesh,
int  dim 
)

Definition at line 1756 of file fem_mesh_modify.C.

References CkArrayOptions::bindTo(), CmiMemoryCheck(), comm, TCharm::get(), TCharm::getProxy(), PUP::m, meshMod, MPI_Bcast, MPI_Comm_rank, msg, and size.

Referenced by FEM_ADAPT_Init().

Here is the call graph for this function:

Here is the caller graph for this function:

void FEM_Ghost_Essential_attributes ( FEM_Mesh m,
int  coord_attr,
int  bc_attr,
int  nodeid 
)

Copy the essential attributes for this ghost node from remote chunks.

Definition at line 1794 of file fem_mesh_modify.C.

Referenced by FEM_MUtil::addGhostElementRemote().

Here is the caller graph for this function:


Generated on Mon Sep 21 08:07:20 2020 for Charm++ by  doxygen 1.5.5