OpenLB 1.7
|
Base of collision operations performed by BlockDynamicsMap. More...
#include <operator.h>
Public Member Functions | |
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 |
Base of collision operations performed by BlockDynamicsMap.
Definition at line 69 of file operator.h.
|
pure virtual |
Implemented in olb::LegacyBlockCollisionO< T, DESCRIPTOR, PLATFORM >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SIMD, DYNAMICS >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SISD, DYNAMICS >, and olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::GPU_CUDA, DYNAMICS >.
|
pure virtual |
Set whether iCell is covered by the present collision step.
iCell | Cell index |
state | (De)activate for this dynamics / collision |
overlap | Cell index in overlap (set dynamics but do not collide) |
Implemented in olb::LegacyBlockCollisionO< T, DESCRIPTOR, PLATFORM >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SIMD, DYNAMICS >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SISD, DYNAMICS >, and olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::GPU_CUDA, DYNAMICS >.
|
pure virtual |
Returns number of assigned cells.
Used to determine the dominant dynamics to choose e.g. which collision operator to vectorize or to prefer in GPU kernels.
Implemented in olb::LegacyBlockCollisionO< T, DESCRIPTOR, PLATFORM >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SIMD, DYNAMICS >, olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::CPU_SISD, DYNAMICS >, and olb::ConcreteBlockCollisionO< T, DESCRIPTOR, Platform::GPU_CUDA, DYNAMICS >.