20template <MInt nDim, MInt nDist,
class SysEqn>
22template <MInt nDim, MInt nDist,
class SysEqn>
29template <MInt nDim, MInt nDist,
class SysEqn>
53 using typename BaseLptX::ConversionFactor;
77 return lbSolver().a_variable(lbCellId, varId);
79 return lbSolver().a_oldVariable(lbCellId, varId);
86 return lbSolver().a_coordinate(lbCellId, dir);
LbSolverDxQy< nDim, nDist, SysEqn > solverType
MFloat a_cellLengthAtLevel(MInt level, const MInt id=0)
MInt a_noBndCells(const MInt id=0)
MInt a_bndCellId(const MInt bndCell, const MInt id=0)
solverType & lbSolver(const MInt solverId=0) const
MInt a_noCells(const MInt id=0) const
MFloat a_Ma(const MInt id=0) const
LbBndCnd & lbBndCnd(const MInt id=0)
ConversionFactor conversionLptFlow
ConversionFactor conversionFlowLpt
void preCouple(MInt) override
Coupling before each solver.
LPT< nDim > & lpt() const override
MInt lb2lptIdParent(const MInt lbId)
MInt lb2lptId(const MInt lbId)
void checkProperties() override
Check coupler properties for validity.
void initParticleVelocity()
Sets the initial particle velocity based on the flow field velocity in that cell. NOTE: This can not ...
solverType & lbSolver(const MInt solverId=0) const
void postCouple(MInt) override
Coupling after each solver.
typename BaseLpt::solverType LptSolver
std::array< MFloat, 2 *nDim > m_gridBoundaries
MBool m_lptlbInterpolation
void transferCellStatus()
set the isValid status for LPT cells based on the FV-solver cell properties
ConversionFactor & conversionLbLpt
ConversionFactor & conversionLptLb
void balancePre() override
Load balancing.
void transferFlowField()
Transfer the momentum source (forcing) from LPT to LB.
void updateLbSolver()
Transfer all relevant data from LPT to LB solver.
void transferTimeStep()
transfer/enforce Fv timeStep onto LPT solver
void init() override
Init coupling class.
MInt lpt2lbId(const MInt lptId)
void finalizeSubCoupleInit(MInt) override
void finalizeBalance(const MInt) override
postCouple: exchange source terms after the LPT timeStep
void finalizeCouplerInit() override
Finalize coupler initialization, coupler is ready after this.
MInt a_noCells(const MInt id=0) const
void calculateGridBoundaries()
calculate Boundaries of box-shaped Grid for calculation of boundaryCellData
void updateLPTBndry()
Transfer all relevant bndryCell-data from LB to LPT.
void computeParticleInterphaseExchangeRate()
MFloat a_lbVariable(const MInt lptCellId, const MInt varId, const MInt mode)
MFloat a_lbCellCoordinate(const MInt lptCellId, const MInt dir)
MInt lpt2lbIdParent(const MInt lptId)
This class represents all LB models.
MInt convertId(SolverA &solverA, SolverB &solverB, const MInt solverAId)
Conversion from solverA id to the solverB id on the same-level only!
MInt convertIdParent(SolverA &solverA, SolverB &solverB, const MInt solverAId)
Conversion from solverA id to the solverB id If no cell on the same level is found,...
Namespace for auxiliary functions/classes.