MAIA bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
CouplingParticle< nDim > Class Template Reference

#include <coupling.h>

Inheritance diagram for CouplingParticle< nDim >:
[legend]
Collaboration diagram for CouplingParticle< nDim >:
[legend]

Public Types

using solverType = LPT< nDim >
 

Public Member Functions

 CouplingParticle (const MInt couplingId, LPT< nDim > *solver)
 
- Public Member Functions inherited from Coupling
 Coupling (const MInt couplingId)
 
virtual ~Coupling ()=default
 
 Coupling (const Coupling &)=delete
 
Couplingoperator= (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...
 

Protected Member Functions

virtual LPT< nDim > & lpt () const
 
- Protected Member Functions inherited from Coupling
MFloat returnLoadRecord () const
 
MFloat returnIdleRecord () const
 

Private Member Functions

void subCouple (MInt, MInt, std::vector< MBool > &) override
 
void preCouple (MInt) override
 
void postCouple (MInt) override
 
void finalizeCouplerInit () override
 
void checkProperties () override
 
void readProperties () override
 
void finalizeSubCoupleInit (MInt) override
 
void cleanUp () override
 

Private Attributes

LPT< nDim > * m_particleSolver = nullptr
 

Detailed Description

template<MInt nDim>
class CouplingParticle< nDim >

Definition at line 558 of file coupling.h.

Member Typedef Documentation

◆ solverType

template<MInt nDim>
using CouplingParticle< nDim >::solverType = LPT<nDim>

Definition at line 560 of file coupling.h.

Constructor & Destructor Documentation

◆ CouplingParticle()

template<MInt nDim>
CouplingParticle< nDim >::CouplingParticle ( const MInt  couplingId,
LPT< nDim > *  solver 
)
inline

Definition at line 562 of file coupling.h.

562: Coupling(couplingId) { m_particleSolver = solver; }
LPT< nDim > * m_particleSolver
Definition: coupling.h:579

Member Function Documentation

◆ checkProperties()

template<MInt nDim>
void CouplingParticle< nDim >::checkProperties ( )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 570 of file coupling.h.

570{};

◆ cleanUp()

template<MInt nDim>
void CouplingParticle< nDim >::cleanUp ( )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 573 of file coupling.h.

573{};

◆ finalizeCouplerInit()

template<MInt nDim>
void CouplingParticle< nDim >::finalizeCouplerInit ( )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 569 of file coupling.h.

569{};

◆ finalizeSubCoupleInit()

template<MInt nDim>
void CouplingParticle< nDim >::finalizeSubCoupleInit ( MInt  )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 572 of file coupling.h.

572{};

◆ lpt()

template<MInt nDim>
virtual LPT< nDim > & CouplingParticle< nDim >::lpt ( ) const
inlineprotectedvirtual

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 576 of file coupling.h.

576{ return *m_particleSolver; }

◆ postCouple()

template<MInt nDim>
void CouplingParticle< nDim >::postCouple ( MInt  )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 568 of file coupling.h.

568{};

◆ preCouple()

template<MInt nDim>
void CouplingParticle< nDim >::preCouple ( MInt  )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 567 of file coupling.h.

567{};

◆ readProperties()

template<MInt nDim>
void CouplingParticle< nDim >::readProperties ( )
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >, and LbLpt< nDim, nDist, SysEqn >.

Definition at line 571 of file coupling.h.

571{};

◆ subCouple()

template<MInt nDim>
void CouplingParticle< nDim >::subCouple ( MInt  ,
MInt  ,
std::vector< MBool > &   
)
inlineoverrideprivatevirtual

Implements Coupling.

Reimplemented in CouplerFvParticle< nDim, SysEqn >.

Definition at line 566 of file coupling.h.

566{};

Member Data Documentation

◆ m_particleSolver

template<MInt nDim>
LPT<nDim>* CouplingParticle< nDim >::m_particleSolver = nullptr
private

Definition at line 579 of file coupling.h.


The documentation for this class was generated from the following file: