Go to the source code of this file.
Namespaces | |
namespace | std |
Data Structures | |
class | FEM_Comm_Holder |
We want the FEM_Comm/IDXL_Side's to be accessible to *both* FEM routines (via these data structures) and IDXL routines (via an idxl->addStatic registration). More... | |
class | FEM_Sym_Desc |
Describes one kind of symmetry condition. More... | |
class | FEM_Sym_Linear |
Describes a linear-periodic (space shift) symmetry:. More... | |
class | FEM_Sym_List |
Describes all the different kinds of symmetries that apply to this mesh. More... | |
class | BasicTable2d< T > |
This is a simple 2D table. More... | |
class | AllocTable2d< T > |
A heap-allocatable, resizable BasicTable2d. More... | |
class | FEM_Attribute |
Describes an FEM entity's "attribute"--a user-visible, user-settable 2D table. More... | |
class | FEM_Entity |
Describes an entire class of "entities"--nodes, elements, or sparse data records. More... | |
class | FEM_Node |
FEM_Node is a type of FEM_Entity, which refers to nodes. More... | |
class | FEM_Userdata_item |
Describes one piece of generic unassociated mesh data. More... | |
class | FEM_Userdata_list |
Describes all the unassociated data in a mesh. More... | |
class | FEM_Entity_Types< T > |
This class describes several different types of a certain kind of entity. More... | |
class | FEM_Mesh |
A FEM_Mesh is a collection of entities. More... | |
class | l2g_t |
This class describes a local-to-global index mapping, used in FEM_Print. More... | |
class | NumberedVec< T > |
Map (user-assigned) numbers to T's. More... | |
class | ArrayPtrT< T > |
Smart pointer-to-new[]'d array-of-T. More... | |
class | marshallNewHeapCopy< T > |
Unmarshall into a heap-allocated copy. More... | |
class | FEM_T_List< T > |
Keeps a list of dynamically-allocated T objects, indexed by a user-carried, persistent "int". More... | |
class | FEM_Mesh_list |
class | FEM_chunk |
A collection of meshes on one processor. More... | |
class | FEM_Ghost_Layer |
Describes a single layer of ghost elements. More... | |
class | FEM_Ghost_Layer::elemGhostInfo |
class | FEM_Ghost_Stencil |
Describes a set of required adjacent elements for this kind of element, stored as an explicit adjacency list. More... | |
class | FEM_Ghost_Region |
Describes a way to grow a set of ghosts. More... | |
class | FEM_Partition |
Describes all the data needed for partitioning a mesh. More... | |
class | FEM_Mesh_Output |
class | FEM_ElemAdj_Layer |
This stores the types of faces for each element type. More... | |
class | FEM_ElemAdj_Layer::elemAdjInfo |
class | NodeElem |
class | MeshElem |
This class is an MSA Entity. More... | |
struct | MeshElem::ElemInfo |
struct | MeshElem::NodeInfo |
struct | conndata |
struct | partconndata |
Structure to store connectivity data after the global element partition has been returned by parmetis. More... | |
struct | ghostdata |
structure for storing the ghost layers More... | |
class | elemList |
class | tupleTable |
class | chunkList |
class | FEM_MUtil |
A utility class with helper functions for adaptivity. More... | |
class | FEM_MUtil::tuple |
a data structure to remember mappings from oldnode to newnode yet to be updated More... | |
class | vector2d |
class | CkThresholdTimer |
Time a sequence of operations, printing out the names and times of any operations that exceed a threshold. More... | |
Typedefs | |
typedef IDXL_Side | FEM_Comm |
typedef IDXL_List | FEM_Comm_List |
typedef IDXL_Rec | FEM_Comm_Rec |
typedef unsigned char | FEM_Symmetries_t |
This datatype is how the framework stores symmetries internally. | |
typedef ArrayPtrT< int > | intArrayPtr |
typedef marshallNewHeapCopy < FEM_Mesh > | marshallMeshChunk |
typedef MSA::MSA2D< int, DefaultEntry< int > , MSA_DEFAULT_ENTRIES_PER_PAGE, MSA_ROW_MAJOR > | MSA2DRM |
typedef MSA::MSA1D< int, DefaultEntry< int > , MSA_DEFAULT_ENTRIES_PER_PAGE > | MSA1DINT |
typedef UniqElemList< int > | IntList |
typedef MSA::MSA1D< IntList, DefaultListEntry< IntList, true > , MSA_DEFAULT_ENTRIES_PER_PAGE > | MSA1DINTLIST |
typedef UniqElemList< NodeElem > | NodeList |
typedef MSA::MSA1D< NodeList, DefaultListEntry< NodeList, true > , MSA_DEFAULT_ENTRIES_PER_PAGE > | MSA1DNODELIST |
typedef MSA::MSA1D< MeshElem, DefaultEntry< MeshElem, true >, 1 > | MSA1DFEMMESH |
typedef double | Real |
Functions | |
template<class Container, class Iterator> | |
insert_iterator< Container > | std::inserter (Container &_Cont, Iterator _It) |
CtvExtern (FEM_Adapt_Algs *, _adaptAlgs) | |
const char * | FEM_Get_entity_name (int entity, char *storage) |
Return the human-readable version of this entity code, like "FEM_NODE". | |
const char * | FEM_Get_attr_name (int attr, char *storage) |
Return the human-readable version of this attribute code, like "FEM_CONN". | |
PUPmarshall (FEM_Attribute) class FEM_DataAttribute | |
A single table of user data associated with an entity. | |
PUPmarshall (FEM_DataAttribute) class FEM_IndexAttribute | |
The FEM_Attribute is of type integer indices. | |
PUPmarshall (FEM_IndexAttribute) class FEM_VarIndexAttribute | |
The FEM_Attribute is a variable set of integer indices. | |
PUPmarshall (FEM_Entity) inline int FEM_Attribute | |
PUPmarshall (FEM_Node) class FEM_Elem | |
FEM_Elem is a type of FEM_Entity, which refers to elems. | |
PUPmarshall (FEM_Elem) class FEM_Sparse | |
FEM_Sparse is a type of FEM_Entity, which refers to edges. | |
PUPmarshall (FEM_Sparse) class FEM_Userdata_pupfn | |
Describes a user function to pup a piece of mesh data. | |
void | FEM_Index_Check (const char *caller, const char *entityType, int type, int maxType) |
void | FEM_Is_NULL (const char *caller, const char *entityType, int type) |
int | zeroToMinusOne (int i) |
Map fortran element (>=1) or node (0) marker to C version (>=1, -1). | |
PUPmarshall (FEM_Mesh) FEM_Mesh *FEM_Mesh_lookup(int fem_mesh | |
FEM_Entity * | FEM_Entity_lookup (int fem_mesh, int entity, const char *caller) |
FEM_Attribute * | FEM_Attribute_lookup (int fem_mesh, int entity, int attr, const char *caller) |
void | FEM_Mesh_data_layout (int fem_mesh, int entity, int attr, void *data, int firstItem, int length, const IDXL_Layout &layout) |
void | FEM_Register_array_layout (int fem_mesh, int entity, int attr, void *data, int firstItem, const IDXL_Layout &layout) |
void | FEM_Register_entity_impl (int fem_mesh, int entity, void *args, int len, int max, FEM_Mesh_alloc_fn fn) |
FEM_Mesh * | FEM_Mesh_assemble (int nchunks, FEM_Mesh **chunks) |
Reassemble split chunks into a single mesh. | |
FILE * | FEM_openMeshFile (const char *prefix, int chunkNo, int nchunks, bool forRead) |
FEM_Mesh * | FEM_readMesh (const char *prefix, int chunkNo, int nChunks) |
void | FEM_writeMesh (FEM_Mesh *m, const char *prefix, int chunkNo, int nChunks) |
void | FEM_Abort (const char *msg) |
void | FEM_Abort (const char *caller, const char *sprintf_msg, int int0, int int1, int int2) |
FEM_Partition & | FEM_curPartition (void) |
void | FEM_Mesh_partition (const FEM_Mesh *mesh, int nchunks, int *elem2chunk, bool faceGraph=false) |
void | FEM_Mesh_split (FEM_Mesh *mesh, int nChunks, const FEM_Partition &partition, FEM_Mesh_Output *out) |
int * | CkCopyArray (const int *src, int len, int indexBase) |
int | FEM_master_parallel_part (int fem_mesh, int masterRank, FEM_Comm_t comm_context) |
int | FEM_slave_parallel_part (int fem_mesh, int masterRank, FEM_Comm_t comm_context) |
struct partconndata * | FEM_call_parmetis (int nelem, MSA1DINT::Read &rPtr, MSA1DINT::Read &rInd, FEM_Comm_t comm_context) |
void | FEM_write_nodepart (MSA1DINTLIST::Accum &nodepart, struct partconndata *data, MPI_Comm comm_context) |
void | FEM_write_part2node (MSA1DINTLIST::Read &nodepart, MSA1DNODELIST::Accum &part2node, struct partconndata *data, MPI_Comm comm_context) |
void | FEM_write_part2elem (MSA1DINTLIST::Accum &part2elem, struct partconndata *data, MPI_Comm comm_context) |
FEM_Mesh * | FEM_break_mesh (FEM_Mesh *m, int numElements, int numChunks) |
void | sendBrokenMeshes (FEM_Mesh *mesh_array, FEM_Comm_t comm_context) |
void | FEM_write_part2mesh (MSA1DFEMMESH::Accum &part2mesh, struct partconndata *partdata, struct conndata *data, MSA1DINTLIST::Read &nodepart, int numChunks, int myChunk, FEM_Mesh *m) |
void | addIDXLists (FEM_Mesh *m, NodeList &lnodes, int myChunk) |
struct ghostdata * | gatherGhosts () |
void | makeGhosts (FEM_Mesh *m, MPI_Comm comm, int masterRank, int numLayers, FEM_Ghost_Layer **layers) |
void | makeGhost (FEM_Mesh *m, MPI_Comm comm, int masterRank, int totalShared, FEM_Ghost_Layer *layer, CkHashtableT< CkHashtableAdaptorT< int >, char > &sharedNode, CkHashtableT< CkHashtableAdaptorT< int >, int > &global2local) |
bool | sharedWith (int lnode, int chunk, FEM_Mesh *m) |
CkHashCode | CkHashFunction_ints (const void *keyData, size_t keyLen) |
int | CkHashCompare_ints (const void *k1, const void *k2, size_t keyLen) |
int | ck_fem_map_compare_int (const void *a, const void *b) |
Variables | |
CProxy_femMeshModify | meshMod |
File: fem_mesh_modify.C Authors: Nilesh Choudhury, Isaac Dooley. | |
const char * | caller |
static FEM_Symmetries_t | noSymmetries = (FEM_Symmetries_t)0 |