walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T > Class Template Reference

Detailed Description

template<typename GhostLayerField_T>
class walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T >

Special communication routine to += the values in the ghost layers and update the ghost layers.

Reduces the field with += to obtain the values from the block neighbors' ghost layers and add them onto the corresponding values inside the domain. This is followed by a regular ghost layer communication to synchronize the ghost layer values.

This functionality is typically used to synchronize the solid volume fraction field and the interaction force fields, after they have been filled by a distributor.

For more infos on distributors, see src/field/distributors.

#include <CombinedReductionFieldCommunication.h>

Public Member Functions

 CombinedReductionFieldCommunication (const shared_ptr< StructuredBlockForest > &bf, const BlockDataID &glFieldID)
 
void operator() ()
 

Private Attributes

blockforest::communication::UniformBufferedScheme< stencil::D3Q27 > pullReductionScheme_
 
blockforest::communication::UniformBufferedScheme< stencil::D3Q27 > commScheme_
 

Constructor & Destructor Documentation

◆ CombinedReductionFieldCommunication()

template<typename GhostLayerField_T >
walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T >::CombinedReductionFieldCommunication ( const shared_ptr< StructuredBlockForest > &  bf,
const BlockDataID glFieldID 
)
inline

Member Function Documentation

◆ operator()()

template<typename GhostLayerField_T >
void walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T >::operator() ( )
inline

Member Data Documentation

◆ commScheme_

template<typename GhostLayerField_T >
blockforest::communication::UniformBufferedScheme<stencil::D3Q27> walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T >::commScheme_
private

◆ pullReductionScheme_

template<typename GhostLayerField_T >
blockforest::communication::UniformBufferedScheme<stencil::D3Q27> walberla::pe_coupling::discrete_particle_methods::CombinedReductionFieldCommunication< GhostLayerField_T >::pullReductionScheme_
private

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