Go to the documentation of this file.
18 #ifndef __FINLEY_ELEMENTFILE_H__
19 #define __FINLEY_ELEMENTFILE_H__
28 struct ElementFile_Jacobians
95 void markNodes(std::vector<short>& mask,
int offset,
bool useLinear);
186 #endif // __FINLEY_ELEMENTFILE_H__
ElementFile_Jacobians(const_ShapeFunction_ptr basis)
Definition: finley/src/ElementFile_jacobians.cpp:37
ElementFile_Jacobians * jacobians_reducedS_reducedQ
Definition: finley/src/ElementFile.h:185
index_t minColor
minimum color value
Definition: finley/src/ElementFile.h:167
void scatter(index_t *index, const ElementFile *in)
Definition: finley/src/ElementFile.cpp:158
void gather(const index_t *index, const ElementFile *in)
Definition: finley/src/ElementFile.cpp:139
ElementFile_Jacobians * jacobians
jacobians of the shape function used for solution approximation
Definition: finley/src/ElementFile.h:173
void allocTable(dim_t NE)
allocates the element table within an element file to hold NE elements
Definition: finley/src/ElementFile.cpp:79
ElementFile_Jacobians * jacobians_reducedS
Definition: finley/src/ElementFile.h:177
int numShapesTotal
total number of shape functions = BasisFunctions->numShapes * numSides
Definition: finley/src/ElementFile.h:77
boost::shared_ptr< const ReferenceElementSet > const_ReferenceElementSet_ptr
Definition: ReferenceElementSets.h:94
int * Tag
Tag[i] is the tag of element i.
Definition: finley/src/ElementFile.h:143
double * volume
local volume
Definition: finley/src/ElementFile.h:84
const int * node_selection
Definition: finley/src/ElementFile.h:80
Definition: finley/src/ElementFile.h:42
void createColoring(const IndexVector &dofMap)
Tries to reduce the number of colours used to colour the elements.
Definition: finley/src/ElementFile.cpp:263
void relabelNodes(const IndexVector &newNode, index_t offset)
~ElementFile()
destructor
Definition: finley/src/ElementFile.cpp:69
void setTags(const int newTag, const escript::Data &mask)
Definition: finley/src/ElementFile.cpp:230
index_t * Nodes
Definition: finley/src/ElementFile.h:158
std::pair< index_t, index_t > getNodeRange() const
Definition: finley/src/ElementFile.h:188
void distributeByRankOfDOF(const std::vector< int > &mpiRankOfDOF, index_t *nodesId)
redistributes the elements including overlap by rank
Definition: finley/src/ElementFile.cpp:344
index_t maxColor
maximum color value
Definition: finley/src/ElementFile.h:170
ElementFile(const_ReferenceElementSet_ptr refElementSet, escript::JMPI mpiInfo)
Definition: finley/src/ElementFile.cpp:43
void setValuesInUse(const int *values, dim_t numValues, std::vector< int > &valuesInUse, escript::JMPI mpiinfo)
Definition: finley/src/Util.cpp:371
~ElementFile_Jacobians()
Definition: finley/src/ElementFile_jacobians.cpp:48
dim_t numElements
number of elements
Definition: finley/src/ElementFile.h:136
ElementFile_Jacobians * jacobians_reducedQ
Definition: finley/src/ElementFile.h:181
dim_t numElements
number of elements
Definition: finley/src/ElementFile.h:82
int * Owner
Owner[i] contains the rank that owns element i.
Definition: finley/src/ElementFile.h:146
Data represents a collection of datapoints.
Definition: Data.h:64
index_t dim_t
Definition: DataTypes.h:93
escript::JMPI MPIInfo
Definition: finley/src/ElementFile.h:131
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:72
void freeTable()
deallocates the element table within an element file
Definition: finley/src/ElementFile.cpp:105
IndexPair getMinMaxInt(int dim, dim_t N, const index_t *values)
Definition: finley/src/Util.cpp:306
int numQuadTotal
Definition: finley/src/ElementFile.h:69
index_t * Color
Definition: finley/src/ElementFile.h:164
index_t * Id
Definition: finley/src/ElementFile.h:140
const int * offsets
offset to sides (borrowed reference)
Definition: finley/src/ElementFile.h:73
int status
status of mesh when jacobians were updated last time
Definition: finley/src/ElementFile.h:62
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:88
Definition: finley/src/NodeFile.h:41
ElementFile_Jacobians * borrowJacobians(const NodeFile *, bool, bool) const
Definition: finley/src/ElementFile_jacobians.cpp:55
void copyTable(index_t offset, index_t nodeOffset, index_t idOffset, const ElementFile *in)
Definition: finley/src/ElementFile.cpp:120
void swapTable(ElementFile *other)
Definition: finley/src/ElementFile.cpp:175
void markNodes(std::vector< short > &mask, int offset, bool useLinear)
Definition: finley/src/ElementFile.cpp:319
int numSides
number of sides (=1 normal, =2 contact)
Definition: finley/src/ElementFile.h:71
std::vector< int > tagsInUse
array of tags which are actually used
Definition: finley/src/ElementFile.h:149
Definition: finley/src/ElementFile.h:76
int numDim
number of spatial dimensions
Definition: finley/src/ElementFile.h:64
boost::shared_ptr< const ShapeFunction > const_ShapeFunction_ptr
Definition: ShapeFunctions.h:100
const_ShapeFunction_ptr BasisFunctions
basis function used
Definition: finley/src/ElementFile.h:66
double * DSDX
Definition: finley/src/ElementFile.h:87
const_ReferenceElementSet_ptr referenceElementSet
the reference element to be used
Definition: finley/src/ElementFile.h:134
void optimizeOrdering()
reorders the elements so that they are stored close to the nodes
Definition: finley/src/ElementFile.cpp:188
void updateTagList()
Definition: finley/src/ElementFile.h:193
int numSub
number of subelements
Definition: finley/src/ElementFile.h:75
A suite of factory methods for creating various finley domains.
Definition: finley/src/Assemble.h:32
std::vector< index_t > IndexVector
Definition: DataTypes.h:91
int numNodes
number of nodes per element
Definition: finley/src/ElementFile.h:152