walberla::blockforest::DynamicParMetisBlockInfo Class Reference

#include <DynamicParMetis.h>

Public Types

using weight_t = int64_t
 
using vsize_t = int64_t
 

Public Member Functions

 DynamicParMetisBlockInfo (const weight_t vertexWeight, const uint_t ncon=1)
 
 DynamicParMetisBlockInfo (mpi::RecvBuffer &buffer)
 
 DynamicParMetisBlockInfo (const std::vector< weight_t > &vertexWeight)
 
uint_t getNcon () const
 
weight_t getVertexWeight (const uint_t con=0) const
 
void setVertexWeight (const weight_t vertexWeight, const uint_t con=0)
 
vsize_t getVertexSize () const
 
void setVertexSize (const vsize_t size)
 
const Vector3< double > & getVertexCoords () const
 
void setVertexCoords (const Vector3< double > &p)
 
void setEdgeWeight (const blockforest::BlockID &blockId, const weight_t edgeWeight)
 
void setEdgeWeights (const std::map< blockforest::BlockID, weight_t > &edgeWeights)
 
const std::map< blockforest::BlockID, weight_t > & getEdgeWeights () const
 
void toBuffer (mpi::SendBuffer &buffer)
 

Private Attributes

std::vector< weight_tvertexWeight_
 
vsize_t vertexSize_
 Defines the ncon weights of a block. More...
 
Vector3< double > vertexCoords_ = Vector3<double>(std::numeric_limits<double>::signaling_NaN())
 Defines the cost of rebalancing a block. Needed by some ParMetis algorithms. More...
 
std::map< blockforest::BlockID, weight_tedgeWeights_
 Defines where the block is located in space. Needed by some ParMetis algorithms. More...
 

Member Typedef Documentation

◆ vsize_t

◆ weight_t

Constructor & Destructor Documentation

◆ DynamicParMetisBlockInfo() [1/3]

walberla::blockforest::DynamicParMetisBlockInfo::DynamicParMetisBlockInfo ( const weight_t  vertexWeight,
const uint_t  ncon = 1 
)
inline

◆ DynamicParMetisBlockInfo() [2/3]

walberla::blockforest::DynamicParMetisBlockInfo::DynamicParMetisBlockInfo ( mpi::RecvBuffer buffer)
inline

◆ DynamicParMetisBlockInfo() [3/3]

walberla::blockforest::DynamicParMetisBlockInfo::DynamicParMetisBlockInfo ( const std::vector< weight_t > &  vertexWeight)
inline

Member Function Documentation

◆ getEdgeWeights()

const std::map< blockforest::BlockID, weight_t >& walberla::blockforest::DynamicParMetisBlockInfo::getEdgeWeights ( ) const
inline

◆ getNcon()

uint_t walberla::blockforest::DynamicParMetisBlockInfo::getNcon ( ) const
inline

◆ getVertexCoords()

const Vector3<double>& walberla::blockforest::DynamicParMetisBlockInfo::getVertexCoords ( ) const
inline

◆ getVertexSize()

vsize_t walberla::blockforest::DynamicParMetisBlockInfo::getVertexSize ( ) const
inline

◆ getVertexWeight()

weight_t walberla::blockforest::DynamicParMetisBlockInfo::getVertexWeight ( const uint_t  con = 0) const
inline

◆ setEdgeWeight()

void walberla::blockforest::DynamicParMetisBlockInfo::setEdgeWeight ( const blockforest::BlockID blockId,
const weight_t  edgeWeight 
)
inline

◆ setEdgeWeights()

void walberla::blockforest::DynamicParMetisBlockInfo::setEdgeWeights ( const std::map< blockforest::BlockID, weight_t > &  edgeWeights)
inline

◆ setVertexCoords()

void walberla::blockforest::DynamicParMetisBlockInfo::setVertexCoords ( const Vector3< double > &  p)
inline

◆ setVertexSize()

void walberla::blockforest::DynamicParMetisBlockInfo::setVertexSize ( const vsize_t  size)
inline

◆ setVertexWeight()

void walberla::blockforest::DynamicParMetisBlockInfo::setVertexWeight ( const weight_t  vertexWeight,
const uint_t  con = 0 
)
inline

◆ toBuffer()

void walberla::blockforest::DynamicParMetisBlockInfo::toBuffer ( mpi::SendBuffer buffer)
inline

Member Data Documentation

◆ edgeWeights_

std::map< blockforest::BlockID, weight_t > walberla::blockforest::DynamicParMetisBlockInfo::edgeWeights_
private

Defines where the block is located in space. Needed by some ParMetis algorithms.

◆ vertexCoords_

Vector3<double> walberla::blockforest::DynamicParMetisBlockInfo::vertexCoords_ = Vector3<double>(std::numeric_limits<double>::signaling_NaN())
private

Defines the cost of rebalancing a block. Needed by some ParMetis algorithms.

◆ vertexSize_

vsize_t walberla::blockforest::DynamicParMetisBlockInfo::vertexSize_
private

Defines the ncon weights of a block.

◆ vertexWeight_

std::vector<weight_t> walberla::blockforest::DynamicParMetisBlockInfo::vertexWeight_
private

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