OpenLB 1.7
Loading...
Searching...
No Matches
Public Member Functions | List of all members
olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM > Struct Template Referenceabstract

Collision operation on concrete blocks of PLATFORM. More...

#include <operator.h>

+ Inheritance diagram for olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM >:
+ Collaboration diagram for olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM >:

Public Member Functions

virtual void setup (ConcreteBlockLattice< T, DESCRIPTOR, PLATFORM > &block)=0
 Setup collision on block.
 
virtual void apply (ConcreteBlockLattice< T, DESCRIPTOR, PLATFORM > &block, ConcreteBlockMask< T, PLATFORM > &subdomain, CollisionDispatchStrategy strategy)=0
 Apply collision on subdomain of block using strategy.
 
- Public Member Functions inherited from olb::AbstractCollisionO< T, DESCRIPTOR >
virtual Dynamics< T, DESCRIPTOR > * getDynamics ()=0
 
virtual std::size_t weight () const =0
 Returns number of assigned cells.
 
virtual void set (CellID iCell, bool state, bool overlap)=0
 Set whether iCell is covered by the present collision step.
 
- Public Member Functions inherited from olb::AbstractBlockO
virtual ~AbstractBlockO ()=default
 
virtual std::type_index id () const =0
 

Detailed Description

template<typename T, typename DESCRIPTOR, Platform PLATFORM>
struct olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM >

Collision operation on concrete blocks of PLATFORM.

Definition at line 97 of file operator.h.

Member Function Documentation

◆ apply()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM >::apply ( ConcreteBlockLattice< T, DESCRIPTOR, PLATFORM > & block,
ConcreteBlockMask< T, PLATFORM > & subdomain,
CollisionDispatchStrategy strategy )
pure virtual

Apply collision on subdomain of block using strategy.

Subdomain is currently assumed to be the non-overlap area of the block

Implemented in olb::LegacyBlockCollisionO< T, DESCRIPTOR, PLATFORM >.

+ Here is the caller graph for this function:

◆ setup()

template<typename T , typename DESCRIPTOR , Platform PLATFORM>
virtual void olb::BlockCollisionO< T, DESCRIPTOR, PLATFORM >::setup ( ConcreteBlockLattice< T, DESCRIPTOR, PLATFORM > & block)
pure virtual

Setup collision on block.

Implemented in olb::LegacyBlockCollisionO< T, DESCRIPTOR, PLATFORM >.


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