Template Numerical Library version\ main:f17d0c8
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
TNL::Meshes::DistributedMeshes::DistributedMesh< Grid< Dimension, Real, Device, Index > > Class Template Reference
Collaboration diagram for TNL::Meshes::DistributedMeshes::DistributedMesh< Grid< Dimension, Real, Device, Index > >:
Collaboration graph
[legend]

Public Types

using CoordinatesType = Containers::StaticVector< Dimension, IndexType >
 
using DeviceType = Device
 
using GlobalIndexType = Index
 
using GridType = Grid< Dimension, Real, Device, IndexType >
 
using IndexType = Index
 
using PointType = typename GridType::PointType
 
using RealType = Real
 
using SubdomainOverlapsType = Containers::StaticVector< Dimension, IndexType >
 

Public Member Functions

const MPI::CommgetCommunicator () const
 
const CoordinatesTypegetDomainDecomposition () const
 
template<int EntityDimension>
IndexType getEntitiesCount () const
 
template<typename Entity >
IndexType getEntitiesCount () const
 
template<int EntityDimension>
Index getEntitiesCount () const
 
int getGhostLevels () const
 
const CoordinatesTypegetGlobalBegin () const
 
const GridTypegetGlobalGrid () const
 
const CoordinatesTypegetGlobalSize () const
 
const GridTypegetLocalMesh () const
 
const CoordinatesTypegetLocalSize () const
 
const SubdomainOverlapsTypegetLowerOverlap () const
 
const int * getNeighbors () const
 
const int * getPeriodicNeighbors () const
 
int getRankOfProcCoord (const CoordinatesType &nodeCoordinates) const
 
const CoordinatesTypegetSubdomainCoordinates () const
 
const SubdomainOverlapsTypegetUpperOverlap () const
 
bool isBoundarySubdomain () const
 
bool isDistributed () const
 
bool isThereNeighbor (const CoordinatesType &direction) const
 
bool operator!= (const DistributedMesh &other) const
 
bool operator== (const DistributedMesh &other) const
 
String printProcessCoords () const
 
String printProcessDistr () const
 
void setCommunicator (const MPI::Comm &communicator)
 
void setDomainDecomposition (const CoordinatesType &domainDecomposition)
 
void setGhostLevels (int levels)
 
void setGlobalGrid (const GridType &globalGrid)
 
void setOverlaps (const SubdomainOverlapsType &lower, const SubdomainOverlapsType &upper)
 
template<typename DistributedGridType >
bool SetupByCut (DistributedGridType &inputDistributedGrid, Containers::StaticVector< Dimension, int > savedDimensions, Containers::StaticVector< DistributedGridType::getMeshDimension() - Dimension, int > reducedDimensions, Containers::StaticVector< DistributedGridType::getMeshDimension() - Dimension, IndexType > fixedIndexs)
 
void setupNeighbors ()
 
void writeProlog (Logger &logger)
 

Static Public Member Functions

static constexpr int getMeshDimension ()
 
static constexpr int getNeighborsCount ()
 

Public Attributes

MPI::Comm communicator = MPI_COMM_WORLD
 
bool distributed = false
 
CoordinatesType domainDecomposition = 0
 
CoordinatesType globalBegin = 0
 
GridType globalGrid
 
bool isSet = false
 
GridType localGrid
 
CoordinatesType localSize = 0
 
SubdomainOverlapsType lowerOverlap = 0
 
int neighbors [getNeighborsCount()]
 
int periodicNeighbors [getNeighborsCount()]
 
CoordinatesType subdomainCoordinates = 0
 
SubdomainOverlapsType upperOverlap = 0
 

The documentation for this class was generated from the following files: