17 #ifndef INC_DUDLEY_NODEFILE 18 #define INC_DUDLEY_NODEFILE 24 #include "escript/DataC.h" 25 #include "paso/Distribution.h" 26 #include "paso/Coupler.h" 123 const index_t * dof_distribution);
dim_t Dudley_NodeFile_createDenseReducedNodeLabeling(Dudley_NodeFile *in, index_t *reducedNodeMask)
Definition: NodeFile_createDenseLabelings.cpp:482
void Dudley_NodeFile_freeTable(Dudley_NodeFile *)
Definition: NodeFile_allocTable.cpp:109
index_t * Dudley_NodeFile_borrowDegreesOfFreedomTarget(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:290
index_t * Dudley_NodeFile_borrowTargetReducedNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:230
void Dudley_NodeFile_setGlobalReducedDegreeOfFreedomRange(index_t *min_id, index_t *max_id, Dudley_NodeFile *in)
Definition: NodeFile_setIdRange.cpp:134
dim_t Dudley_NodeFile_createDenseReducedDOFLabeling(Dudley_NodeFile *in, index_t *reducedNodeMask)
Definition: NodeFile_createDenseLabelings.cpp:203
index_t * Dudley_NodeFile_borrowGlobalNodesIndex(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:169
paso::Distribution_ptr reducedDegreesOfFreedomDistribution
Definition: dudley/src/NodeFile.h:57
void Dudley_NodeFile_setDOFRange(index_t *, index_t *, Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:98
Dudley_NodeMapping * reducedDegreesOfFreedomMapping
Definition: dudley/src/NodeFile.h:52
void Dudley_NodeFile_setIdGlobalRange(index_t *, index_t *, Dudley_NodeFile *)
dim_t Dudley_NodeFile_getNumReducedNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:181
index_t * Dudley_NodeFile_borrowTargetReducedDegreesOfFreedom(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:266
void Dudley_NodeFile_setGlobalIdRange(index_t *, index_t *, Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:33
index_t * reducedNodesId
Definition: dudley/src/NodeFile.h:63
void Dudley_NodeFile_setIdRange(index_t *, index_t *, Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:60
index_t Dudley_NodeFile_getLastNode(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:143
void Dudley_NodeFile_free(Dudley_NodeFile *)
Definition: dudley/src/NodeFile.cpp:72
void Dudley_NodeFile_setDOFGlobalRange(index_t *, index_t *, Dudley_NodeFile *)
void Dudley_NodeFile_copyTable(dim_t, Dudley_NodeFile *, dim_t, dim_t, Dudley_NodeFile *)
Definition: NodeFile_copyTable.cpp:33
dim_t Dudley_NodeFile_getNumReducedDegreesOfFreedom(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:218
index_t * Dudley_NodeFile_borrowReducedDegreesOfFreedomTarget(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:314
void Dudley_NodeFile_scatter(index_t *, Dudley_NodeFile *, Dudley_NodeFile *)
Definition: NodeFile_scatter.cpp:59
void Dudley_NodeFile_setGlobalReducedNodeIDIndexRange(index_t *min_id, index_t *max_id, Dudley_NodeFile *in)
Definition: NodeFile_setIdRange.cpp:202
index_t * reducedDegreesOfFreedomId
Definition: dudley/src/NodeFile.h:65
Dudley_NodeFile * Dudley_NodeFile_alloc(dim_t, esysUtils::JMPI &MPIInfo)
Definition: dudley/src/NodeFile.cpp:35
paso::Distribution_ptr nodesDistribution
Definition: dudley/src/NodeFile.h:54
dim_t Dudley_NodeFile_createDenseNodeLabeling(Dudley_NodeFile *in, index_t *node_distribution, const index_t *dof_distribution)
Definition: NodeFile_createDenseLabelings.cpp:338
index_t Dudley_NodeFile_getFirstReducedNode(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:81
dim_t Dudley_NodeFile_getNumDegreesOfFreedom(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:194
void Dudley_NodeFile_setTagsInUse(Dudley_NodeFile *in)
Definition: NodeFile_allocTable.cpp:144
boost::shared_ptr< Distribution > Distribution_ptr
Definition: Distribution.h:36
void Dudley_NodeFile_gather_global(index_t *, Dudley_NodeFile *, Dudley_NodeFile *)
Definition: NodeFile_gather.cpp:68
dim_t numTagsInUse
Definition: dudley/src/NodeFile.h:36
index_t Dudley_NodeFile_GlobalReducedDegreeOfFreedomIndex(Dudley_NodeFile *in)
int numDim
Definition: dudley/src/NodeFile.h:32
dim_t Dudley_NodeFile_getNumNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:206
void Dudley_NodeFile_setTags(Dudley_NodeFile *, const int, const escript::Data *)
Definition: NodeFile_setTags.cpp:33
paso::Connector_ptr degreesOfFreedomConnector
Definition: dudley/src/NodeFile.h:59
Dudley_NodeMapping * nodesMapping
Definition: dudley/src/NodeFile.h:49
void Dudley_NodeFile_scatterEntries(dim_t, index_t *, index_t, index_t, index_t *, index_t *, index_t *, index_t *, index_t *, index_t *, dim_t numDim, double *, double *)
Definition: NodeFile_scatter.cpp:34
index_t Dudley_NodeFile_maxGlobalNodeIDIndex(Dudley_NodeFile *in)
Definition: NodeFile_setIdRange.cpp:161
index_t * Id
Definition: dudley/src/NodeFile.h:33
index_t * globalReducedDOFIndex
Definition: dudley/src/NodeFile.h:43
dim_t Dudley_NodeFile_getGlobalNumReducedNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:106
void Dudley_NodeFile_gather(index_t *, Dudley_NodeFile *, Dudley_NodeFile *)
Definition: NodeFile_gather.cpp:57
void Dudley_NodeFile_setGlobalDOFRange(index_t *, index_t *, Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:71
index_t * Dudley_NodeFile_borrowTargetNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:254
index_t * Dudley_NodeFile_borrowGlobalReducedNodesIndex(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:119
index_t Dudley_NodeFile_maxGlobalReducedDegreeOfFreedomIndex(Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:127
void Dudley_NodeFile_allocTable(Dudley_NodeFile *, dim_t)
Definition: NodeFile_allocTable.cpp:34
index_t Dudley_NodeFile_maxGlobalReducedNodeIDIndex(Dudley_NodeFile *in)
Definition: NodeFile_setIdRange.cpp:195
Data represents a collection of datapoints.
Definition: Data.h:68
esysUtils::JMPI MPIInfo
Definition: dudley/src/NodeFile.h:29
double * Coordinates
Definition: dudley/src/NodeFile.h:41
index_t * globalReducedNodesIndex
Definition: dudley/src/NodeFile.h:45
dim_t numNodes
Definition: dudley/src/NodeFile.h:31
Dudley_NodeMapping * degreesOfFreedomMapping
Definition: dudley/src/NodeFile.h:51
index_t * Dudley_NodeFile_borrowReducedNodesTarget(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:278
void Dudley_NodeFile_gatherEntries(dim_t, index_t *, index_t, index_t, index_t *, index_t *, index_t *, index_t *, index_t *, index_t *, dim_t numDim, double *, double *)
Definition: NodeFile_gather.cpp:33
index_t Dudley_NodeFile_maxGlobalDegreeOfFreedomIndex(Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:120
index_t Dudley_NodeFile_getLastReducedNode(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:93
int index_t
Definition: types.h:24
paso::Distribution_ptr degreesOfFreedomDistribution
Definition: dudley/src/NodeFile.h:56
int Esys_MPI_rank
Definition: Esys_MPI.h:59
void Dudley_NodeFile_setReducedDOFRange(index_t *, index_t *, Dudley_NodeFile *)
Definition: NodeFile_setIdRange.cpp:109
Definition: dudley/src/NodeFile.h:28
paso::Distribution_ptr reducedNodesDistribution
Definition: dudley/src/NodeFile.h:55
int status
Definition: dudley/src/NodeFile.h:67
index_t * Dudley_NodeFile_borrowTargetDegreesOfFreedom(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:242
boost::shared_ptr< Connector > Connector_ptr
Definition: Coupler.h:35
index_t * Tag
Definition: dudley/src/NodeFile.h:34
index_t dim_t
Definition: types.h:27
dim_t Dudley_NodeFile_getGlobalNumNodes(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:156
dim_t Dudley_NodeFile_createDenseDOFLabeling(Dudley_NodeFile *)
Definition: NodeFile_createDenseLabelings.cpp:33
index_t * tagsInUse
Definition: dudley/src/NodeFile.h:35
index_t Dudley_NodeFile_getFirstNode(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:131
index_t * globalNodesIndex
Definition: dudley/src/NodeFile.h:47
paso::Connector_ptr reducedDegreesOfFreedomConnector
Definition: dudley/src/NodeFile.h:60
void Dudley_NodeFile_assignMPIRankToDOFs(Dudley_NodeFile *in, Esys_MPI_rank *mpiRankOfDOF, index_t *distribution)
Definition: NodeFile_createDenseLabelings.cpp:173
Dudley_NodeMapping * reducedNodesMapping
Definition: dudley/src/NodeFile.h:50
void Dudley_NodeFile_setCoordinates(Dudley_NodeFile *, const escript::Data *)
Definition: NodeFile_setCoordinates.cpp:33
Definition: dudley/src/NodeMapping.h:27
index_t * globalDegreesOfFreedom
Definition: dudley/src/NodeFile.h:38
boost::shared_ptr< JMPI_ > JMPI
Definition: Esys_MPI.h:79
index_t Dudley_NodeFile_GlobalDegreeOfFreedomIndex(Dudley_NodeFile *in)
index_t * Dudley_NodeFile_borrowNodesTarget(Dudley_NodeFile *in)
Definition: dudley/src/NodeFile.cpp:302
index_t * degreesOfFreedomId
Definition: dudley/src/NodeFile.h:64
void Dudley_NodeFile_setGlobalNodeIDIndexRange(index_t *min_id, index_t *max_id, Dudley_NodeFile *in)
Definition: NodeFile_setIdRange.cpp:168