28#ifndef REACTING_SPECIES_2D_HH
29#define REACTING_SPECIES_2D_HH
36template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
38 : _stoichioCoeff(stoichioCoeff)
41template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
44 return _stoichioCoeff;
47template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
50 return (
static_cast<IMPL*
>(
this))->getField(blockStructure, iX, iY);
53template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
59template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
62 static_cast<BlockLattice<T,DESCRIPTOR>*
>(blockStructure)->get(iX, iY).template setField<SOURCE>(val + getSource(blockStructure, iX, iY));
65template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename IMPL>
74template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename FIELD>
80 static_assert(DESCRIPTOR::template size<FIELD>() == 2,
"FIELD must have size 2." );
81 static_assert(DESCRIPTOR::template size<SOURCE>() == 1,
"SOURCE must have size 1.");
84template <
typename T,
typename DESCRIPTOR,
typename SOURCE,
typename FIELD>
93template <
typename T,
typename DESCRIPTOR,
typename SOURCE>
99template <
typename T,
typename DESCRIPTOR,
typename SOURCE>
Platform-abstracted block lattice for external access and inter-block interaction.
T getField(BlockStructureD< 2 > *blockStructure, int iX, int iY)
FiniteDifferenceReactingSpecies2D(T stoichioCoeff, std::size_t &iT)
LatticeBoltzmannReactingSpecies2D(T stoichioCoeff)
T getField(BlockStructureD< 2 > *blockStructure, int iX, int iY)
ReactingSpecies2D(T stoichioCoeff)
void incrementSource(BlockStructureD< 2 > *blockStructure, T val, int iX, int iY)
T getField(BlockStructureD< 2 > *blockStructure, int iX, int iY)
T getSource(BlockStructureD< 2 > *blockStructure, int iX, int iY)
void resetSource(BlockStructureD< 2 > *blockStructure, int iX, int iY)
Top level namespace for all of OpenLB.