ESYS13
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.
#define MAX_numDim 3 |
typedef struct Dudley_NodeFile Dudley_NodeFile |
Dudley_NodeFile* Dudley_NodeFile_alloc | ( | dim_t | , |
Esys_MPIInfo * | MPIInfo | ||
) |
References Dudley_NodeFile::Coordinates, Dudley_NodeFile::degreesOfFreedomConnector, Dudley_NodeFile::degreesOfFreedomDistribution, Dudley_NodeFile::degreesOfFreedomId, Dudley_NodeFile::degreesOfFreedomMapping, Dudley_checkPtr(), DUDLEY_INITIAL_STATUS, Esys_MPIInfo_getReference(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedDOFIndex, Dudley_NodeFile::globalReducedNodesIndex, Dudley_NodeFile::Id, MEMALLOC, Dudley_NodeFile::MPIInfo, Dudley_NodeFile::nodesDistribution, Dudley_NodeFile::nodesMapping, Dudley_NodeFile::numDim, 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::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, MEMALLOC, MEMFREE, Dudley_NodeFile::numDim, Dudley_NodeFile::numNodes, Finley_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::degreesOfFreedomMapping, and Dudley_NodeMapping::map.
References Dudley_NodeFile::globalNodesIndex.
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Dudley_NodeFile::globalReducedNodesIndex.
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Dudley_NodeMapping::map, and Dudley_NodeFile::nodesMapping.
References Dudley_NodeMapping::map, and Dudley_NodeFile::reducedDegreesOfFreedomMapping.
References Dudley_NodeMapping::map, and Dudley_NodeFile::reducedNodesMapping.
References Dudley_NodeFile::degreesOfFreedomMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
References Dudley_NodeFile::nodesMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
References Dudley_NodeFile::reducedDegreesOfFreedomMapping, and Dudley_NodeMapping::target.
Referenced by Dudley_Assemble_interpolate().
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 * | |||
) |
References Esys_MPIInfo::comm, Dudley_checkPtr(), Dudley_NodeFile_setGlobalDOFRange(), Esys_MPIInfo_mod(), Esys_MPIInfo_setDistribution(), FALSE, Dudley_NodeFile::globalDegreesOfFreedom, MPI_INT, Dudley_NodeFile::MPIInfo, Finley_NodeFile::MPIInfo, Esys_MPIInfo::msg_tag_counter, Dudley_NodeFile::numNodes, Esys_MPIInfo::rank, Esys_MPIInfo::size, Finley_NodeFile::status, TMPMEMALLOC, TMPMEMFREE, and TRUE.
Referenced by Dudley_Mesh_prepare().
dim_t Dudley_NodeFile_createDenseNodeLabeling | ( | Dudley_NodeFile * | in, |
index_t * | node_distribution, | ||
const index_t * | dof_distribution | ||
) |
References Esys_MPIInfo::comm, Dudley_checkPtr(), Esys_MPIInfo_mod(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::Id, INDEX_T_MAX, MAX, MIN, MPI_INT, Dudley_NodeFile::MPIInfo, Finley_NodeFile::MPIInfo, Esys_MPIInfo::msg_tag_counter, Dudley_NodeFile::numNodes, Esys_MPIInfo::rank, Esys_MPIInfo::size, Finley_NodeFile::status, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Dudley_Mesh_prepare().
dim_t Dudley_NodeFile_createDenseReducedDOFLabeling | ( | Dudley_NodeFile * | in, |
index_t * | reducedNodeMask | ||
) |
References Esys_MPIInfo::comm, Dudley_checkPtr(), Dudley_NodeFile_setGlobalDOFRange(), Esys_MPIInfo_mod(), Esys_MPIInfo_setDistribution(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::globalReducedDOFIndex, MPI_INT, Dudley_NodeFile::MPIInfo, Finley_NodeFile::MPIInfo, Esys_MPIInfo::msg_tag_counter, Dudley_NodeFile::numNodes, Esys_MPIInfo::rank, Esys_MPIInfo::size, Finley_NodeFile::status, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Dudley_Mesh_prepare().
dim_t Dudley_NodeFile_createDenseReducedNodeLabeling | ( | Dudley_NodeFile * | in, |
index_t * | reducedNodeMask | ||
) |
References Esys_MPIInfo::comm, Dudley_checkPtr(), Dudley_NodeFile_setGlobalNodeIDIndexRange(), Esys_MPIInfo_mod(), Esys_MPIInfo_setDistribution(), Dudley_NodeFile::globalNodesIndex, Dudley_NodeFile::globalReducedNodesIndex, MPI_INT, Dudley_NodeFile::MPIInfo, Finley_NodeFile::MPIInfo, Esys_MPIInfo::msg_tag_counter, Dudley_NodeFile::numNodes, Esys_MPIInfo::rank, Esys_MPIInfo::size, Finley_NodeFile::status, TMPMEMALLOC, and TMPMEMFREE.
Referenced by Dudley_Mesh_prepare().
void Dudley_NodeFile_free | ( | Dudley_NodeFile * | ) |
References Dudley_NodeFile_freeTable(), Esys_MPIInfo_free(), MEMFREE, and Dudley_NodeFile::MPIInfo.
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, MEMFREE, Dudley_NodeFile::nodesDistribution, Dudley_NodeFile::nodesMapping, Dudley_NodeFile::numNodes, Dudley_NodeFile::numTagsInUse, Paso_Connector_free(), Paso_Distribution_free(), 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 Esys_MPIInfo::comm, Dudley_NodeFile::Coordinates, Dudley_checkPtr(), Dudley_NodeFile_gatherEntries(), Dudley_NodeFile_scatterEntries(), Dudley_NodeFile_setGlobalIdRange(), Dudley_setError(), Esys_MPIInfo_mod(), Esys_MPIInfo_noError(), Esys_MPIInfo_setDistribution(), Dudley_NodeFile::globalDegreesOfFreedom, Dudley_NodeFile::Id, MPI_DOUBLE, MPI_INT, Dudley_NodeFile::MPIInfo, Finley_NodeFile::MPIInfo, Esys_MPIInfo::msg_tag_counter, Dudley_NodeFile::numDim, Dudley_NodeFile::numNodes, Esys_MPIInfo::rank, Esys_MPIInfo::size, Finley_NodeFile::status, Dudley_NodeFile::Tag, TMPMEMALLOC, TMPMEMFREE, 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().
References Dudley_NodeFile::nodesDistribution, and Paso_Distribution_getFirstComponent().
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Paso_Distribution_getFirstComponent(), and Dudley_NodeFile::reducedNodesDistribution.
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Dudley_NodeFile::nodesDistribution, and Paso_Distribution_getGlobalNumComponents().
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::getNumDataPointsGlobal().
References Paso_Distribution_getGlobalNumComponents(), and Dudley_NodeFile::reducedNodesDistribution.
Referenced by Dudley_Mesh_saveVTK().
References Dudley_NodeFile::nodesDistribution, and Paso_Distribution_getLastComponent().
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Paso_Distribution_getLastComponent(), and Dudley_NodeFile::reducedNodesDistribution.
Referenced by Dudley_Mesh_saveVTK(), and dudley::MeshAdapter::ownSample().
References Dudley_NodeFile::nodesMapping, and Dudley_NodeMapping::numNodes.
Referenced by Dudley_Assemble_CopyNodalData(), Dudley_Assemble_interpolate(), and dudley::MeshAdapter::getDataShape().
References Dudley_NodeMapping::numTargets, and Dudley_NodeFile::reducedNodesMapping.
Referenced by Dudley_Assemble_CopyNodalData(), Dudley_Assemble_interpolate(), and dudley::MeshAdapter::getDataShape().
References Dudley_NodeFile_setGlobalDOFRange().
References Dudley_NodeFile_setGlobalNodeIDIndexRange().
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 * | , |
escriptDataC * | |||
) |
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 Esys_MPIInfo::comm, Dudley_Util_getMaxInt(), Dudley_Util_getMinInt(), Dudley_NodeFile::globalDegreesOfFreedom, MPI_INT, 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 Esys_MPIInfo::comm, Dudley_Util_getMaxInt(), Dudley_Util_getMinInt(), Dudley_NodeFile::Id, MPI_INT, 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 | , | ||
escriptDataC * | |||
) |
void Dudley_NodeFile_setTagsInUse | ( | Dudley_NodeFile * | in | ) |
References Dudley_noError(), Dudley_Util_setValuesInUse(), MEMFREE, Dudley_NodeFile::MPIInfo, Dudley_NodeFile::numNodes, Dudley_NodeFile::numTagsInUse, Finley_NodeFile::numTagsInUse, Dudley_NodeFile::Tag, Dudley_NodeFile::tagsInUse, and Finley_NodeFile::tagsInUse.
Referenced by Dudley_Mesh_setTagsInUse(), and Dudley_NodeFile_setTags().