25#ifndef WRITE_FUNCTOR_O_H
26#define WRITE_FUNCTOR_O_H
37template <
typename FUNCTOR,
typename TO>
46 template <
typename CELL,
typename PARAMETERS>
49 cell.template setField<TO>(FUNCTOR{}.compute(cell,
parameters));
56template <
typename FUNCTOR,
typename TO,
typename T,
typename DESCRIPTOR>
61template <
typename FUNCTOR,
typename TO,
typename T,
typename DESCRIPTOR>
64 superLatticeO->execute();
67template <
typename FUNCTOR,
typename TO,
typename T,
typename DESCRIPTOR>
72 superLatticeO->execute();
75template <
typename FUNCTOR,
typename TO,
typename T,
typename DESCRIPTOR>
78 T conversionFactor = 1.0) {
80 superLatticeO->template setParameter<descriptors::CONVERSION>(conversionFactor);
82 superLatticeO->execute();
Smart pointer for managing the various ways of passing functors around.
Super class maintaining block lattices for a cuboid decomposition.
Top level namespace for all of OpenLB.
void writeFunctorTo(SuperLattice< T, DESCRIPTOR > &lattice)
auto makeWriteFunctorO(SuperLattice< T, DESCRIPTOR > &lattice)
auto makeSuperLatticeO(SuperLattice< T, DESCRIPTOR > &lattice)
OperatorScope
Block-wide operator application scopes.
@ PerCellWithParameters
Per-cell application with parameters, i.e. OPERATOR::apply is passed a CELL concept implementation an...
void writePhysFunctorTo(SuperLattice< T, DESCRIPTOR > &lattice, FunctorPtr< SuperIndicatorF< T, DESCRIPTOR::d > > &&indicator, T conversionFactor=1.0)
std::conditional_t< D==2, SuperIndicatorF2D< T >, SuperIndicatorF3D< T > > SuperIndicatorF
Operator which evaluate a functor and write its results into the passed field.
FUNCTOR::parameters parameters
static constexpr OperatorScope scope
void apply(CELL &cell, PARAMETERS ¶meters) any_platform