MAIA bb96820c
Multiphysics at AIA
|
#include <lblpt.h>
Public Types | |
using | BaseLb = CouplingLB< nDim, nDist, SysEqn > |
using | LbSolver = typename BaseLb::solverType |
using | BaseLpt = CouplingParticle< nDim > |
using | BaseLptX = CouplingLpt< nDim, CouplingLB< nDim, nDist, SysEqn > > |
using | LptSolver = typename BaseLpt::solverType |
Public Types inherited from CouplingLpt< nDim, CouplingLB< nDim, nDist, SysEqn > > | |
using | FlowSolver = typename CouplingFlowSolver::solverType |
using | Lpt = typename CouplingParticle< nDim >::solverType |
Public Types inherited from CouplingParticle< nDim > | |
using | solverType = LPT< nDim > |
Public Types inherited from CouplingLB< nDim, nDist, SysEqn > | |
using | solverType = LbSolverDxQy< nDim, nDist, SysEqn > |
using | LbBndCnd = LbBndCndDxQy< nDim, nDist, SysEqn > |
using | MbCellCollector = maia::lb::collector::LbMbCellCollector< nDim > |
Public Member Functions | |
LbLpt (const MInt couplingId, LPT< nDim > *particle, LbSolver *lb) | |
void | init () override |
Init coupling class. More... | |
void | finalizeCouplerInit () override |
Finalize coupler initialization, coupler is ready after this. More... | |
void | finalizeSubCoupleInit (MInt) override |
void | preCouple (MInt) override |
Coupling before each solver. More... | |
void | postCouple (MInt) override |
Coupling after each solver. More... | |
void | finalizeBalance (const MInt) override |
postCouple: exchange source terms after the LPT timeStep More... | |
void | balancePre () override |
Load balancing. More... | |
void | cleanUp () override |
MFloat | a_lbVariable (const MInt lptCellId, const MInt varId, const MInt mode) |
MFloat | a_lbCellCoordinate (const MInt lptCellId, const MInt dir) |
Public Member Functions inherited from CouplingLpt< nDim, CouplingLB< nDim, nDist, SysEqn > > | |
CouplingLpt (const MInt couplingId, Lpt *particle, FlowSolver *flowSolver) | |
virtual | ~CouplingLpt ()=default |
Public Member Functions inherited from CouplingParticle< nDim > | |
CouplingParticle (const MInt couplingId, LPT< nDim > *solver) | |
Public Member Functions inherited from Coupling | |
Coupling (const MInt couplingId) | |
virtual | ~Coupling ()=default |
Coupling (const Coupling &)=delete | |
Coupling & | operator= (const Coupling &)=delete |
MInt | couplerId () const |
virtual void | init ()=0 |
virtual void | finalizeSubCoupleInit (MInt solverId)=0 |
virtual void | finalizeCouplerInit ()=0 |
virtual void | preCouple (MInt recipeStep)=0 |
virtual void | subCouple (MInt recipeStep, MInt solverId, std::vector< MBool > &solverCompleted)=0 |
virtual void | postCouple (MInt recipeStep)=0 |
virtual void | cleanUp ()=0 |
virtual void | balancePre () |
Load balancing. More... | |
virtual void | balancePost () |
virtual void | reinitAfterBalance () |
virtual void | prepareAdaptation () |
virtual void | postAdaptation () |
virtual void | finalizeAdaptation (const MInt) |
virtual void | writeRestartFile (const MInt) |
virtual MInt | noCellDataDlb () const |
Methods to inquire coupler data during balancing. More... | |
virtual MInt | cellDataTypeDlb (const MInt NotUsed(dataId)) const |
virtual MInt | cellDataSizeDlb (const MInt NotUsed(dataId), const MInt NotUsed(cellId)) |
virtual void | getCellDataDlb (const MInt NotUsed(dataId), const MInt NotUsed(oldNoCells), const MInt *const NotUsed(bufferIdToCellId), MInt *const NotUsed(data)) |
virtual void | getCellDataDlb (const MInt NotUsed(dataId), const MInt NotUsed(oldNoCells), const MInt *const NotUsed(bufferIdToCellId), MLong *const NotUsed(data)) |
virtual void | getCellDataDlb (const MInt NotUsed(dataId), const MInt NotUsed(oldNoCells), const MInt *const NotUsed(bufferIdToCellId), MFloat *const NotUsed(data)) |
virtual void | setCellDataDlb (const MInt NotUsed(dataId), const MInt *const NotUsed(data)) |
virtual void | setCellDataDlb (const MInt NotUsed(dataId), const MLong *const NotUsed(data)) |
virtual void | setCellDataDlb (const MInt NotUsed(dataId), const MFloat *const NotUsed(data)) |
virtual void | finalizeBalance (const MInt) |
virtual MInt | noCouplingTimers (const MBool NotUsed(allTimings)) const |
Number of coupling timers. More... | |
virtual void | getCouplingTimings (std::vector< std::pair< MString, MFloat > > &NotUsed(timings), const MBool NotUsed(allTimings)) |
Return coupling timings. More... | |
virtual void | getDomainDecompositionInformation (std::vector< std::pair< MString, MInt > > &NotUsed(domainInfo)) |
Return information on current domain decomposition (e.g. number of coupled cells/elements/...) More... | |
void | setDlbTimer (const MInt timerId) |
void | startLoadTimer (const MString &name) const |
Start the load timer of the coupler. More... | |
void | stopLoadTimer (const MString &name) const |
Stop the load timer of the coupler. More... | |
Public Member Functions inherited from CouplingLB< nDim, nDist, SysEqn > | |
CouplingLB (const MInt couplingId, Solver *solvers, const MInt noSolvers=1) | |
CouplingLB (const MInt couplingId, std::vector< solverType * > solvers) | |
MFloat | a_physicalTime () const |
MFloat | lsTimeStep () const |
MInt | a_RKStep () const |
MInt | a_noLbCells (const MInt id=0) const |
MInt | a_noLevelSetsMb (const MInt id=0) const |
MFloat | a_Ma (const MInt id=0) const |
MFloat | a_Re (const MInt id=0) const |
MInt | a_pvu (const MInt id=0) const |
MInt | a_pvv (const MInt id=0) const |
MInt | a_pvw (const MInt id=0) const |
MInt | a_pvrho (const MInt id=0) const |
MInt | a_pvt (const MInt id=0) const |
MInt | a_isThermal (const MInt id=0) const |
MInt | a_noDistributions (const MInt id=0) const |
MFloat | a_initTemperatureKelvin (const MInt id=0) const |
MFloat | a_time () const |
MbCellCollector & | a_mbCell (const MInt id=0) |
MInt | a_boundaryCellMb (const MInt cellId, const MInt id=0) |
MFloat & | a_levelSetFunctionMb (const MInt cellId, const MInt set, const MInt id=0) |
MFloat | a_levelSetFunctionMb (const MInt cellId, const MInt set, const MInt id=0) const |
MInt & | a_associatedBodyIdsMb (const MInt cellId, const MInt set, const MInt id=0) |
MInt | a_associatedBodyIdsMb (const MInt cellId, const MInt set, const MInt id=0) const |
MInt | a_parentId (const MInt cellId, const MInt id=0) |
MInt | a_childId (const MInt cellId, const MInt child, const MInt id=0) |
MInt | minCell (const MInt index, const MInt id=0) const |
MInt | noMinCells (const MInt id=0) const |
MInt | a_noCells (const MInt id=0) const |
MFloat | a_cellLengthAtLevel (MInt level, const MInt id=0) |
MInt | a_noEmbeddedBodiesLB (const MInt id=0) const |
MBool | a_isActive (const MInt cellId, const MInt id=0) const |
MBool | a_wasActive (const MInt cellId, const MInt id=0) const |
MInt | a_noVariables (const MInt id=0) const |
MFloat & | a_variable (const MInt cellId, const MInt varId, const MInt id=0) |
MFloat & | a_oldVariable (const MInt cellId, const MInt varId, const MInt id=0) |
MInt | a_bndCellId (const MInt bndCell, const MInt id=0) |
MInt | a_noBndCells (const MInt id=0) |
Protected Member Functions | |
LPT< nDim > & | lpt () const override |
MInt | a_bndCellId (const MInt bndCell, const MInt id=0) |
MFloat | a_cellLengthAtLevel (MInt level, const MInt id=0) |
MFloat | a_Ma (const MInt id=0) const |
MInt | a_noBndCells (const MInt id=0) |
MInt | a_noCells (const MInt id=0) const |
LbBndCnd & | lbBndCnd (const MInt id=0) |
solverType & | lbSolver (const MInt solverId=0) const |
virtual LPT< nDim > & | lpt () const |
Protected Member Functions inherited from Coupling | |
MFloat | returnLoadRecord () const |
MFloat | returnIdleRecord () const |
Protected Member Functions inherited from CouplingLB< nDim, nDist, SysEqn > | |
MInt | noSolvers () const |
solverType & | lbSolver (const MInt solverId=0) const |
LbBndCnd & | lbBndCnd (const MInt id=0) |
Protected Attributes | |
ConversionFactor & | conversionLbLpt = BaseLptX::conversionFlowLpt |
ConversionFactor & | conversionLptLb = BaseLptX::conversionLptFlow |
Private Member Functions | |
void | checkProperties () override |
Check coupler properties for validity. More... | |
void | readProperties () |
void | initData () |
void | initConversion () |
void | calculateGridBoundaries () |
calculate Boundaries of box-shaped Grid for calculation of boundaryCellData More... | |
void | initParticleVelocity () |
Sets the initial particle velocity based on the flow field velocity in that cell. NOTE: This can not be done in the LPT initialCondition, as the FV flow field has not been transfered before, its set in the Lb initialCondition. More... | |
void | updateLbSolver () |
Transfer all relevant data from LPT to LB solver. More... | |
void | updateLPTBndry () |
Transfer all relevant bndryCell-data from LB to LPT. More... | |
void | transferFlowField () |
Transfer the momentum source (forcing) from LPT to LB. More... | |
void | transferCellStatus () |
set the isValid status for LPT cells based on the FV-solver cell properties More... | |
void | transferTimeStep () |
transfer/enforce Fv timeStep onto LPT solver More... | |
void | computeParticleInterphaseExchangeRate () |
MInt | lpt2lbId (const MInt lptId) |
MInt | lpt2lbIdParent (const MInt lptId) |
MInt | lb2lptId (const MInt lbId) |
MInt | lb2lptIdParent (const MInt lbId) |
Private Attributes | |
LPT< nDim > * | m_particle = nullptr |
LbSolver * | m_lbSolver = nullptr |
MInt | m_lptSolverId {} |
MInt | m_lbSolverId {} |
MInt | m_lptSolverOrder {} |
MInt | m_noSolverSteps {} |
std::array< MFloat, 2 *nDim > | m_gridBoundaries {} |
MBool | m_lptlbInterpolation = false |
MBool | m_forceLbTimeStep = true |
MBool | m_CalcSurface = false |
Additional Inherited Members | |
Public Attributes inherited from CouplingLpt< nDim, CouplingLB< nDim, nDist, SysEqn > > | |
ConversionFactor | conversionFlowLpt |
ConversionFactor | conversionLptFlow |
using LbLpt< nDim, nDist, SysEqn >::BaseLb = CouplingLB<nDim, nDist, SysEqn> |
using LbLpt< nDim, nDist, SysEqn >::BaseLpt = CouplingParticle<nDim> |
using LbLpt< nDim, nDist, SysEqn >::BaseLptX = CouplingLpt<nDim, CouplingLB<nDim, nDist, SysEqn> > |
using LbLpt< nDim, nDist, SysEqn >::LbSolver = typename BaseLb::solverType |
using LbLpt< nDim, nDist, SysEqn >::LptSolver = typename BaseLpt::solverType |
LbLpt< nDim, nDist, SysEqn >::LbLpt | ( | const MInt | couplingId, |
LPT< nDim > * | particle, | ||
LbSolver * | lb | ||
) |
Definition at line 15 of file lblpt.cpp.
|
inlineprotected |
Definition at line 537 of file coupling.h.
|
inlineprotected |
Definition at line 518 of file coupling.h.
|
inline |
|
inline |
|
inlineprotected |
Definition at line 472 of file coupling.h.
|
inlineprotected |
Definition at line 539 of file coupling.h.
|
inlineprotected |
Definition at line 516 of file coupling.h.
|
inlineoverridevirtual |
|
private |
Definition at line 158 of file lblpt.cpp.
|
overrideprivatevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 275 of file lblpt.cpp.
|
inlineoverridevirtual |
|
private |
Reimplemented from Coupling.
Definition at line 381 of file lblpt.cpp.
|
overridevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 212 of file lblpt.cpp.
|
overridevirtual |
Implements Coupling.
Definition at line 40 of file lblpt.cpp.
|
private |
|
private |
|
private |
Definition at line 186 of file lblpt.cpp.
Definition at line 111 of file lblpt.h.
|
inlineprotected |
Definition at line 461 of file coupling.h.
|
inlineprotected |
Definition at line 454 of file coupling.h.
[in] | recipeStep | Current step in the execution recipe |
POST LPT: Transfer coupling terms from LPT to LB POST LB : Transfer flow field from LB to LPT
Reimplemented from CouplingParticle< nDim >.
Definition at line 341 of file lblpt.cpp.
[in] | recipeStep |
Reimplemented from CouplingParticle< nDim >.
Definition at line 302 of file lblpt.cpp.
|
privatevirtual |
Reimplemented from CouplingParticle< nDim >.
|
private |
Definition at line 828 of file lblpt.cpp.
|
private |
Transfer all flow variables from LB to LPT and apply the conversion
Definition at line 571 of file lblpt.cpp.
|
private |
|
private |
Definition at line 406 of file lblpt.cpp.
|
private |
Definition at line 614 of file lblpt.cpp.
|
protected |
|
protected |