ESYS13
Revision_
|
#include "Finley.h"
#include "NodeFile.h"
#include "ReferenceElementSets.h"
#include "escript/DataC.h"
Go to the source code of this file.
typedef struct Finley_ElementFile Finley_ElementFile |
typedef struct Finley_ElementFile_Jacobeans Finley_ElementFile_Jacobeans |
Finley_ElementFile* Finley_ElementFile_alloc | ( | Finley_ReferenceElementSet * | referenceElementSet, |
Esys_MPIInfo * | MPIInfo | ||
) |
References Finley_ReferenceElement::BasisFunctions, Finley_ElementFile::Color, Esys_MPIInfo_getReference(), Finley_checkPtr(), Finley_ElementFile_free(), Finley_ElementFile_Jacobeans_alloc(), Finley_noError(), Finley_ReferenceElementSet_reference(), Finley_ElementFile::Id, Finley_ElementFile::jacobeans, Finley_ElementFile::jacobeans_reducedQ, Finley_ElementFile::jacobeans_reducedS, Finley_ElementFile::jacobeans_reducedS_reducedQ, Finley_ReferenceElement::LinearBasisFunctions, Finley_ElementFile::maxColor, MEMALLOC, Finley_ElementFile::minColor, Finley_ElementFile::MPIInfo, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ReferenceElementSet::numNodes, Finley_ElementFile::numNodes, Finley_ElementFile::numTagsInUse, Finley_ElementFile::Owner, Finley_ReferenceElementSet::referenceElement, Finley_ReferenceElementSet::referenceElementReducedQuadrature, Finley_ElementFile::referenceElementSet, Finley_ElementFile::Tag, and Finley_ElementFile::tagsInUse.
Referenced by Finley_ElementFile_optimizeOrdering(), Finley_Mesh_addPoints(), Finley_Mesh_glueFaces(), Finley_Mesh_joinFaces(), Finley_Mesh_merge(), Finley_Mesh_read(), Finley_Mesh_readGmsh(), Finley_RectangularMesh_Hex20(), Finley_RectangularMesh_Hex8(), Finley_RectangularMesh_Rec4(), Finley_RectangularMesh_Rec8(), and finley::loadMesh().
void Finley_ElementFile_allocTable | ( | Finley_ElementFile * | , |
dim_t | |||
) |
References Finley_ElementFile::Color, Finley_checkPtr(), Finley_ElementFile_freeTable(), Finley_resetError(), Finley_ElementFile::Id, INDEX2, Finley_ElementFile::maxColor, MEMALLOC, MEMFREE, Finley_ElementFile::minColor, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ElementFile::numNodes, Finley_ElementFile::Owner, and Finley_ElementFile::Tag.
Referenced by Finley_ElementFile_distributeByRankOfDOF(), Finley_ElementFile_optimizeOrdering(), Finley_Mesh_addPoints(), Finley_Mesh_glueFaces(), Finley_Mesh_joinFaces(), Finley_Mesh_merge(), Finley_Mesh_read(), Finley_Mesh_readGmsh(), Finley_RectangularMesh_Hex20(), Finley_RectangularMesh_Hex8(), Finley_RectangularMesh_Rec4(), Finley_RectangularMesh_Rec8(), and finley::loadMesh().
Finley_ElementFile_Jacobeans* Finley_ElementFile_borrowJacobeans | ( | Finley_ElementFile * | , |
Finley_NodeFile * | , | ||
bool_t | , | ||
bool_t | |||
) |
References Finley_ElementFile_Jacobeans::BasisFunctions, Finley_NodeFile::Coordinates, Finley_ReferenceElement::DBasisFunctionDv, Finley_ShapeFunction::dSdv, Finley_ElementFile_Jacobeans::DSDX, Finley_Assemble_jacobeans_1D(), Finley_Assemble_jacobeans_2D(), Finley_Assemble_jacobeans_2D_M1D_E1D(), Finley_Assemble_jacobeans_2D_M1D_E1D_C(), Finley_Assemble_jacobeans_2D_M1D_E2D(), Finley_Assemble_jacobeans_2D_M1D_E2D_C(), Finley_Assemble_jacobeans_3D(), Finley_Assemble_jacobeans_3D_M2D_E2D(), Finley_Assemble_jacobeans_3D_M2D_E2D_C(), Finley_Assemble_jacobeans_3D_M2D_E3D(), Finley_Assemble_jacobeans_3D_M2D_E3D_C(), Finley_checkPtr(), Finley_noError(), Finley_ReferenceElementSet_borrowParametrization(), Finley_ReferenceElementSet_borrowReferenceElement(), Finley_setError(), Finley_ReferenceElementInfo::linearNodes, Finley_ReferenceElement::LinearType, MEMALLOC, Finley_ElementFile_Jacobeans::node_selection, Finley_ElementFile_Jacobeans::numDim, Finley_NodeFile::numDim, Finley_ShapeFunctionInfo::numDim, Finley_ElementFile_Jacobeans::numElements, Finley_ReferenceElement::numLocalDim, Finley_ElementFile::numNodes, Finley_ReferenceElement::numNodes, Finley_ShapeFunction::numQuadNodes, Finley_ElementFile_Jacobeans::numQuadTotal, Finley_ShapeFunctionInfo::numShapes, Finley_ElementFile_Jacobeans::numShapesTotal, Finley_ElementFile_Jacobeans::numSides, Finley_ReferenceElementInfo::numSides, Finley_ElementFile_Jacobeans::numSub, Finley_ReferenceElementInfo::numSubElements, Finley_ElementFile_Jacobeans::offsets, Finley_ReferenceElementInfo::offsets, Finley_ShapeFunction::QuadWeights, Finley_ElementFile_Jacobeans::status, Finley_NodeFile::status, Finley_ReferenceElementInfo::subElementNodes, SYSTEM_ERROR, Finley_ShapeFunction::Type, Finley_ReferenceElement::Type, and Finley_ElementFile_Jacobeans::volume.
Referenced by Finley_Assemble_getAssembleParameters(), Finley_Assemble_gradient(), and Finley_Assemble_integrate().
void Finley_ElementFile_copyTable | ( | dim_t | , |
Finley_ElementFile * | , | ||
dim_t | , | ||
dim_t | , | ||
Finley_ElementFile * | |||
) |
References Esys_MPIInfo::comm, Finley_noError(), Finley_setError(), Finley_ElementFile::Id, INDEX2, Finley_ElementFile::MPIInfo, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ElementFile::numNodes, Finley_ElementFile::Owner, Finley_ElementFile::Tag, and TYPE_ERROR.
Referenced by Finley_Mesh_joinFaces(), and Finley_Mesh_merge().
void Finley_ElementFile_createColoring | ( | Finley_ElementFile * | in, |
dim_t | numNodes, | ||
dim_t * | degreeOfFreedom | ||
) |
References Finley_ElementFile::Color, FALSE, Finley_checkPtr(), Finley_Util_getMaxInt(), Finley_Util_getMinInt(), INDEX2, Finley_ElementFile::maxColor, Finley_ElementFile::minColor, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ElementFile::numNodes, TMPMEMALLOC, TMPMEMFREE, and TRUE.
Referenced by Finley_Mesh_createColoring().
void Finley_ElementFile_distributeByRankOfDOF | ( | Finley_ElementFile * | self, |
Esys_MPI_rank * | mpiRankOfDOF, | ||
index_t * | Id | ||
) |
References FALSE, Finley_checkPtr(), Finley_ElementFile_allocTable(), INDEX2, MPI_INT, Finley_ElementFile::numNodes, THREAD_MEMALLOC, THREAD_MEMFREE, TMPMEMALLOC, TMPMEMFREE, and TRUE.
Referenced by Finley_Mesh_distributeByRankOfDOF().
void Finley_ElementFile_free | ( | Finley_ElementFile * | ) |
References Esys_MPIInfo_free(), Finley_ElementFile_freeTable(), Finley_ElementFile_Jacobeans_dealloc(), Finley_ReferenceElementSet_dealloc(), Finley_ElementFile::jacobeans, Finley_ElementFile::jacobeans_reducedQ, Finley_ElementFile::jacobeans_reducedS, Finley_ElementFile::jacobeans_reducedS_reducedQ, MEMFREE, Finley_ElementFile::MPIInfo, and Finley_ElementFile::referenceElementSet.
Referenced by Finley_ElementFile_alloc(), Finley_ElementFile_optimizeOrdering(), Finley_Mesh_addPoints(), Finley_Mesh_free(), Finley_Mesh_glueFaces(), Finley_Mesh_joinFaces(), Finley_Mesh_setContactElements(), Finley_Mesh_setElements(), Finley_Mesh_setFaceElements(), and Finley_Mesh_setPoints().
void Finley_ElementFile_freeTable | ( | Finley_ElementFile * | ) |
References Finley_ElementFile::Color, Finley_ElementFile::Id, Finley_ElementFile::maxColor, MEMFREE, Finley_ElementFile::minColor, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ElementFile::numTagsInUse, Finley_ElementFile::Owner, Finley_ElementFile::Tag, and Finley_ElementFile::tagsInUse.
Referenced by Finley_ElementFile_allocTable(), and Finley_ElementFile_free().
void Finley_ElementFile_gather | ( | dim_t * | , |
Finley_ElementFile * | , | ||
Finley_ElementFile * | |||
) |
References Finley_ElementFile::Color, Finley_ElementFile::Id, INDEX2, MAX, Finley_ElementFile::maxColor, MIN, Finley_ElementFile::minColor, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ElementFile::numNodes, Finley_ElementFile::Owner, and Finley_ElementFile::Tag.
Referenced by Finley_ElementFile_optimizeOrdering(), Finley_Mesh_glueFaces(), and Finley_Mesh_joinFaces().
References Finley_ElementFile_setElementDistribution(), Finley_ElementFile::MPIInfo, Esys_MPIInfo::rank, Esys_MPIInfo::size, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Finley_Mesh_saveVTK().
References Finley_ElementFile_setElementDistribution(), Finley_ElementFile::MPIInfo, Esys_MPIInfo::size, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Finley_Mesh_saveVTK().
References Finley_ElementFile_setElementDistribution(), Finley_ElementFile::MPIInfo, Esys_MPIInfo::rank, Esys_MPIInfo::size, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Finley_Mesh_saveVTK().
References Finley_ElementFile_Jacobeans::BasisFunctions, Finley_ElementFile_Jacobeans::DSDX, Finley_checkPtr(), FINLEY_INITIAL_STATUS, Finley_ShapeFunction_reference(), MEMALLOC, Finley_ElementFile_Jacobeans::numDim, Finley_ElementFile_Jacobeans::numElements, Finley_ElementFile_Jacobeans::numQuadTotal, Finley_ElementFile_Jacobeans::status, and Finley_ElementFile_Jacobeans::volume.
Referenced by Finley_ElementFile_alloc().
void Finley_ElementFile_markDOFsConnectedToRange | ( | index_t * | mask, |
index_t | offset, | ||
index_t | marker, | ||
index_t | firstDOF, | ||
index_t | lastDOF, | ||
index_t * | dofIndex, | ||
Finley_ElementFile * | in, | ||
bool_t | useLinear | ||
) |
References Finley_ElementFile::Color, FALSE, Finley_ReferenceElementSet_borrowReferenceElement(), INDEX2, Finley_ReferenceElementInfo::linearNodes, Finley_ElementFile::maxColor, Finley_ElementFile::minColor, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ReferenceElement::numLinearNodes, Finley_ElementFile::numNodes, Finley_ReferenceElementInfo::numNodes, Finley_ElementFile::referenceElementSet, and Finley_ReferenceElement::Type.
Referenced by Finley_Mesh_markDOFsConnectedToRange().
void Finley_ElementFile_markNodes | ( | dim_t * | , |
dim_t | , | ||
dim_t | , | ||
Finley_ElementFile * | , | ||
dim_t | |||
) |
References FALSE, Finley_ReferenceElementSet_borrowReferenceElement(), INDEX2, Finley_ReferenceElementInfo::linearNodes, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, Finley_ReferenceElement::numLinearNodes, Finley_ElementFile::numNodes, Finley_ReferenceElementInfo::numNodes, Finley_ElementFile::referenceElementSet, and Finley_ReferenceElement::Type.
Referenced by Finley_Mesh_markNodes().
void Finley_ElementFile_optimizeOrdering | ( | Finley_ElementFile ** | in | ) |
References Finley_checkPtr(), Finley_ElementFile_alloc(), Finley_ElementFile_allocTable(), Finley_ElementFile_free(), Finley_ElementFile_gather(), Finley_noError(), Finley_Util_sortValueAndIndex(), Finley_Util_ValueAndIndex::index, INDEX2, MIN, Finley_ElementFile::numElements, Finley_ReferenceElementSet::numNodes, Finley_ElementFile::referenceElementSet, TMPMEMALLOC, TMPMEMFREE, and Finley_Util_ValueAndIndex::value.
Referenced by Finley_Mesh_optimizeElementOrdering().
void Finley_ElementFile_relableNodes | ( | dim_t * | , |
dim_t | , | ||
Finley_ElementFile * | |||
) |
References INDEX2, Finley_ElementFile::Nodes, Finley_ElementFile::numElements, and Finley_ElementFile::numNodes.
Referenced by Finley_Mesh_relableElementNodes().
void Finley_ElementFile_scatter | ( | dim_t * | , |
Finley_ElementFile * | , | ||
Finley_ElementFile * | |||
) |
void Finley_ElementFile_setElementDistribution | ( | Finley_ElementFile * | in, |
dim_t * | distribution | ||
) |
References Esys_MPIInfo::comm, MPI_INT, Finley_ElementFile::MPIInfo, Finley_ElementFile::numElements, Finley_ElementFile::Owner, Esys_MPIInfo::rank, and Esys_MPIInfo::size.
Referenced by Finley_ElementFile_getFirstElement(), Finley_ElementFile_getGlobalNumElements(), and Finley_ElementFile_getMyNumElements().
void Finley_ElementFile_setNodeRange | ( | dim_t * | , |
dim_t * | , | ||
Finley_ElementFile * | |||
) |
void Finley_ElementFile_setTags | ( | Finley_ElementFile * | , |
const int | , | ||
escriptDataC * | |||
) |
References FALSE, Finley_Assemble_reducedIntegrationOrder, Finley_ElementFile_setTagsInUse(), Finley_noError(), Finley_ReferenceElementSet_borrowReferenceElement(), Finley_resetError(), Finley_setError(), getDataPointSize(), getSampleDataRO(), isExpanded(), Finley_ElementFile::numElements, Finley_ShapeFunction::numQuadNodes, numSamplesEqual(), Finley_ReferenceElement::Parametrization, and TYPE_ERROR.
Referenced by finley::MeshAdapter::setTags().
void Finley_ElementFile_setTagsInUse | ( | Finley_ElementFile * | in | ) |
References Finley_noError(), Finley_Util_setValuesInUse(), MEMFREE, Finley_ElementFile::MPIInfo, Finley_ElementFile::numElements, Finley_ElementFile::numTagsInUse, Finley_ElementFile::Tag, and Finley_ElementFile::tagsInUse.
Referenced by Finley_ElementFile_setTags(), Finley_Mesh_setTagsInUse(), and finley::rectangle().