Canoe
Comprehensive Atmosphere N' Ocean Engine
MeshBlock::Impl Class Reference

opaque pointer class implements all physics on a MeshBlock More...

#include <impl.hpp>

Public Member Functions

 Impl (MeshBlock *pmb, ParameterInput *pin)
 
 ~Impl ()
 
ExchangerBaseGetExchanger (char const *name) const
 
Real GetDistanceInAu () const
 
auto & GetMeshOutputGroups () const
 
auto & GetFITSOutputGroups () const
 
void MapScalarsConserved (AthenaArray< Real > &s)
 

Public Attributes

AthenaArray< Real > du
 public data More...
 
std::shared_ptr< Decompositionpdec
 
std::shared_ptr< ImplicitSolverphevi
 
std::shared_ptr< Microphysicspmicro
 
std::shared_ptr< Radiationprad
 
std::shared_ptr< Chemistrypchem
 
std::shared_ptr< Tracerptracer
 
std::shared_ptr< TurbulenceModelpturb
 
std::shared_ptr< CelestrialBodyplanet
 
std::vector< std::shared_ptr< Inversion > > all_fits
 
std::vector< std::shared_ptr< ParticleBase > > all_particles
 
std::shared_ptr< Schedulerscheduler
 

Protected Attributes

std::map< char const *, ExchangerBase * > exchangers_
 
std::vector< std::weak_ptr< MeshOutputGroup > > mesh_outputs_
 
std::vector< std::weak_ptr< FITSOutputGroup > > fits_outputs_
 
Real stellar_distance_au_
 

Private Attributes

MeshBlock const * pmy_block_
 

Detailed Description

opaque pointer class implements all physics on a MeshBlock

Definition at line 46 of file impl.hpp.

Constructor & Destructor Documentation

◆ Impl()

MeshBlock::Impl::Impl ( MeshBlock *  pmb,
ParameterInput *  pin 
)

Definition at line 46 of file impl.cpp.

◆ ~Impl()

MeshBlock::Impl::~Impl ( )

Definition at line 90 of file impl.cpp.

Member Function Documentation

◆ GetExchanger()

ExchangerBase* MeshBlock::Impl::GetExchanger ( char const *  name) const
inline

Definition at line 73 of file impl.hpp.

◆ GetDistanceInAu()

Real MeshBlock::Impl::GetDistanceInAu ( ) const
inline

Definition at line 77 of file impl.hpp.

◆ GetMeshOutputGroups()

auto& MeshBlock::Impl::GetMeshOutputGroups ( ) const
inline

Definition at line 79 of file impl.hpp.

◆ GetFITSOutputGroups()

auto& MeshBlock::Impl::GetFITSOutputGroups ( ) const
inline

Definition at line 80 of file impl.hpp.

◆ MapScalarsConserved()

void MeshBlock::Impl::MapScalarsConserved ( AthenaArray< Real > &  s)

Definition at line 92 of file impl.cpp.

Member Data Documentation

◆ du

AthenaArray<Real> MeshBlock::Impl::du

public data

Definition at line 49 of file impl.hpp.

◆ pdec

std::shared_ptr<Decomposition> MeshBlock::Impl::pdec

Definition at line 51 of file impl.hpp.

◆ phevi

std::shared_ptr<ImplicitSolver> MeshBlock::Impl::phevi

Definition at line 52 of file impl.hpp.

◆ pmicro

std::shared_ptr<Microphysics> MeshBlock::Impl::pmicro

Definition at line 53 of file impl.hpp.

◆ prad

std::shared_ptr<Radiation> MeshBlock::Impl::prad

Definition at line 54 of file impl.hpp.

◆ pchem

std::shared_ptr<Chemistry> MeshBlock::Impl::pchem

Definition at line 55 of file impl.hpp.

◆ ptracer

std::shared_ptr<Tracer> MeshBlock::Impl::ptracer

Definition at line 56 of file impl.hpp.

◆ pturb

std::shared_ptr<TurbulenceModel> MeshBlock::Impl::pturb

Definition at line 57 of file impl.hpp.

◆ planet

std::shared_ptr<CelestrialBody> MeshBlock::Impl::planet

Definition at line 58 of file impl.hpp.

◆ all_fits

std::vector<std::shared_ptr<Inversion> > MeshBlock::Impl::all_fits

Definition at line 62 of file impl.hpp.

◆ all_particles

std::vector<std::shared_ptr<ParticleBase> > MeshBlock::Impl::all_particles

Definition at line 63 of file impl.hpp.

◆ scheduler

std::shared_ptr<Scheduler> MeshBlock::Impl::scheduler

Definition at line 66 of file impl.hpp.

◆ exchangers_

std::map<char const *, ExchangerBase *> MeshBlock::Impl::exchangers_
protected

Definition at line 87 of file impl.hpp.

◆ mesh_outputs_

std::vector<std::weak_ptr<MeshOutputGroup> > MeshBlock::Impl::mesh_outputs_
protected

Definition at line 89 of file impl.hpp.

◆ fits_outputs_

std::vector<std::weak_ptr<FITSOutputGroup> > MeshBlock::Impl::fits_outputs_
protected

Definition at line 90 of file impl.hpp.

◆ stellar_distance_au_

Real MeshBlock::Impl::stellar_distance_au_
protected

Definition at line 92 of file impl.hpp.

◆ pmy_block_

MeshBlock const* MeshBlock::Impl::pmy_block_
private

Definition at line 95 of file impl.hpp.


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