
Go to the source code of this file.
Data Structures | |
| class | FEM_Mesh_Partition_List |
Enumerations | |
| enum | { FEM_globalID = 33 } |
Functions | |
| void | FEM_Abort (const char *msg) |
| void | FEM_Abort (const char *caller, const char *sprintf_msg, int int0, int int1, int int2) |
| CLINKAGE void | pupFEM_Chunk (pup_er cp) |
| CLINKAGE void | FEM_Init (FEM_Comm_t defaultComm) |
| Initialize the FEM framework (must have called MPI_Init). | |
| FORTRAN_AS_C (FEM_INIT, FEM_Init, fem_init,(int *comm),(*comm)) void _registerfem(void) | |
| CLINKAGE int | FEM_Mesh_allocate (void) |
| mesh creation functions | |
| FORTRAN_AS_C_RETURN (int, FEM_MESH_ALLOCATE, FEM_Mesh_allocate, fem_mesh_allocate,(void),()) | |
| Return a new'd copy of this class, by calling pup. | |
| CLINKAGE int | FEM_Mesh_copy (int fem_mesh) |
| build new mesh | |
| FORTRAN_AS_C_RETURN (int, FEM_MESH_COPY, FEM_Mesh_copy, fem_mesh_copy,(int *m),(*m)) CLINKAGE void FEM_Mesh_deallocate(int fem_mesh) | |
| FORTRAN_AS_C (FEM_MESH_DEALLOCATE, FEM_Mesh_deallocate, fem_mesh_deallocate,(int *m),(*m)) CLINKAGE int FEM_Mesh_read(const char *prefix | |
| FEM_Partition & | FEM_curPartition (void) |
| static void | clearPartition (void) |
| static void | FEM_Mesh_partition (FEM_Mesh *src, int _nchunks, FEM_Mesh_Output *out) |
| CLINKAGE void | FEM_Mesh_partition (int fem_mesh, int nParts, int *destMeshes) |
| FORTRAN_AS_C (FEM_MESH_PARTITION, FEM_Mesh_partition, fem_mesh_partition,(int *mesh, int *nParts, int *dest),(*mesh,*nParts, dest)) CLINKAGE int FEM_Mesh_recv(int fromRank | |
| CLINKAGE int | FEM_Mesh_broadcast (int fem_mesh, int masterRank, FEM_Comm_t comm_context) |
| FORTRAN_AS_C_RETURN (int, FEM_MESH_BROADCAST, FEM_Mesh_broadcast, fem_mesh_broadcast,(int *mesh, int *rank, int *comm),(*mesh,*rank,*comm)) CLINKAGE void FEM_Mesh_copy_globalno(int src_mesh | |
| n (n_) | |
| addNodes (addNodes_) | |
| ends (new int[n]) | |
| adj (new int[2 *userEnds[n-1]]) | |
| CLINKAGE void | FEM_Add_ghost_stencil_type (int elType, int nElts, int addNodes, const int *ends, const int *adj2) |
| FLINKAGE void | FTN_NAME (FEM_ADD_GHOST_STENCIL_TYPE, fem_add_ghost_stencil_type) |
| int | globalElem2elType (const FEM_Mesh *m, int globalElem) |
| CLINKAGE void | FEM_Add_ghost_stencil (int nElts, int addNodes, const int *ends, const int *adj) |
| FLINKAGE void | FTN_NAME (FEM_ADD_GHOST_STENCIL, fem_add_ghost_stencil) |
| CLINKAGE void | FEM_Add_ghost_layer (int nodesPerTuple, int doAddNodes) |
| FLINKAGE void | FTN_NAME (FEM_ADD_GHOST_LAYER, fem_add_ghost_layer) |
| static void | add_ghost_elem (int elType, int tuplesPerElem, const int *elem2tuple, int idxBase) |
| CLINKAGE void | FEM_Add_ghost_elem (int elType, int tuplesPerElem, const int *elem2tuple) |
| FLINKAGE void | FTN_NAME (FEM_ADD_GHOST_ELEM, fem_add_ghost_elem) |
| CLINKAGE void | FEM_Update_ghost_field (int fid, int elType, void *v_data) |
| FLINKAGE void | FTN_NAME (FEM_UPDATE_GHOST_FIELD, fem_update_ghost_field) |
| CLINKAGE void | FEM_Exchange_ghost_lists (int elemType, int nIdx, const int *localIdx) |
| FLINKAGE void | FTN_NAME (FEM_EXCHANGE_GHOST_LISTS, fem_exchange_ghost_lists) |
| CLINKAGE int | FEM_Get_ghost_list_length (void) |
| FLINKAGE int | FTN_NAME (FEM_GET_GHOST_LIST_LENGTH, fem_get_ghost_list_length) |
| CLINKAGE void | FEM_Get_ghost_list (int *dest) |
| FLINKAGE void | FTN_NAME (FEM_GET_GHOST_LIST, fem_get_ghost_list) |
| static void | getRoccomPconn (IDXL_Side_t is, int bias, CkVec< int > &pconn, const int *paneFmChunk) |
| Extract an IDXL_Side_t into Roccom format. | |
| static CkVec< int > | getRoccomPconn (int fem_mesh, int *ghost_len, const int *paneFmChunk) |
| Extract all FEM communication information into Roccom format. | |
| CLINKAGE void | FEM_Get_roccom_pconn_size (int fem_mesh, int *total_len, int *ghost_len) |
| FORTRAN_AS_C (FEM_GET_ROCCOM_PCONN_SIZE, FEM_Get_roccom_pconn_size, fem_get_roccom_pconn_size,(int *mesh, int *tl, int *gl),(*mesh, tl, gl)) CLINKAGE void FEM_Get_roccom_pconn(int fem_mesh | |
| int | commState (int entityNo, const IDXL_Side &s) |
| CLINKAGE void | FEM_Make_node_globalno (int fem_mesh, FEM_Comm_t comm_context) |
| Based on shared node communication list, compute FEM_NODE FEM_GLOBALNO and FEM_NODE_PRIMARY. | |
| FORTRAN_AS_C (FEM_MAKE_NODE_GLOBALNO, FEM_Make_node_globalno, fem_make_node_globalno,(int *mesh, int *comm),(*mesh,*comm)) class localToGlobal | |
| CLINKAGE void | FEM_Add_elem2face_tuples (int fem_mesh, int elem_type, int nodesPerTuple, int tuplesPerElem, const int *elem2tuple) |
Variables | |
| int | femVersion = 1 |
| static CmiNodeLock | femLock = 0 |
| int | partNo |
| int | tag |
| const int * | paneFmChunk |
| void FEM_Abort | ( | const char * | msg | ) |
Definition at line 17 of file fem.C.
Referenced by splitter::addGhostPair(), FEM_Mesh_list::bad(), FEM_Sparse_Elem_Checker::check(), FEM_Elem_Conn_Checker::check(), checkIsSet(), splitter::consistencyCheck(), splitter::copySparseChunks(), FEM_Entity::create(), FEM_Abort(), FEM_Index_Check(), FEM_Is_NULL(), FEM_openMeshFile(), FORTRAN_AS_C(), FEM_chunk::get(), FEMchunk::get(), FEM_Mesh::lookup(), and type2base().

| CLINKAGE void pupFEM_Chunk | ( | pup_er | cp | ) |
Definition at line 36 of file fem.C.
References c, FEM_globalID, PUP::er::isDeleting(), p, FEMchunk::pup(), TCHARM_Get_global(), and TCHARM_Set_global().
Referenced by FEM_Init(), and pupFEM_Chunk().


| void FEM_Init | ( | FEM_Comm_t | defaultComm | ) |
Initialize the FEM framework (must have called MPI_Init).
Definition at line 53 of file fem.C.
Referenced by FTN_NAME().

| int FEM_Mesh_allocate | ( | void | ) |
mesh creation functions
Definition at line 81 of file fem.C.
Referenced by FTN_NAME().

| FORTRAN_AS_C_RETURN | ( | int | , | |
| FEM_MESH_ALLOCATE | , | |||
| FEM_Mesh_allocate | , | |||
| fem_mesh_allocate | , | |||
| (void) | , | |||
| () | ||||
| ) |
Return a new'd copy of this class, by calling pup.
Definition at line 89 of file fem.C.
References buf, PUP::fromMemBuf(), len, PUP::size(), and PUP::toMemBuf().

build new mesh
Definition at line 104 of file fem.C.
Referenced by FEM_master_parallel_part(), FEM_Mesh_partition(), and FEM_slave_parallel_part().

Definition at line 109 of file fem.C.
References c, caller, FEM_T_List< T >::destroy(), FEMchunk::get(), and FEMchunk::meshes.

| FORTRAN_AS_C | ( | FEM_MESH_DEALLOCATE | , | |
| FEM_Mesh_deallocate | , | |||
| fem_mesh_deallocate | , | |||
| (int *m) | , | |||
| * | m | |||
| ) | const |
| static void clearPartition | ( | void | ) | [static] |
Definition at line 173 of file fem.C.
Referenced by FEM_Mesh_Parallel_broadcast(), and FEM_Mesh_partition().

| static void FEM_Mesh_partition | ( | FEM_Mesh * | src, | |
| int | _nchunks, | |||
| FEM_Mesh_Output * | out | |||
| ) | [static] |
Definition at line 202 of file fem.C.
References clearPartition(), FEM_curPartition(), FEM_Mesh_split(), and FEM_Mesh::setAscendingGlobalno().
Referenced by FEM_Mesh_broadcast(), FEM_Mesh_partition(), FEM_Serial_split(), and FEM_Partition::getPartition().


| FORTRAN_AS_C | ( | FEM_MESH_PARTITION | , | |
| FEM_Mesh_partition | , | |||
| fem_mesh_partition | , | |||
| (int *mesh, int *nParts, int *dest) | , | |||
| *,*, | dest | |||
| ) |
| int FEM_Mesh_broadcast | ( | int | fem_mesh, | |
| int | masterRank, | |||
| FEM_Comm_t | comm_context | |||
| ) |
Definition at line 301 of file fem.C.
Referenced by FTN_NAME().

| FORTRAN_AS_C_RETURN | ( | int | , | |
| FEM_MESH_BROADCAST | , | |||
| FEM_Mesh_broadcast | , | |||
| fem_mesh_broadcast | , | |||
| (int *mesh, int *rank, int *comm) | , | |||
| *,*,* | comm | |||
| ) |
| n | ( | n_ | ) |
| addNodes | ( | addNodes_ | ) |
Referenced by FEM_Ghost_Layer::pup(), and FEM_Ghost_Stencil::wantNodes().

| ends | ( | new | int[n] | ) |
Referenced by adj(), and FEM_Ghost_Stencil::getNeighbor().

| adj | ( | new int] | [2 *userEnds[n-1] | ) |
Definition at line 871 of file fem.C.
References ends().
Referenced by adj(), copyOut(), fillAdjArray(), FTN_NAME(), FEM_Ghost_Stencil::getNeighbor(), printOut(), sortAdjArrays(), and BulkAdapt::update_local_edge_adj().


| void FEM_Add_ghost_stencil_type | ( | int | elType, | |
| int | nElts, | |||
| int | addNodes, | |||
| const int * | ends, | |||
| const int * | adj2 | |||
| ) |
Definition at line 892 of file fem.C.
Referenced by FEM_Add_ghost_stencil().

| FLINKAGE void FTN_NAME | ( | FEM_ADD_GHOST_STENCIL_TYPE | , | |
| fem_add_ghost_stencil_type | ||||
| ) |
Definition at line 900 of file fem.C.
References FEM_Partition::addGhostStencil(), FEM_curPartition(), and PUP::s.

Definition at line 911 of file fem.C.
References FEM_Mesh::elem, FEM_Entity_Types< T >::has(), FEM_Entity_Types< T >::size(), and PUP::t.
Referenced by FEM_Add_ghost_stencil().


Definition at line 929 of file fem.C.
Referenced by FTN_NAME().

| FLINKAGE void FTN_NAME | ( | FEM_ADD_GHOST_STENCIL | , | |
| fem_add_ghost_stencil | ||||
| ) |
Definition at line 966 of file fem.C.
References adj(), and FEM_Add_ghost_stencil().

Definition at line 978 of file fem.C.
Referenced by FTN_NAME(), and init().

| FLINKAGE void FTN_NAME | ( | FEM_ADD_GHOST_LAYER | , | |
| fem_add_ghost_layer | ||||
| ) |
Definition at line 985 of file fem.C.
References FEM_Add_ghost_layer().

| static void add_ghost_elem | ( | int | elType, | |
| int | tuplesPerElem, | |||
| const int * | elem2tuple, | |||
| int | idxBase | |||
| ) | [static] |
Definition at line 989 of file fem.C.
References CkCopyArray(), FEM_Partition::curLayer(), FEM_Ghost_Layer::elem, FEM_curPartition(), and FEM_Ghost_Layer::nodesPerTuple.
Referenced by FEM_Add_ghost_elem(), and FTN_NAME().


| FLINKAGE void FTN_NAME | ( | FEM_ADD_GHOST_ELEM | , | |
| fem_add_ghost_elem | ||||
| ) |
Definition at line 1003 of file fem.C.
References add_ghost_elem().

Definition at line 1007 of file fem.C.
Referenced by FEM_Adapt_Algs::FEM_mesh_smooth(), FEM_REFINE2D_Newmesh(), and FTN_NAME().

| FLINKAGE void FTN_NAME | ( | FEM_UPDATE_GHOST_FIELD | , | |
| fem_update_ghost_field | ||||
| ) |
Definition at line 1022 of file fem.C.
References data, and FEM_Update_ghost_field().

| FLINKAGE void FTN_NAME | ( | FEM_EXCHANGE_GHOST_LISTS | , | |
| fem_exchange_ghost_lists | ||||
| ) |
Definition at line 1106 of file fem.C.
References FEMchunk::exchangeGhostLists(), and FEMchunk::get().

| int FEM_Get_ghost_list_length | ( | void | ) |
Definition at line 1112 of file fem.C.
Referenced by FEM_Get_ghost_list(), and FTN_NAME().

| FLINKAGE int FTN_NAME | ( | FEM_GET_GHOST_LIST_LENGTH | , | |
| fem_get_ghost_list_length | ||||
| ) |
Definition at line 1117 of file fem.C.
References FEM_Get_ghost_list_length().

| FLINKAGE void FTN_NAME | ( | FEM_GET_GHOST_LIST | , | |
| fem_get_ghost_list | ||||
| ) |
Definition at line 1128 of file fem.C.
References FEMchunk::emptyList(), FEM_Get_ghost_list_length(), FEMchunk::get(), FEMchunk::getList(), and CkVec< T >::getVec().

| static void getRoccomPconn | ( | IDXL_Side_t | is, | |
| int | bias, | |||
| CkVec< int > & | pconn, | |||
| const int * | paneFmChunk | |||
| ) | [static] |
Extract an IDXL_Side_t into Roccom format.
Definition at line 1142 of file fem.C.
References nn, and CkVec< T >::push_back().
Referenced by FEM_Get_roccom_pconn_size(), and getRoccomPconn().


| static CkVec<int> getRoccomPconn | ( | int | fem_mesh, | |
| int * | ghost_len, | |||
| const int * | paneFmChunk | |||
| ) | [static] |
Extract all FEM communication information into Roccom format.
Definition at line 1159 of file fem.C.
References FEM_Comm_ghost(), FEM_Comm_shared(), FEM_Mesh_get_entities(), FEM_Mesh_get_length(), getRoccomPconn(), IDXL_Create(), and CkVec< T >::size().

| FORTRAN_AS_C | ( | FEM_GET_ROCCOM_PCONN_SIZE | , | |
| FEM_Get_roccom_pconn_size | , | |||
| fem_get_roccom_pconn_size | , | |||
| (int *mesh, int *tl, int *gl) | , | |||
| *,, | gl | |||
| ) |
Definition at line 1252 of file fem.C.
References FEM_My_partition(), IDXL_Side::getRec(), and r.
Referenced by FEM_Make_node_globalno().


| void FEM_Make_node_globalno | ( | int | fem_mesh, | |
| FEM_Comm_t | comm_context | |||
| ) |
| FORTRAN_AS_C | ( | FEM_MAKE_NODE_GLOBALNO | , | |
| FEM_Make_node_globalno | , | |||
| fem_make_node_globalno | , | |||
| (int *mesh, int *comm) | , | |||
| *,* | comm | |||
| ) |
Definition at line 1324 of file fem.C.
References FEM_Entity::getGlobalno(), and PUP::l.

| void FEM_Add_elem2face_tuples | ( | int | fem_mesh, | |
| int | elem_type, | |||
| int | nodesPerTuple, | |||
| int | tuplesPerElem, | |||
| const int * | elem2tuple | |||
| ) |
Definition at line 1422 of file fem.C.
Referenced by FEM_ADAPT_Init().

| int femVersion = 1 |
Definition at line 10 of file fem.C.
Referenced by allocated(), FEM_Entity::FEM_Entity(), FEM_Entity::pup(), FEM_Attribute::pup(), FEM_Attribute::pupSingle(), read_version(), FEM_Attribute::register_data(), FEM_Attribute::set(), FEM_Attribute::tryAllocate(), and write_version().
CmiNodeLock femLock = 0 [static] |
| const int* paneFmChunk |
1.5.5