CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
corsika::LayeredSphericalAtmosphereBuilder< TMediumInterface, TMediumModelExtra, TModelArgs > Class Template Reference

Helper class to setup concentric spheres of layered atmosphere with spcified density profiles (exponential, linear, ...). More...

#include <LayeredSphericalAtmosphereBuilder.hpp>

Public Types

typedef VolumeTreeNode< TMediumInterface >::VTN_type volume_tree_node
 
typedef VolumeTreeNode< TMediumInterface >::VTNUPtr volume_tree_node_uptr
 

Public Member Functions

void setNuclearComposition (NuclearComposition const &composition)
 
volume_tree_nodeaddExponentialLayer (GrammageType const b, LengthType const scaleHeight, LengthType const upperBoundary)
 
void addLinearLayer (GrammageType const b, LengthType const scaleHeight, LengthType const upperBoundary)
 
void addTabularLayer (std::function< MassDensityType(LengthType)> const &funcRho, unsigned int const nBins, LengthType const deltaHeight, LengthType const upperBoundary)
 
int getSize () const
 
void assemble (Environment< TMediumInterface > &env)
 
Environment< TMediumInterface > assemble ()
 
LengthType getPlanetRadius () const
 Get the current planet radius.
 

Protected Member Functions

 LayeredSphericalAtmosphereBuilder (TModelArgs... args, Point const &center, LengthType const planetRadius)
 

Friends

template<typename , template< typename > typename>
struct make_layered_spherical_atmosphere_builder
 

Detailed Description

template<typename TMediumInterface = IMediumModel, template< typename > typename TMediumModelExtra = detail::NoExtraModel, typename... TModelArgs>
class corsika::LayeredSphericalAtmosphereBuilder< TMediumInterface, TMediumModelExtra, TModelArgs >

Helper class to setup concentric spheres of layered atmosphere with spcified density profiles (exponential, linear, ...).

This can be used most importantly to replicate CORSIKA7 atmospheres.

Each layer by definition has a density profile and a (constant) nuclear composition model.

Definition at line 61 of file LayeredSphericalAtmosphereBuilder.hpp.


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