PPL Logo

libs/ck-libs/ParFUM/ParFUM_internals.h File Reference

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< intintArrayPtr
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< intIntList
typedef MSA::MSA1D< IntList,
DefaultListEntry< IntList,
true >
, MSA_DEFAULT_ENTRIES_PER_PAGE > 
MSA1DINTLIST
typedef UniqElemList< NodeElemNodeList
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_EntityFEM_Entity_lookup (int fem_mesh, int entity, const char *caller)
FEM_AttributeFEM_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_MeshFEM_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_MeshFEM_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_PartitionFEM_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)
intCkCopyArray (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 partconndataFEM_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_MeshFEM_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 ghostdatagatherGhosts ()
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


Generated on Mon Sep 21 08:10:53 2020 for Charm++ by  doxygen 1.5.5