List of all members | Classes | Public Member Functions | Static Public Member Functions | Private Attributes
atm::InclinedAtmosphericProfile Class Reference

Provides translational services for inclined profile. More...

#include <InclinedAtmosphericProfile.h>

Classes

class  InclinedAtmosphereModelException
 execption handling for calculation/access for inclined atmosphere model More...
 

Public Member Functions

const atm::ProfileResultEvaluateDistanceVsSlantDepth () const
 Table of distance as a function of slant depth. More...
 
const atm::ProfileResultEvaluateHeightVsDistance () const
 Table of height as a function of distance. More...
 
const atm::ProfileResultEvaluateHeightVsSlantDepth () const
 Table of height as a function of slant depth. More...
 
const atm::ProfileResultEvaluateSlantDepthVsDistance () const
 Table of slant depth as a function of distance. More...
 
 InclinedAtmosphericProfile (const utl::Point &core, const utl::Vector &axis, const double deltaDepth)
 Init method for simulation part, based on a slant depth profile. More...
 
 ~InclinedAtmosphericProfile ()
 

Static Public Member Functions

static double IntegratedGrammage (const utl::Point &pStart, const utl::Point &pStop, const double delta)
 

Private Attributes

atm::ProfileResultfDistanceVsSlantDepth = nullptr
 
atm::ProfileResultfHeightVsDistance = nullptr
 
atm::ProfileResultfHeightVsSlantDepth = nullptr
 
atm::ProfileResultfSlantDepthVsDistance = nullptr
 

Detailed Description

Provides translational services for inclined profile.

"atm/InclinedAtmosphericProfile.h"

This class will provide the functionallity of translating height and slant depth for inclined showers using a round earth and a curved atmosphere.

Explanation of parameters and quantities evaluated:

Core = point to measure distance from

Axis = opposite the actual movement of the shower. Along this direction the slant depth will be calculated, but such that positive distance is measured in the direction of -axis, ie distances in the axis direction are negative (do not ask why...). The point along the shower track is thus described as core - distance * axis. Note that when axis is pointing down (ie the shower is going up) the slant depth calculation will switch to the upward mode where the sense of some things changes.

Distance = slant distance measured from core in the direction of the shower propagation, ie oposite the shower axis: for normal, downward going showers it is positive below the core and negative above. The range of the slant distance values is such that the lowest distance (most negative) corresponds to the uppermost height available in the atmospheric profile used and the highest slant distance corresponds to the lowest point in the profile.

Height = is always measured relative to the WGS84 elliposid of the UTM and is therefore the UTM height (positive above the sea level).

Slant Depth = traversed matter measured relative to the top of the atmosphere and increasing downwards for downward moving showers, and measured relative to UTM height=0 and increasing upwards for upward moving showers.

DOWNWARD moving shower:

The statements above for the input axis pointing upwards are summarized in this schematic plot:

height ^ shower moves downwards | / profile | / max + . . . . . . . / depth=0 (or min) | / | / | / | / negative distances | / | / | ^ axis upward ground |________________core * distance=0 _______________ | / | / positive distances profile | / min + . . . . / depth=max | | 0 +----------—sea-level-----------------------—>

SlantDepth is in the upward-axis case the same as the usual defintion of X.

UPWARD moving shower:

When the input axis is pointing downwards, some of the quantities change:

height ^ shower moves upwards | / profile | / max + . . . . . . . / depth=max | / | / | / | / positive distances | / | / | / ground |________________core * distance=0 _______________ | V axis downward | / | / negative distances profile | / min + . . . . / depth=0 | | 0 +----------—sea-level-----------------------—>

The transformation from SlantDept vs distance to the usual definition of X vs distance is in the downward-axis case X(d) = slantDepth.Y(slantDepth.MaxX()) - slantDepth.Y(d) where d is the distance. Similar expression holds for height.

Author
Ralf Ulrich
Date
Wed Oct 26 18:12:12 BRST 2005

Definition at line 119 of file InclinedAtmosphericProfile.h.

Constructor & Destructor Documentation

InclinedAtmosphericProfile::InclinedAtmosphericProfile ( const utl::Point core,
const utl::Vector axis,
const double  deltaDepth 
)
InclinedAtmosphericProfile::~InclinedAtmosphericProfile ( )

Definition at line 295 of file InclinedAtmosphericProfile.cc.

Member Function Documentation

const atm::ProfileResult & InclinedAtmosphericProfile::EvaluateDistanceVsSlantDepth ( ) const

Table of distance as a function of slant depth.

Definition at line 318 of file InclinedAtmosphericProfile.cc.

Referenced by FdSimEventCheckerOG::FdSimEventChecker::CalculateXmaxViewingAngle(), and otoa::fd::ConvertXToChi().

const atm::ProfileResult & InclinedAtmosphericProfile::EvaluateHeightVsDistance ( ) const

Table of height as a function of distance.

Definition at line 342 of file InclinedAtmosphericProfile.cc.

const atm::ProfileResult & InclinedAtmosphericProfile::EvaluateHeightVsSlantDepth ( ) const

Table of height as a function of slant depth.

Definition at line 330 of file InclinedAtmosphericProfile.cc.

const atm::ProfileResult & InclinedAtmosphericProfile::EvaluateSlantDepthVsDistance ( ) const

Table of slant depth as a function of distance.

Definition at line 306 of file InclinedAtmosphericProfile.cc.

double InclinedAtmosphericProfile::IntegratedGrammage ( const utl::Point pStart,
const utl::Point pStop,
const double  delta 
)
static

Member Data Documentation

atm::ProfileResult* atm::InclinedAtmosphericProfile::fDistanceVsSlantDepth = nullptr
private

Definition at line 153 of file InclinedAtmosphericProfile.h.

atm::ProfileResult* atm::InclinedAtmosphericProfile::fHeightVsDistance = nullptr
private

Definition at line 155 of file InclinedAtmosphericProfile.h.

atm::ProfileResult* atm::InclinedAtmosphericProfile::fHeightVsSlantDepth = nullptr
private

Definition at line 154 of file InclinedAtmosphericProfile.h.

atm::ProfileResult* atm::InclinedAtmosphericProfile::fSlantDepthVsDistance = nullptr
private

Definition at line 152 of file InclinedAtmosphericProfile.h.


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

, generated on Tue Sep 26 2023.