Go to the source code of this file.
ParFUM-TOPS provides a Tops-like API for ParFUM.
Definition in file ParFUM_TOPS.h.
int tops_lib_FP_Type_Size | ( | ) |
Return the size of the FP Type the PTops library was compiled with, in bytes.
TopModel* topModel_Create_Init | ( | ) |
Create and access a Tops model.
Only call from Init Currently only one model can be created. To extend, each model must just reference a different FEM_Mesh object
TopModel* topModel_Create_Driver | ( | TopDevice | target_device, | |
int | elem_attr_sz, | |||
int | node_attr_sz, | |||
int | model_attr_sz, | |||
void * | mAtt | |||
) |
Create and access a Tops model.
Only call from Driver
void topModel_Destroy | ( | TopModel * | m | ) |
Cleanup a model.
Currently does nothing
void topModel_SuggestInitialSize | ( | TopModel * | m, | |
unsigned | numNodes, | |||
unsigned | numElements | |||
) |
TopElement topModel_InsertElem | ( | TopModel * | , | |
TopElemType | , | |||
TopNode * | ||||
) |
Insert an element.
void topElement_SetId | ( | TopModel * | , | |
TopElement | , | |||
TopID | id | |||
) |
int topElement_GetId | ( | TopModel * | m, | |
TopElement | e | |||
) |
Get id of an element.
void topElement_SetAttrib | ( | TopModel * | , | |
TopElement | , | |||
void * | ||||
) |
void* topElement_GetAttrib | ( | TopModel * | , | |
TopElement | ||||
) |
Get element attribute.
TopNode topElement_GetNode | ( | TopModel * | , | |
TopElement | , | |||
int | idx | |||
) |
Get node via id.
TopElement topModel_GetElemAtId | ( | TopModel * | m, | |
TopID | id | |||
) | [inline] |
Get element via id.
Definition at line 195 of file ParFUM_TOPS.h.
References elem, TopModel::elemIDHash, CkHashtableT< KEY, OBJ >::get(), TopModel::mesh, BasicTable2d< T >::size(), TOP_ELEMENT_TET4, and TopElement::type.
int topElement_GetNNodes | ( | TopModel * | model, | |
TopElement | elem | |||
) |
bool topElement_IsCohesive | ( | TopModel * | m, | |
TopElement | e | |||
) |
void top_retrieve_elem_data | ( | TopModel * | m | ) |
void top_retrieve_node_data | ( | TopModel * | m | ) |
void top_put_elem_data | ( | TopModel * | m | ) |
void top_put_node_data | ( | TopModel * | m | ) |
void top_retrieve_data | ( | TopModel * | m | ) |
void top_put_data | ( | TopModel * | m | ) |
TopElement topFacet_GetElem | ( | TopModel * | m, | |
TopFacet | f, | |||
int | i | |||
) |
bool topElement_IsValid | ( | TopModel * | m, | |
TopElement | e | |||
) |
TopElement topModel_InsertCohesiveAtFacet | ( | TopModel * | m, | |
int | ElemType, | |||
TopFacet | f | |||
) |
bool haveConfigurableCPUGPUMap | ( | ) |
int configurableCPUGPUMapNumNodes | ( | ) |
TopNodeItr * topModel_CreateNodeItr | ( | TopModel * | model | ) | [inline] |
Create Iterator for nodes.
Definition at line 352 of file ParFUM_TOPS.h.
References TopNodeItr::model.
void topNodeItr_Destroy | ( | TopNodeItr * | itr | ) | [inline] |
void topNodeItr_Begin | ( | TopNodeItr * | itr | ) | [inline] |
Initialize Iterator.
Definition at line 362 of file ParFUM_TOPS.h.
References FEM_Entity::ghost, FEM_Entity::is_valid_any_idx(), TopModel::mesh, TopNodeItr::model, FEM_Mesh::node, TopNodeItr::parfum_index, and FEM_Entity::size().
bool topNodeItr_IsValid | ( | TopNodeItr * | itr | ) | [inline] |
Determine if Iterator is valid or if it has iterated past last Node.
Definition at line 384 of file ParFUM_TOPS.h.
References FEM_Entity::is_valid_any_idx(), TopModel::mesh, TopNodeItr::model, FEM_Mesh::node, and TopNodeItr::parfum_index.
Referenced by topNodeItr_GetCurr(), and topNodeItr_Next().
void topNodeItr_Next | ( | TopNodeItr * | itr | ) | [inline] |
Increment iterator.
Definition at line 388 of file ParFUM_TOPS.h.
References FEM_Entity::is_valid_any_idx(), TopModel::mesh, TopNodeItr::model, FEM_Mesh::node, TopNodeItr::parfum_index, FEM_Entity::size(), and topNodeItr_IsValid().
TopNode topNodeItr_GetCurr | ( | TopNodeItr * | itr | ) | [inline] |
Get TopNode associated with the iterator.
Definition at line 408 of file ParFUM_TOPS.h.
References TopNodeItr::parfum_index, and topNodeItr_IsValid().
TopElemItr * topModel_CreateElemItr | ( | TopModel * | model | ) | [inline] |
Create Iterator for elements.
Definition at line 421 of file ParFUM_TOPS.h.
References TopElemItr::model, TOP_ELEMENT_TET4, and TopElemItr::type.
Referenced by topFacetItr_Begin().
void topElemItr_Destroy | ( | TopElemItr * | itr | ) | [inline] |
void topElemItr_Begin | ( | TopElemItr * | itr | ) | [inline] |
Initialize Iterator.
Definition at line 432 of file ParFUM_TOPS.h.
References TopElemItr::done, FEM_Mesh::elem, TopModel::mesh, TopElemItr::model, TopElemItr::parfum_index, FEM_Entity_Types< T >::size(), and TopElemItr::type.
Referenced by topFacetItr_Begin().
bool topElemItr_IsValid | ( | TopElemItr * | itr | ) | [inline] |
Determine if Iterator is valid or if it has iterated past last Element.
Definition at line 457 of file ParFUM_TOPS.h.
References TopElemItr::done.
Referenced by topElemItr_GetCurr(), topElemItr_Next(), topFacetItr_IsValid(), and topFacetItr_Next().
void topElemItr_Next | ( | TopElemItr * | itr | ) | [inline] |
Increment iterator.
Definition at line 461 of file ParFUM_TOPS.h.
References TopElemItr::done, FEM_Mesh::elem, TopModel::mesh, TopElemItr::model, TopElemItr::parfum_index, FEM_Entity_Types< T >::size(), TOP_ELEMENT_TET4, and topElemItr_IsValid().
Referenced by topFacetItr_Next().
TopElement topElemItr_GetCurr | ( | TopElemItr * | itr | ) | [inline] |
Get TopElement associated with the iterator.
Definition at line 482 of file ParFUM_TOPS.h.
References TopElemItr::parfum_index, topElemItr_IsValid(), TopElemItr::type, and TopElement::type.
Referenced by topFacetItr_Begin(), topFacetItr_GetCurr(), and topFacetItr_Next().
void topModel_TestIterators | ( | TopModel * | m | ) |
Perform sanity check on iterators.
This checks to make sure that the count of the itereated elements and nodes matches that returned by ParFUM's countValid()
TopNodeElemItr * topModel_CreateNodeElemItr | ( | TopModel * | m, | |
TopNode | n | |||
) | [inline] |
Definition at line 499 of file ParFUM_TOPS.h.
References TopNodeElemItr::current_index, FEM_Entity::is_valid_any_idx(), TopModel::mesh, TopNodeElemItr::model, FEM_Mesh::n2e_getLength(), FEM_Mesh::node, TopNodeElemItr::node, and TopNodeElemItr::numAdjElem.
bool topNodeElemItr_IsValid | ( | TopNodeElemItr * | neitr | ) | [inline] |
Definition at line 516 of file ParFUM_TOPS.h.
References TopNodeElemItr::current_index, and TopNodeElemItr::numAdjElem.
Referenced by topNodeElemItr_GetCurr().
void topNodeElemItr_Next | ( | TopNodeElemItr * | neitr | ) | [inline] |
TopElement topNodeElemItr_GetCurr | ( | TopNodeElemItr * | neitr | ) | [inline] |
Definition at line 525 of file ParFUM_TOPS.h.
References TopNodeElemItr::current_index, elem, ElemID::getSignedId(), ElemID::getUnsignedType(), TopModel::mesh, TopNodeElemItr::model, FEM_Mesh::n2e_getElem(), TopNodeElemItr::node, topNodeElemItr_IsValid(), and TopElement::type.
void topNodeElemItr_Destroy | ( | TopNodeElemItr * | neitr | ) | [inline] |
Definition at line 536 of file ParFUM_TOPS.h.
TopFacetItr * topModel_CreateFacetItr | ( | TopModel * | m | ) | [inline] |
void topFacetItr_Begin | ( | TopFacetItr * | itr | ) | [inline] |
Definition at line 587 of file ParFUM_TOPS.h.
References FEM_Mesh::e2e_getElem(), TopFacetItr::elemItr, TopModel::mesh, TopFacetItr::model, topElemItr_Begin(), topElemItr_GetCurr(), topFacetItr_Next(), topModel_CreateElemItr(), TopElement::type, and TopFacetItr::whichFacet.
bool topFacetItr_IsValid | ( | TopFacetItr * | itr | ) | [inline] |
Definition at line 606 of file ParFUM_TOPS.h.
References TopFacetItr::elemItr, and topElemItr_IsValid().
void topFacetItr_Next | ( | TopFacetItr * | itr | ) | [inline] |
Iterate to the next facet.
Definition at line 558 of file ParFUM_TOPS.h.
References FEM_Mesh::e2e_getElem(), TopFacetItr::elemItr, TopModel::mesh, TopFacetItr::model, topElemItr_GetCurr(), topElemItr_IsValid(), topElemItr_Next(), TopElement::type, and TopFacetItr::whichFacet.
Referenced by topFacetItr_Begin().
TopFacet topFacetItr_GetCurr | ( | TopFacetItr * | itr | ) | [inline] |
Definition at line 614 of file ParFUM_TOPS.h.
References FEM_Mesh::e2e_getElem(), FEM_Mesh::elem, TopFacet::elem, TopFacetItr::elemItr, TopModel::mesh, TopFacetItr::model, TopFacet::node, topElemItr_GetCurr(), TopElement::type, and TopFacetItr::whichFacet.
void topFacetItr_Destroy | ( | TopFacetItr * | itr | ) | [inline] |
Definition at line 659 of file ParFUM_TOPS.h.