walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T > Class Template Reference

#include <ObstacleNormalSweep.h>

Public Member Functions

 ObstacleNormalSweep (const BlockDataID &obstacleNormalFieldID, const ConstBlockDataID &flagFieldID, const FlagUID &interfaceFlagID, const Set< FlagUID > &liquidInterfaceGasFlagIDSet, const Set< FlagUID > &obstacleFlagIDSet, bool computeInInterfaceCells, bool computeInObstacleCells, bool computeInGhostLayer)
 
void operator() (IBlock *const block)
 

Protected Types

using vector_t = typename std::remove_const< typename VectorField_T::value_type >::type
 
using flag_t = typename std::remove_const< typename FlagField_T::value_type >::type
 

Private Member Functions

template<typename FlagFieldIt_T >
void computeObstacleNormalInInterfaceCell (vector_t &obstacleNormal, const FlagFieldIt_T &flagFieldIt, const flag_t &validNeighborFlagMask)
 
template<typename FlagFieldIt_T >
void computeObstacleNormalInObstacleCell (vector_t &obstacleNormal, const FlagFieldIt_T &flagFieldIt, const flag_t &liquidInterfaceGasFlagMask)
 

Private Attributes

BlockDataID obstacleNormalFieldID_
 
ConstBlockDataID flagFieldID_
 
FlagUID interfaceFlagID_
 
Set< FlagUID > liquidInterfaceGasFlagIDSet_
 
Set< FlagUID > obstacleFlagIDSet_
 
bool computeInInterfaceCells_
 
bool computeInObstacleCells_
 
bool computeInGhostLayer_
 

Member Typedef Documentation

◆ flag_t

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
using walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::flag_t = typename std::remove_const< typename FlagField_T::value_type >::type
protected

◆ vector_t

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
using walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::vector_t = typename std::remove_const< typename VectorField_T::value_type >::type
protected

Constructor & Destructor Documentation

◆ ObstacleNormalSweep()

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::ObstacleNormalSweep ( const BlockDataID obstacleNormalFieldID,
const ConstBlockDataID flagFieldID,
const FlagUID &  interfaceFlagID,
const Set< FlagUID > &  liquidInterfaceGasFlagIDSet,
const Set< FlagUID > &  obstacleFlagIDSet,
bool  computeInInterfaceCells,
bool  computeInObstacleCells,
bool  computeInGhostLayer 
)
inline

Member Function Documentation

◆ computeObstacleNormalInInterfaceCell()

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
template<typename FlagFieldIt_T >
void walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::computeObstacleNormalInInterfaceCell ( vector_t obstacleNormal,
const FlagFieldIt_T &  flagFieldIt,
const flag_t validNeighborFlagMask 
)
private

◆ computeObstacleNormalInObstacleCell()

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
template<typename FlagFieldIt_T >
void walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::computeObstacleNormalInObstacleCell ( vector_t obstacleNormal,
const FlagFieldIt_T &  flagFieldIt,
const flag_t liquidInterfaceGasFlagMask 
)
private

◆ operator()()

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
void walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::operator() ( IBlock *const  block)

Member Data Documentation

◆ computeInGhostLayer_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
bool walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::computeInGhostLayer_
private

◆ computeInInterfaceCells_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
bool walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::computeInInterfaceCells_
private

◆ computeInObstacleCells_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
bool walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::computeInObstacleCells_
private

◆ flagFieldID_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
ConstBlockDataID walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::flagFieldID_
private

◆ interfaceFlagID_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
FlagUID walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::interfaceFlagID_
private

◆ liquidInterfaceGasFlagIDSet_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
Set< FlagUID > walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::liquidInterfaceGasFlagIDSet_
private

◆ obstacleFlagIDSet_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
Set< FlagUID > walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::obstacleFlagIDSet_
private

◆ obstacleNormalFieldID_

template<typename Stencil_T , typename FlagField_T , typename VectorField_T >
BlockDataID walberla::free_surface::ObstacleNormalSweep< Stencil_T, FlagField_T, VectorField_T >::obstacleNormalFieldID_
private

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