escript
Revision_
|
#include "Dudley.h"
#include "NodeMapping.h"
#include "escript/DataC.h"
#include "paso/Distribution.h"
#include "paso/Coupler.h"
Go to the source code of this file.
Classes | |
struct | Dudley_NodeFile |
Macros | |
#define | MAX_numDim 3 |
Typedefs | |
typedef struct Dudley_NodeFile | Dudley_NodeFile |
#define MAX_numDim 3 |
Referenced by Dudley_Mesh_findMatchingFaces(), and Dudley_Mesh_findMatchingFaces_compar().
typedef struct Dudley_NodeFile Dudley_NodeFile |
Dudley_NodeFile* Dudley_NodeFile_alloc | ( | dim_t | , |
esysUtils::JMPI & | MPIInfo | ||
) |
References Dudley_NodeFile::Coordinates, Dudley_NodeFile::degreesOfFreedomId, Dudley_NodeFile::degreesOfFreedomMapping, Dudley_checkPtr(), DUDLEY_INITIAL_STATUS, Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedDOFIndex, Dudley_NodeFile::globalReducedNodesIndex, Dudley_NodeFile::Id, Dudley_NodeFile::MPIInfo, Dudley_NodeFile::nodesMapping, Dudley_NodeFile::numDim, Dudley_NodeFile::numNodes, Dudley_NodeFile::numTagsInUse, Dudley_NodeFile::reducedDegreesOfFreedomId, Dudley_NodeFile::reducedDegreesOfFreedomMapping, Dudley_NodeFile::reducedNodesId, Dudley_NodeFile::reducedNodesMapping, Dudley_NodeFile::status, Dudley_NodeFile::Tag, and Dudley_NodeFile::tagsInUse.
Referenced by Dudley_Mesh_alloc(), and Dudley_Mesh_resolveNodeIds().
void Dudley_NodeFile_allocTable | ( | Dudley_NodeFile * | , |
dim_t | |||
) |
References Dudley_NodeFile::Coordinates, Dudley_NodeFile::degreesOfFreedomId, Dudley_checkPtr(), Dudley_NodeFile_freeTable(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedDOFIndex, Dudley_NodeFile::globalReducedNodesIndex, Dudley_NodeFile::Id, INDEX2, Dudley_NodeFile::numDim, Dudley_NodeFile::numNodes, Dudley_NodeFile::reducedDegreesOfFreedomId, Dudley_NodeFile::reducedNodesId, and Dudley_NodeFile::Tag.
Referenced by Dudley_Mesh_read(), Dudley_Mesh_readGmsh(), Dudley_Mesh_resolveNodeIds(), Dudley_TriangularMesh_Tet4(), Dudley_TriangularMesh_Tri3(), and dudley::loadMesh().
void Dudley_NodeFile_assignMPIRankToDOFs | ( | Dudley_NodeFile * | in, |
Esys_MPI_rank * | mpiRankOfDOF, | ||
index_t * | distribution | ||
) |
References Dudley_NodeFile_setDOFRange(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_Mesh_distributeByRankOfDOF().
index_t* Dudley_NodeFile_borrowDegreesOfFreedomTarget | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::degreesOfFreedomMapping, and Dudley_NodeMapping::map.
index_t* Dudley_NodeFile_borrowGlobalNodesIndex | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::globalNodesIndex.
Referenced by dudley::MeshAdapter::ownSample().
index_t* Dudley_NodeFile_borrowGlobalReducedNodesIndex | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::globalReducedNodesIndex.
Referenced by dudley::MeshAdapter::ownSample().
index_t* Dudley_NodeFile_borrowNodesTarget | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeMapping::map, and Dudley_NodeFile::nodesMapping.
index_t* Dudley_NodeFile_borrowReducedDegreesOfFreedomTarget | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeMapping::map, and Dudley_NodeFile::reducedDegreesOfFreedomMapping.
index_t* Dudley_NodeFile_borrowReducedNodesTarget | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeMapping::map, and Dudley_NodeFile::reducedNodesMapping.
index_t* Dudley_NodeFile_borrowTargetDegreesOfFreedom | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::degreesOfFreedomMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
index_t* Dudley_NodeFile_borrowTargetNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::nodesMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
index_t* Dudley_NodeFile_borrowTargetReducedDegreesOfFreedom | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::reducedDegreesOfFreedomMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
index_t* Dudley_NodeFile_borrowTargetReducedNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::reducedNodesMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
void Dudley_NodeFile_copyTable | ( | dim_t | , |
Dudley_NodeFile * | , | ||
dim_t | , | ||
dim_t | , | ||
Dudley_NodeFile * | |||
) |
dim_t Dudley_NodeFile_createDenseDOFLabeling | ( | Dudley_NodeFile * | ) |
dim_t Dudley_NodeFile_createDenseNodeLabeling | ( | Dudley_NodeFile * | in, |
index_t * | node_distribution, | ||
const index_t * | dof_distribution | ||
) |
References Dudley_checkPtr(), ESYS_MPI_INC_COUNTER, Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::Id, INDEX_T_MAX, MAX, MIN, esysUtils::mod_rank(), MPI_INT, MPI_MAX, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_Mesh_prepare().
dim_t Dudley_NodeFile_createDenseReducedDOFLabeling | ( | Dudley_NodeFile * | in, |
index_t * | reducedNodeMask | ||
) |
References Dudley_checkPtr(), Dudley_NodeFile_setGlobalDOFRange(), ESYS_MPI_INC_COUNTER, Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalReducedDOFIndex, esysUtils::mod_rank(), MPI_INT, MPI_SUM, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_Mesh_prepare().
dim_t Dudley_NodeFile_createDenseReducedNodeLabeling | ( | Dudley_NodeFile * | in, |
index_t * | reducedNodeMask | ||
) |
References Dudley_checkPtr(), Dudley_NodeFile_setGlobalNodeIDIndexRange(), ESYS_MPI_INC_COUNTER, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedNodesIndex, esysUtils::mod_rank(), MPI_INT, MPI_SUM, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_Mesh_prepare().
void Dudley_NodeFile_free | ( | Dudley_NodeFile * | ) |
References Dudley_NodeFile_freeTable().
Referenced by Dudley_Mesh_free(), and Dudley_Mesh_resolveNodeIds().
void Dudley_NodeFile_freeTable | ( | Dudley_NodeFile * | ) |
References Dudley_NodeFile::Coordinates, Dudley_NodeFile::degreesOfFreedomConnector, Dudley_NodeFile::degreesOfFreedomDistribution, Dudley_NodeFile::degreesOfFreedomId, Dudley_NodeFile::degreesOfFreedomMapping, Dudley_NodeMapping_free(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedDOFIndex, Dudley_NodeFile::globalReducedNodesIndex, Dudley_NodeFile::Id, Dudley_NodeFile::nodesDistribution, Dudley_NodeFile::nodesMapping, Dudley_NodeFile::numNodes, Dudley_NodeFile::numTagsInUse, Dudley_NodeFile::reducedDegreesOfFreedomConnector, Dudley_NodeFile::reducedDegreesOfFreedomDistribution, Dudley_NodeFile::reducedDegreesOfFreedomId, Dudley_NodeFile::reducedDegreesOfFreedomMapping, Dudley_NodeFile::reducedNodesDistribution, Dudley_NodeFile::reducedNodesId, Dudley_NodeFile::reducedNodesMapping, Dudley_NodeFile::Tag, and Dudley_NodeFile::tagsInUse.
Referenced by Dudley_NodeFile_allocTable(), and Dudley_NodeFile_free().
void Dudley_NodeFile_gather | ( | index_t * | , |
Dudley_NodeFile * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_gather_global | ( | index_t * | , |
Dudley_NodeFile * | , | ||
Dudley_NodeFile * | |||
) |
References Dudley_NodeFile::Coordinates, Dudley_checkPtr(), Dudley_NodeFile_gatherEntries(), Dudley_NodeFile_scatterEntries(), Dudley_NodeFile_setGlobalIdRange(), Dudley_setError(), ESYS_MPI_INC_COUNTER, esysUtils::Esys_MPIInfo_noError(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::Id, esysUtils::mod_rank(), MPI_DOUBLE, MPI_INT, Dudley_NodeFile::MPIInfo, Dudley_NodeFile::numDim, Dudley_NodeFile::numNodes, Dudley_NodeFile::Tag, and VALUE_ERROR.
Referenced by Dudley_Mesh_resolveNodeIds().
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 * | |||
) |
References INDEX2.
Referenced by Dudley_NodeFile_gather(), and Dudley_NodeFile_gather_global().
index_t Dudley_NodeFile_getFirstNode | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::nodesDistribution.
Referenced by dudley::MeshAdapter::ownSample().
index_t Dudley_NodeFile_getFirstReducedNode | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::reducedNodesDistribution.
Referenced by dudley::MeshAdapter::ownSample().
dim_t Dudley_NodeFile_getGlobalNumNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::nodesDistribution.
Referenced by dudley::MeshAdapter::getNumDataPointsGlobal().
dim_t Dudley_NodeFile_getGlobalNumReducedNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::reducedNodesDistribution.
index_t Dudley_NodeFile_getLastNode | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::nodesDistribution.
Referenced by dudley::MeshAdapter::ownSample().
index_t Dudley_NodeFile_getLastReducedNode | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::reducedNodesDistribution.
Referenced by dudley::MeshAdapter::ownSample().
dim_t Dudley_NodeFile_getNumDegreesOfFreedom | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::degreesOfFreedomDistribution.
Referenced by Dudley_Assemble_CopyNodalData(), Dudley_Assemble_interpolate(), and dudley::MeshAdapter::getDataShape().
dim_t Dudley_NodeFile_getNumNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile::nodesMapping, and Dudley_NodeMapping::numNodes.
Referenced by Dudley_Assemble_CopyNodalData(), Dudley_Assemble_interpolate(), and dudley::MeshAdapter::getDataShape().
dim_t Dudley_NodeFile_getNumReducedDegreesOfFreedom | ( | Dudley_NodeFile * | in | ) |
dim_t Dudley_NodeFile_getNumReducedNodes | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeMapping::numTargets, and Dudley_NodeFile::reducedNodesMapping.
Referenced by Dudley_Assemble_CopyNodalData(), Dudley_Assemble_interpolate(), and dudley::MeshAdapter::getDataShape().
index_t Dudley_NodeFile_GlobalDegreeOfFreedomIndex | ( | Dudley_NodeFile * | in | ) |
index_t Dudley_NodeFile_GlobalReducedDegreeOfFreedomIndex | ( | Dudley_NodeFile * | in | ) |
index_t Dudley_NodeFile_maxGlobalDegreeOfFreedomIndex | ( | Dudley_NodeFile * | ) |
References Dudley_NodeFile_setGlobalDOFRange().
index_t Dudley_NodeFile_maxGlobalNodeIDIndex | ( | Dudley_NodeFile * | in | ) |
References Dudley_NodeFile_setGlobalNodeIDIndexRange().
index_t Dudley_NodeFile_maxGlobalReducedDegreeOfFreedomIndex | ( | Dudley_NodeFile * | ) |
index_t Dudley_NodeFile_maxGlobalReducedNodeIDIndex | ( | Dudley_NodeFile * | in | ) |
void Dudley_NodeFile_scatter | ( | index_t * | , |
Dudley_NodeFile * | , | ||
Dudley_NodeFile * | |||
) |
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 * | |||
) |
References INDEX2.
Referenced by Dudley_NodeFile_gather_global(), and Dudley_NodeFile_scatter().
void Dudley_NodeFile_setCoordinates | ( | Dudley_NodeFile * | , |
const escript::Data * | |||
) |
References Dudley_increaseStatus, Dudley_setError(), getDataPointSize(), getSampleDataROFast(), INDEX2, LenErrorMsg_MAX, numSamplesEqual(), and VALUE_ERROR.
Referenced by Dudley_Mesh_setCoordinates().
void Dudley_NodeFile_setDOFGlobalRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_setDOFRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_setGlobalDOFRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
References Dudley_Util_getMaxInt(), Dudley_Util_getMinInt(), Dudley_NodeFile::globalDegreesOfFreedom, MPI_INT, MPI_MAX, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_NodeFile_createDenseDOFLabeling(), Dudley_NodeFile_createDenseReducedDOFLabeling(), and Dudley_NodeFile_maxGlobalDegreeOfFreedomIndex().
void Dudley_NodeFile_setGlobalIdRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
References Dudley_Util_getMaxInt(), Dudley_Util_getMinInt(), Dudley_NodeFile::Id, MPI_INT, MPI_MAX, Dudley_NodeFile::MPIInfo, and Dudley_NodeFile::numNodes.
Referenced by Dudley_NodeFile_gather(), and Dudley_NodeFile_gather_global().
void Dudley_NodeFile_setGlobalNodeIDIndexRange | ( | index_t * | min_id, |
index_t * | max_id, | ||
Dudley_NodeFile * | in | ||
) |
void Dudley_NodeFile_setGlobalReducedDegreeOfFreedomRange | ( | index_t * | min_id, |
index_t * | max_id, | ||
Dudley_NodeFile * | in | ||
) |
void Dudley_NodeFile_setGlobalReducedNodeIDIndexRange | ( | index_t * | min_id, |
index_t * | max_id, | ||
Dudley_NodeFile * | in | ||
) |
void Dudley_NodeFile_setIdGlobalRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_setIdRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_setReducedDOFRange | ( | index_t * | , |
index_t * | , | ||
Dudley_NodeFile * | |||
) |
void Dudley_NodeFile_setTags | ( | Dudley_NodeFile * | , |
const int | , | ||
const escript::Data * | |||
) |
References Dudley_NodeFile_setTagsInUse(), Dudley_noError(), Dudley_resetError(), Dudley_setError(), getDataPointSize(), getSampleDataRO(), numSamplesEqual(), and TYPE_ERROR.
Referenced by dudley::MeshAdapter::setTags().
void Dudley_NodeFile_setTagsInUse | ( | Dudley_NodeFile * | in | ) |