24#ifndef SUPER_LATTICE_INTERACTION_HH
25#define SUPER_LATTICE_INTERACTION_HH
33template<
typename T,
typename DESCRIPTOR,
typename PARTICLETYPE>
40 constexpr unsigned D = DESCRIPTOR::d;
48 sLattice.
getBlock(iC), converter, min, max,
49 particle, periodicity);
53 sLattice.
getBlock(iC), converter, particle);
58template<
typename T,
typename DESCRIPTOR,
typename PARTICLETYPE,
59 typename PARTICLECONTACTTYPE,
typename WALLCONTACTTYPE,
typename F>
70 F getSetupPeriodicity,
76 if constexpr (
isPeriodic(getSetupPeriodicity()) ) {
78 sLattice.
getBlock(iC), converter, min, max,
79 particleSystem, contactContainer, iP,
80 particle, solidBoundaries, getSetupPeriodicity);
84 sLattice.
getBlock(iC), converter, particleSystem, contactContainer,
85 iP, particle, solidBoundaries);
91template<
typename T,
typename DESCRIPTOR>
101template<
typename T,
typename DESCRIPTOR>
Representation of a statistic for a parallel 2D geometry.
BlockGeometry< T, D > & getBlockGeometry(int locIC)
Read and write access to a single block geometry.
Super class maintaining block lattices for a cuboid decomposition.
BlockLattice< T, DESCRIPTOR > & getBlock(int locC)
Return BlockLattice with local index locC.
LoadBalancer< T > & getLoadBalancer()
Read and write access to the load balancer.
CuboidDecomposition< T, D > & getCuboidDecomposition()
Read and write access to cuboid geometry.
Conversion between physical and lattice units, as well as discretization.
constexpr bool providesParallelization()
Provides group PARALLELIZATION.
Vector< T, D > getCuboidMin(const CuboidDecomposition< T, D > &cuboidDecomposition)
Returns minimal coordinate of domain for periodic particle boundaries.
Vector< T, D > getCuboidMax(const CuboidDecomposition< T, D > &cuboidDecomposition, const PhysR< T, D > &min)
Returns maximal coordinate of domain for periodic particle boundaries.
void resetContactField(SuperGeometry< T, DESCRIPTOR::d > &sGeometry, SuperLattice< T, DESCRIPTOR > &sLattice)
void resetBlockParticleField(const BlockGeometry< T, DESCRIPTOR::d > &blockGeometry, BlockLattice< T, DESCRIPTOR > &blockLattice)
constexpr bool isPeriodic(const Vector< bool, D > &periodic)
void setBlockParticleField(const BlockGeometry< T, DESCRIPTOR::d > &blockGeometry, BlockLattice< T, DESCRIPTOR > &blockLattice, UnitConverter< T, DESCRIPTOR > const &converter, Particle< T, PARTICLETYPE > &particle)
void resetBlockContactField(const BlockGeometry< T, DESCRIPTOR::d > &blockGeometry, BlockLattice< T, DESCRIPTOR > &blockLattice)
void resetSuperParticleField(SuperGeometry< T, DESCRIPTOR::d > &sGeometry, SuperLattice< T, DESCRIPTOR > &sLattice)
Reset particle field.
void setSuperParticleField(const SuperGeometry< T, DESCRIPTOR::d > &sGeometry, SuperLattice< T, DESCRIPTOR > &sLattice, UnitConverter< T, DESCRIPTOR > const &converter, Particle< T, PARTICLETYPE > &particle, const Vector< bool, DESCRIPTOR::d > &periodicity)
Set particle field with peridic support.
Top level namespace for all of OpenLB.