|
MAIA bb96820c
Multiphysics at AIA
|
#include <fvparticle.h>
Public Member Functions | |
| CouplerFvParticle (const MInt couplingId, LPT< nDim > *particle, FvCartesianSolver *fv) | |
| void | init () override |
| performs the coupling after solver initialization More... | |
| void | finalizeCouplerInit () override |
| void | finalizeSubCoupleInit (MInt) override |
| void | preCouple (MInt) override |
| preCoupler: reset external source terms before the LPT timestep More... | |
| void | postCouple (MInt) override |
| postCouple: exchange source terms after the LPT timeStep More... | |
| void | subCouple (MInt, MInt, std::vector< MBool > &) override |
| transfer the FV velocity slopes to the LPT solver More... | |
| void | postAdaptation () override |
| void | finalizeAdaptation (const MInt) override |
| prepate adaptation More... | |
| void | prepareAdaptation () override |
| prepate adaptation More... | |
| void | finalizeBalance (const MInt unused) override |
| postCouple: exchange source terms after the LPT timeStep More... | |
| void | balancePre () override |
| Load balancing. More... | |
| void | balancePost () override |
| void | cleanUp () override |
| void | writeRestartFile (const MInt) override |
| MInt | noCouplingTimers (const MBool NotUsed(allTimings)) const override |
| Number of coupling timers. More... | |
| void | getCouplingTimings (std::vector< std::pair< MString, MFloat > > &timings, const MBool NotUsed(allTimings)) override |
Public Member Functions inherited from CouplingLpt< nDim, CouplingFv< nDim, 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 CouplingFv< nDim, SysEqn > | |
| CouplingFv (const MInt couplingId, std::vector< FvCartesianSolverXD< nDim, SysEqn > * > fvSolvers, const MInt noSolvers) | |
| CouplingFv (const MInt couplingId, Solver *solvers) | |
| ~CouplingFv () override=default | |
| CouplingFv (const CouplingFv &)=delete | |
| CouplingFv & | operator= (const CouplingFv &)=delete |
Protected Member Functions | |
| LPT< nDim > & | lpt () const override |
| FvCartesianSolverXD< nDim, SysEqn > & | fvSolver () const |
| virtual LPT< nDim > & | lpt () const |
Protected Member Functions inherited from Coupling | |
| MFloat | returnLoadRecord () const |
| MFloat | returnIdleRecord () const |
Protected Member Functions inherited from CouplingFv< nDim, SysEqn > | |
| MInt | noSolvers () const |
| solverType & | fvSolver (const MInt solverId=0) const |
| MInt | a_noFvCells () const |
| MInt | a_noFvGridCells () const |
Private Types | |
| using | FvCartesianSolver = FvCartesianSolverXD< nDim, SysEqn > |
| using | BaseFv = CouplingFv< nDim, SysEqn > |
| using | BaseLpt = CouplingParticle< nDim > |
| using | BaseLptX = CouplingLpt< nDim, BaseFv > |
Private Member Functions | |
| void | checkProperties () override |
| Checks property-data which is read in by both lpt-and Fv-Solver. More... | |
| void | readProperties () |
| void | initData () |
| Initialize coupling-class-specific Data. More... | |
| void | initConversion () |
| Calculates the conversion factor for different non-dimensionalisations in the FV and LPT solvers. 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 FV initialCondition. More... | |
| void | transferNoParticlesInCell () |
| set a_noPart in Fv based on a_noParticlesInCell and a_noEllipsoidsInCell in LPT solver NOTE: this is only necessary if the particle sensor is used during adaptation More... | |
| void | writeParticleCellStats () |
| compute particle-cell binning and write to file More... | |
| void | transferExternalSources () |
| set external sources in Fv solver based on values in the LPT solver More... | |
| void | updateLPTBndry () |
| transfer all relevant bndryCell-data from FV to LPT solver before the LPT timeStep! More... | |
| void | transferFlowField () |
| transfer flow data from FV to LPT More... | |
| void | transferCellStatus () |
| set the isValid status for LPT cells based on the FV-solver cell properties More... | |
| void | transferVelocitySlopes () |
| transfer the FV velocity slopes to the LPT solver More... | |
| void | transferTimeStep () |
| transfer/enforce Fv timeStep onto LPT solver More... | |
| void | setExternalSourceInCell (const MInt, const MInt, const MFloat) |
| set external source in FV-solver from LPT fluxes More... | |
| void | unifyTimeStep () |
| Find combinded maximum timeStep for Fv and LPT solvers only possible for interleafed execution assuming that both solvers have previously computed their independend timeSteps. More... | |
| MInt | childLoop (MInt cellId) |
| compute particle-cell binning and write to file More... | |
| MInt | lpt2fvId (const MInt lptId) |
| MInt | lpt2fvIdParent (const MInt lptId) |
| MInt | fv2lptId (const MInt fvId) |
| MInt | fv2lptIdParent (const MInt fvId) |
| void | interpolateFVLPT (const MInt from, const MInt to) |
| interpolate flow variables from the fv-grid to the LPT-cell position More... | |
| void | interpolateVelocitySlopesFVLPT (const MInt from, const MInt to) |
| Interpolates the velocity slopes from the fv-grid to the LPT-cell. More... | |
| MFloat | interpolateVariable (MInt *, MFloat *, MInt) |
| interpolates the fv-variable / More... | |
| MFloat | interpolateSlope (MInt *, MFloat *, MInt, MInt) |
| interpolate fv slope More... | |
Private Attributes | |
| ConversionFactor & | conversionLptFv = BaseLptX::conversionLptFlow |
| ConversionFactor & | conversionFvLpt = BaseLptX::conversionFlowLpt |
| LPT< nDim > * | m_particle = nullptr |
| FvCartesianSolverXD< nDim, SysEqn > * | m_fvSolver = nullptr |
| MInt | m_lptSolverId {} |
| MInt | m_fvSolverId {} |
| MInt | m_lptSolverOrder {} |
| MInt | m_fvSolverOrder {} |
| MInt | m_noSolverSteps {} |
| MBool | m_lptFvInterpolation = false |
| MInt | m_fvLPTSpeciesId {} |
| SysEqn | m_sysEqn |
| MInt | m_solutionStep |
| MInt | m_noSolutionSteps |
| MBool | m_forceFvTimeStep |
| MBool | m_interLeafed |
Friends | |
| class | LPT< nDim > |
| class | FvCartesianSolverXD< nDim, SysEqn > |
Additional Inherited Members | |
Public Types inherited from CouplingLpt< nDim, CouplingFv< nDim, 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 CouplingFv< nDim, SysEqn > | |
| using | solverType = FvCartesianSolverXD< nDim, SysEqn > |
Public Attributes inherited from CouplingLpt< nDim, CouplingFv< nDim, SysEqn > > | |
| ConversionFactor | conversionFlowLpt |
| ConversionFactor | conversionLptFlow |
Protected Attributes inherited from CouplingFv< nDim, SysEqn > | |
| std::vector< solverType * > | m_fvSolvers {} |
Definition at line 21 of file fvparticle.h.
|
private |
Definition at line 28 of file fvparticle.h.
|
private |
Definition at line 29 of file fvparticle.h.
|
private |
Definition at line 30 of file fvparticle.h.
|
private |
Definition at line 26 of file fvparticle.h.
| CouplerFvParticle< nDim, SysEqn >::CouplerFvParticle | ( | const MInt | couplingId, |
| LPT< nDim > * | particle, | ||
| FvCartesianSolver * | fv | ||
| ) |
Definition at line 14 of file fvparticle.cpp.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
overrideprivatevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 338 of file fvparticle.cpp.
|
private |
Definition at line 1484 of file fvparticle.cpp.
|
inlineoverridevirtual |
|
overridevirtual |
Reimplemented from Coupling.
Definition at line 930 of file fvparticle.cpp.
|
overridevirtual |
Reimplemented from Coupling.
Definition at line 418 of file fvparticle.cpp.
|
overridevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 255 of file fvparticle.cpp.
|
inlineoverridevirtual |
|
inlineprivate |
Definition at line 107 of file fvparticle.h.
|
inlineprivate |
Definition at line 108 of file fvparticle.h.
|
inlineprotected |
Definition at line 48 of file fvparticle.h.
|
inlineoverride |
Definition at line 73 of file fvparticle.h.
|
overridevirtual |
Implements Coupling.
Definition at line 56 of file fvparticle.cpp.
|
private |
|
private |
Definition at line 244 of file fvparticle.cpp.
|
private |
Definition at line 227 of file fvparticle.cpp.
|
private |
Definition at line 962 of file fvparticle.cpp.
|
private |
Definition at line 1067 of file fvparticle.cpp.
|
private |
Definition at line 1047 of file fvparticle.cpp.
|
private |
Definition at line 1012 of file fvparticle.cpp.
|
inlineoverrideprotectedvirtual |
|
inlineprivate |
Definition at line 105 of file fvparticle.h.
|
inlineprivate |
Definition at line 106 of file fvparticle.h.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
overridevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 382 of file fvparticle.cpp.
|
overridevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 350 of file fvparticle.cpp.
|
overridevirtual |
Reimplemented from Coupling.
Definition at line 871 of file fvparticle.cpp.
|
privatevirtual |
Reimplemented from CouplingParticle< nDim >.
|
private |
Definition at line 882 of file fvparticle.cpp.
|
overridevirtual |
Reimplemented from CouplingParticle< nDim >.
Definition at line 1298 of file fvparticle.cpp.
|
private |
Definition at line 1087 of file fvparticle.cpp.
|
private |
Definition at line 736 of file fvparticle.cpp.
|
private |
NOTE: each LPT-cell must have at-least a matching FV-parent!
Definition at line 452 of file fvparticle.cpp.
|
private |
Definition at line 692 of file fvparticle.cpp.
|
private |
Definition at line 830 of file fvparticle.cpp.
|
private |
NOTE: each LPT-cell must have at-least a matching FV-parent!
Definition at line 1112 of file fvparticle.cpp.
|
private |
Definition at line 1226 of file fvparticle.cpp.
|
private |
Definition at line 607 of file fvparticle.cpp.
|
private |
Definition at line 1360 of file fvparticle.cpp.
|
inlineoverridevirtual |
|
friend |
Definition at line 1 of file fvparticle.h.
Definition at line 1 of file fvparticle.h.
|
private |
Definition at line 40 of file fvparticle.h.
|
private |
Definition at line 39 of file fvparticle.h.
|
private |
Definition at line 132 of file fvparticle.h.
|
private |
Definition at line 126 of file fvparticle.h.
|
private |
Definition at line 117 of file fvparticle.h.
|
private |
Definition at line 120 of file fvparticle.h.
|
private |
Definition at line 122 of file fvparticle.h.
|
private |
Definition at line 133 of file fvparticle.h.
|
private |
Definition at line 125 of file fvparticle.h.
|
private |
Definition at line 119 of file fvparticle.h.
|
private |
Definition at line 121 of file fvparticle.h.
|
private |
Definition at line 131 of file fvparticle.h.
|
private |
Definition at line 123 of file fvparticle.h.
|
private |
Definition at line 116 of file fvparticle.h.
|
private |
Definition at line 130 of file fvparticle.h.
|
private |
Definition at line 128 of file fvparticle.h.