ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
Loading...
Searching...
No Matches
walberla::EKReactionImplIndexed< Architecture > Class Template Reference

#include <EKReactionImplIndexed.hpp>

+ Inheritance diagram for walberla::EKReactionImplIndexed< Architecture >:
+ Collaboration diagram for walberla::EKReactionImplIndexed< Architecture >:

Public Types

using FlagField = field::FlagField< uint8_t >
 
using IndexVectors = detail::ReactionKernelIndexedSelector::KernelTrait<>::ReactionKernelIndexed::IndexVectors
 
using IndexInfo = detail::ReactionKernelIndexedSelector::KernelTrait<>::ReactionKernelIndexed::IndexInfo
 
- Public Types inherited from walberla::EKReactionBase
using reactants_type = std::vector< std::shared_ptr< EKReactant > >
 

Public Member Functions

 EKReactionImplIndexed (std::shared_ptr< LatticeWalberla > const &lattice, reactants_type const &reactants, double coefficient)
 
 ~EKReactionImplIndexed () override=default
 
void perform_reaction () override
 
void set_node_is_boundary (Utils::Vector3i const &node, bool is_boundary) override
 
std::optional< boolget_node_is_boundary (Utils::Vector3i const &node) override
 
void boundary_update ()
 
- Public Member Functions inherited from walberla::EKReactionBaseIndexed
 ~EKReactionBaseIndexed () override=default
 
 EKReactionBase (std::shared_ptr< LatticeWalberla > lattice, reactants_type reactants, double coefficient)
 
- Public Member Functions inherited from walberla::EKReactionBase
 EKReactionBase (std::shared_ptr< LatticeWalberla > lattice, reactants_type reactants, double coefficient)
 
virtual ~EKReactionBase ()=default
 
void set_coefficient (double coefficient) noexcept
 
double get_coefficient () const noexcept
 
auto get_lattice () const noexcept
 
auto constget_reactants () const noexcept
 

Public Attributes

FlagUID const Domain_flag {"domain"}
 Flag for domain cells, i.e.
 
FlagUID const Boundary_flag {"boundary"}
 Flag for boundary cells.
 

Detailed Description

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
class walberla::EKReactionImplIndexed< Architecture >

Definition at line 48 of file EKReactionImplIndexed.hpp.

Member Typedef Documentation

◆ FlagField

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
using walberla::EKReactionImplIndexed< Architecture >::FlagField = field::FlagField<uint8_t>

Definition at line 60 of file EKReactionImplIndexed.hpp.

◆ IndexInfo

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
using walberla::EKReactionImplIndexed< Architecture >::IndexInfo = detail::ReactionKernelIndexedSelector::KernelTrait<>:: ReactionKernelIndexed::IndexInfo

Definition at line 77 of file EKReactionImplIndexed.hpp.

◆ IndexVectors

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
using walberla::EKReactionImplIndexed< Architecture >::IndexVectors = detail::ReactionKernelIndexedSelector::KernelTrait<>:: ReactionKernelIndexed::IndexVectors

Definition at line 75 of file EKReactionImplIndexed.hpp.

Constructor & Destructor Documentation

◆ EKReactionImplIndexed()

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
walberla::EKReactionImplIndexed< Architecture >::EKReactionImplIndexed ( std::shared_ptr< LatticeWalberla > const lattice,
reactants_type const reactants,
double  coefficient 
)
inline

◆ ~EKReactionImplIndexed()

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
walberla::EKReactionImplIndexed< Architecture >::~EKReactionImplIndexed ( )
overridedefault

Member Function Documentation

◆ boundary_update()

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
void walberla::EKReactionImplIndexed< Architecture >::boundary_update ( )
inline

◆ get_node_is_boundary()

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
std::optional< bool > walberla::EKReactionImplIndexed< Architecture >::get_node_is_boundary ( Utils::Vector3i const node)
inlineoverridevirtual

◆ perform_reaction()

◆ set_node_is_boundary()

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
void walberla::EKReactionImplIndexed< Architecture >::set_node_is_boundary ( Utils::Vector3i const node,
bool  is_boundary 
)
inlineoverridevirtual

Member Data Documentation

◆ Boundary_flag

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
FlagUID const walberla::EKReactionImplIndexed< Architecture >::Boundary_flag {"boundary"}

Flag for boundary cells.

Definition at line 58 of file EKReactionImplIndexed.hpp.

Referenced by walberla::EKReactionImplIndexed< Architecture >::EKReactionImplIndexed().

◆ Domain_flag

template<lbmpy::Arch Architecture = lbmpy::Arch::CPU>
FlagUID const walberla::EKReactionImplIndexed< Architecture >::Domain_flag {"domain"}

Flag for domain cells, i.e.

all cells.

Definition at line 56 of file EKReactionImplIndexed.hpp.

Referenced by walberla::EKReactionImplIndexed< Architecture >::EKReactionImplIndexed().


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