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

Go to the source code of this file.

Data Structures

class  FEM_Elem_Conn_Checker
 This checker verifies that FEM_Elem::conn's entries are valid node indices. More...
class  FEM_Sparse_Elem_Checker
 This checker makes sure FEM_Sparse::elem's two element indices (element type, element index) are valid. More...

Functions

static void checkIsSet (int fem_mesh, bool wantSet, const char *caller)
CDECL void FEM_Mesh_conn (int fem_mesh, int entity, int *conn, int firstItem, int length, int width)
FDECL void FTN_NAME (FEM_MESH_CONN, fem_mesh_conn)
CDECL void FEM_Mesh_set_conn (int fem_mesh, int entity, const int *conn, int firstItem, int length, int width)
FDECL void FTN_NAME (FEM_MESH_SET_CONN, fem_mesh_set_conn)
CDECL void FEM_Mesh_get_conn (int fem_mesh, int entity, int *conn, int firstItem, int length, int width)
FDECL void FTN_NAME (FEM_MESH_GET_CONN, fem_mesh_get_conn)
CDECL void FEM_Mesh_data (int fem_mesh, int entity, int attr, void *data, int firstItem, int length, int datatype, int width)
 FORTRAN_AS_C (FEM_MESH_DATA, FEM_Mesh_data, fem_mesh_data,(int *fem_mesh, int *entity, int *attr, void *data, int *firstItem, int *length, int *datatype, int *width),(*fem_mesh,*entity,*attr, data,*firstItem-1,*length,*datatype,*width)) CDECL void FEM_Mesh_set_data(int fem_mesh
 ghost (0)
 attr (attr_)
 width (0)
 datatype (-1)
 allocated (false)
template<class T>
void setTableData (const void *user, int firstItem, int length, IDXL_LAYOUT_PARAM, AllocTable2d< T > *table)
 Copy this data out of the user's (layout-formatted) array:.
template<class T>
void getTableData (void *user, int firstItem, int length, IDXL_LAYOUT_PARAM, const AllocTable2d< T > *table)
 Copy this data into the user's (layout-formatted) array:.
template<class T>
AllocTable2d< T > * allocTablePtr (AllocTable2d< T > *src, int len, int wid)
template<class T>
void interpolateAttrs (AllocTable2d< T > *data, int A, int B, int D, double frac, int width)
template<class T>
void interpolateAttrs (AllocTable2d< T > *data, int *iNodes, int rNode, int k, int width)
template<class T>
void minAttrs (AllocTable2d< T > *data, int A, int B, int D, double frac, int width)
template<class T>
void minAttrs (AllocTable2d< T > *data, int *iNodes, int rNode, int k, int width)
static int type2base (int base_type, const char *caller)
 Convert a datatype, which must be FEM_INDEX_0 or FEM_INDEX_1, to the first valid index (base index) of that type.
void setIndexTableData (const void *user, int firstItem, int length, IDXL_LAYOUT_PARAM, AllocTable2d< int > *table, int indexBase)
 Copy this data out of the user's (layout-formatted, indexBase) array:.
void getIndexTableData (void *user, int firstItem, int length, IDXL_LAYOUT_PARAM, const AllocTable2d< int > *table, int indexBase)
 Copy this data into the user's (layout-formatted, indexBase) array:.
CDECL const char * FEM_Get_entity_name (int entity, char *storage)
 Return the human-readable version of this entity code, like "FEM_NODE".
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)
FILE * FEM_openMeshFile (const char *prefix, int chunkNo, int nchunks, bool forRead)
static void read_version ()
static void write_version ()
FEM_MeshFEM_readMesh (const char *prefix, int chunkNo, int nChunks)
void FEM_writeMesh (FEM_Mesh *m, const char *prefix, int chunkNo, int nChunks)
CDECL void FEM_Mesh_allocate_valid_attr (int fem_mesh, int entity_type)
 FORTRAN_AS_C (FEM_MESH_ALLOCATE_VALID_ATTR, FEM_Mesh_allocate_valid_attr, fem_mesh_allocate_valid_attr,(int *fem_mesh, int *entity_type),(*fem_mesh,*entity_type)) CDECL void FEM_set_entity_valid(int mesh

Variables

int femVersion
int entity
int int attr
int int const void * data
int int const void int firstItem
int int const void int int length
int int const void int int int datatype
int entityType


Function Documentation

static void checkIsSet ( int  fem_mesh,
bool  wantSet,
const char *  caller 
) [static]

Definition at line 51 of file fem_mesh.C.

References FEM_Abort(), and FEM_Mesh_is_set().

Referenced by FEM_Mesh_get_conn(), FEM_Mesh_set_conn(), and FTN_NAME().

FDECL void FTN_NAME ( FEM_MESH_CONN  ,
fem_mesh_conn   
)

Definition at line 67 of file fem_mesh.C.

References conn, entity, FEM_Mesh_data(), firstItem, length, and width().

FDECL void FTN_NAME ( FEM_MESH_SET_CONN  ,
fem_mesh_set_conn   
)

Definition at line 82 of file fem_mesh.C.

References checkIsSet(), conn, entity, firstItem, FTN_NAME(), length, and width().

FDECL void FTN_NAME ( FEM_MESH_GET_CONN  ,
fem_mesh_get_conn   
)

Definition at line 97 of file fem_mesh.C.

References checkIsSet(), conn, entity, firstItem, FTN_NAME(), length, and width().

FORTRAN_AS_C ( FEM_MESH_DATA  ,
FEM_Mesh_data  ,
fem_mesh_data  ,
(int *fem_mesh, int *entity, int *attr, void *data, int *firstItem, int *length, int *datatype, int *width)  ,
*,*,*,,*-1,*,*,*  width 
)

ghost (  ) 

Referenced by FORTRAN_AS_C(), FEM_Mesh::n2e_add(), FEM_Mesh::n2e_replace(), and FEM_Entity_Types< FEM_Elem >::set().

attr ( attr_   ) 

width (  ) 

Referenced by allocated(), BCapplier_multiply(), CreateAdaptAdjacencies(), FEM_Mesh_conn(), FEM_Mesh_data(), FEM_Mesh_dataP(), FEM_Mesh_get_conn(), FEM_Mesh_set_conn(), findNodeSet(), FTN_NAME(), gatherUserData(), getIndexTableData(), getTableData(), IFEM_Solve_shared(), IFEM_Solve_shared_bc(), interpolateAttrs(), minAttrs(), BCapplier::multiply(), Bulk_Adapt::ParFUM_SetReferenceMesh(), FEM_chunk::readField(), FEMchunk::readField(), scatterAddUserData(), scatterUserData(), setIndexTableData(), Bulk_Adapt::SetMeshSize(), FEM_Adapt_Algs::SetMeshSize(), FEM_Adapt_Algs::SetReferenceMesh(), setTableData(), BCapplier::solve(), and BCapplier::userMultiply().

datatype ( 1  ) 

allocated ( false   ) 

Definition at line 514 of file fem_mesh.C.

References femVersion, and width().

template<class T>
void setTableData ( const void *  user,
int  firstItem,
int  length,
IDXL_LAYOUT_PARAM  ,
AllocTable2d< T > *  table 
) [inline]

Copy this data out of the user's (layout-formatted) array:.

Definition at line 695 of file fem_mesh.C.

References c, firstItem, BasicTable2d< T >::getRow(), length, and width().

Referenced by FEM_DataAttribute::set().

template<class T>
void getTableData ( void *  user,
int  firstItem,
int  length,
IDXL_LAYOUT_PARAM  ,
const AllocTable2d< T > *  table 
) [inline]

Copy this data into the user's (layout-formatted) array:.

Definition at line 707 of file fem_mesh.C.

References c, firstItem, BasicTable2d< T >::getRow(), length, and width().

Referenced by FEM_DataAttribute::get().

template<class T>
AllocTable2d<T>* allocTablePtr ( AllocTable2d< T > *  src,
int  len,
int  wid 
) [inline]

Definition at line 755 of file fem_mesh.C.

References AllocTable2d< T >::allocate().

Referenced by FEM_DataAttribute::allocate().

template<class T>
void interpolateAttrs ( AllocTable2d< T > *  data,
int  A,
int  B,
int  D,
double  frac,
int  width 
) [inline]

Definition at line 783 of file fem_mesh.C.

References data, and width().

Referenced by FEM_DataAttribute::interpolate().

template<class T>
void interpolateAttrs ( AllocTable2d< T > *  data,
int iNodes,
int  rNode,
int  k,
int  width 
) [inline]

Definition at line 796 of file fem_mesh.C.

References data, and width().

template<class T>
void minAttrs ( AllocTable2d< T > *  data,
int  A,
int  B,
int  D,
double  frac,
int  width 
) [inline]

Definition at line 813 of file fem_mesh.C.

References data, and width().

Referenced by FEM_DataAttribute::interpolate().

template<class T>
void minAttrs ( AllocTable2d< T > *  data,
int iNodes,
int  rNode,
int  k,
int  width 
) [inline]

Definition at line 827 of file fem_mesh.C.

References data, and width().

static int type2base ( int  base_type,
const char *  caller 
) [static]

Convert a datatype, which must be FEM_INDEX_0 or FEM_INDEX_1, to the first valid index (base index) of that type.

Otherwise call FEM_Abort, because the datatype is wrong.

Definition at line 907 of file fem_mesh.C.

References FEM_Abort().

Referenced by FEM_IndexAttribute::get(), and FEM_IndexAttribute::set().

void setIndexTableData ( const void *  user,
int  firstItem,
int  length,
IDXL_LAYOUT_PARAM  ,
AllocTable2d< int > *  table,
int  indexBase 
)

Copy this data out of the user's (layout-formatted, indexBase) array:.

Definition at line 916 of file fem_mesh.C.

References c, firstItem, BasicTable2d< T >::getRow(), length, and width().

Referenced by FEM_IndexAttribute::set().

void getIndexTableData ( void *  user,
int  firstItem,
int  length,
IDXL_LAYOUT_PARAM  ,
const AllocTable2d< int > *  table,
int  indexBase 
)

Copy this data into the user's (layout-formatted, indexBase) array:.

Definition at line 927 of file fem_mesh.C.

References c, firstItem, BasicTable2d< T >::getRow(), length, and width().

Referenced by FEM_IndexAttribute::get().

static void read_version (  )  [inline, static]

Definition at line 1920 of file fem_mesh.C.

References Converse::CkMyPe(), and femVersion.

Referenced by FEM_readMesh().

static void write_version (  )  [inline, static]

Definition at line 1930 of file fem_mesh.C.

References femVersion.

Referenced by FEM_writeMesh().

FORTRAN_AS_C ( FEM_MESH_ALLOCATE_VALID_ATTR  ,
FEM_Mesh_allocate_valid_attr  ,
fem_mesh_allocate_valid_attr  ,
(int *fem_mesh, int *entity_type)  ,
*,*  entity_type 
)


Variable Documentation

int entity

Definition at line 121 of file fem_mesh.C.

Referenced by IDXL_Map::add(), FEM_Get_entity_name(), FEM_Mesh_allocate_valid_attr(), FEM_Mesh_conn(), FEM_Mesh_data(), FEM_Mesh_data_layoutP(), FEM_Mesh_dataP(), FEM_Mesh_get_conn(), FEM_Mesh_set_conn(), FEM_Update_ghost_field(), FTN_NAME(), IDXL_Map::get(), IDXL_Side::getRec(), FEM_Mesh::lookup(), mesh_conn(), mesh_data(), FEM_Adapt::newSlot(), FEM_Adapt::printValidArray(), and FEM_Adapt::validDataFor().

int int attr

Definition at line 121 of file fem_mesh.C.

Referenced by allowRequest_default(), CcsCallerId(), CcsServer_createSalt(), CcsServer_readHeader(), CcsServer_SHA1_message(), CcsServer_writeReply(), Cpthread_attr_destroy(), Cpthread_attr_getdetachstate(), Cpthread_attr_getstacksize(), Cpthread_attr_init(), Cpthread_attr_setdetachstate(), Cpthread_attr_setstacksize(), Cpthread_create(), Cpthread_create3(), FEM_Sparse::create(), FEM_Elem::create(), FEM_Node::create(), FEM_Entity::create(), FEM_Mesh_data(), FEM_Mesh_data_layoutP(), FEM_Mesh_dataP(), FEM_REFINE2D_Split(), FEM_Refine_Operation(), FEM_Entity::get_coord(), getKey_default(), FEM_Entity::lookup(), FEM_MUtil::packEntData(), FEM_Entity::pup(), FEM_Entity::set_coord(), and FEM_MUtil::updateAttrs().

int int const void* data

Definition at line 121 of file fem_mesh.C.

int int const void int firstItem

Definition at line 121 of file fem_mesh.C.

Referenced by FEM_Mesh_conn(), FEM_Mesh_data(), FEM_Mesh_data_layoutP(), FEM_Mesh_dataP(), FEM_Mesh_get_conn(), FEM_Mesh_set_conn(), FTN_NAME(), FEM_IndexAttribute::get(), getIndexTableData(), getTableData(), FEM_IndexAttribute::set(), FEM_Attribute::set(), setIndexTableData(), and setTableData().

int int const void int int length

Definition at line 121 of file fem_mesh.C.

Referenced by nodeInfo::addBgNodeMessage(), FEM_IndexAttribute::allocate(), AMPI_Win_get_name(), BCapplier_multiply(), CmiIsomallocPup(), derive_shared_nodes(), GridRouter::EachToManyMulticastQ(), DimexRouter::EachToManyMulticastQ(), enqueue_sending(), PeTable::ExtractAndPack(), PeTable::ExtractAndPackAll(), FEM_Mesh_conn(), FEM_Mesh_data(), FEM_Mesh_data_layoutP(), FEM_Mesh_dataP(), FEM_Mesh_get_conn(), FEM_Mesh_set_conn(), element::findLongestEdge(), fmain_(), FTN_NAME(), FEM_IndexAttribute::get(), FEM_Attribute::get(), getIndexTableData(), pupCheckRec::getLength(), ComlibSectionInfo::getPeCount(), ComlibSectionInfo::getPeList(), ComlibSectionInfo::getRemotePelist(), getTableData(), IFEM_Solve_shared(), IFEM_Solve_shared_bc(), MeshStreamingStrategy::InsertIntoRowBucket(), MeshStreamingStrategy::insertMessage(), growableBufferT< CollideObjRec >::length(), element::lockArc(), BCapplier::multiply(), FEM_Adapt::newSlot(), PythonReplyString::operator new(), ParFUM_recreateSharedNodes(), PythonObject::print(), FEM_Adapt::printValidArray(), CpdList_localQ::pup(), pythonCombinePrint(), recv_callback(), element::refineCP(), element::refineLE(), element::refineLF(), FEM_IndexAttribute::register_data(), CkCallback::send(), GridRouter::sendRow(), FEM_IndexAttribute::set(), FEM_Attribute::set(), setIndexTableData(), setTableData(), CkMulticastMgr::setup(), growableBufferT< CollideObjRec >::size(), BCapplier::solve(), XStr::spew(), traceCommonInit(), MBlockChunk::update_field(), updateEffRecvTime(), BCapplier::userMultiply(), ampi::winGetName(), writeSts(), and LogPool::writeSts().

int int const void int int int datatype

Definition at line 121 of file fem_mesh.C.

Referenced by FEM_Mesh_data(), FEM_Mesh_dataP(), receiver::irecv(), and receiver::isend().

int entityType

Definition at line 1995 of file fem_mesh.C.


Generated on Sun Jun 29 13:29:34 2008 for Charm++ by  doxygen 1.5.1