Jpp  18.2.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
JPHYSICS::JGeane_t Class Reference

Function object for the energy loss of the muon. More...

#include <JGeane.hh>

Inheritance diagram for JPHYSICS::JGeane_t:
JPHYSICS::JGeane

Public Member Functions

 JGeane_t (const double __a, const double __b)
 constructor More...
 
virtual double getA () const override
 Get energy loss constant. More...
 
virtual double getB () const override
 Get energy loss constant. More...
 
virtual double getE (const double E, const double dx) const override
 Get energy of muon after specified distance. More...
 
virtual double getX (const double E0, const double E1) const override
 Get distance traveled by muon. More...
 
double operator() (const double E, const double dx) const
 Energy of muon after specified distance. More...
 
double operator() (const double E) const
 Range of muon. More...
 
double operator() () const
 Equivalent unit track length per unit shower energy and per unit track length. More...
 

Protected Attributes

const double a
 
const double b
 

Detailed Description

Function object for the energy loss of the muon.


The energy loss can be formulated as:

\[ -\frac{dE}{dx} = a + bE \]

N.B: $ a $ and $ b $ are assumed constant (internal units m and GeV, respectively).

Definition at line 124 of file JGeane.hh.

Constructor & Destructor Documentation

JPHYSICS::JGeane_t::JGeane_t ( const double  __a,
const double  __b 
)
inline

constructor

Parameters
__aEnergy loss due to ionisation [GeV/m]
__bEnergy loss due to pair production and bremsstrahlung [m^-1]

Definition at line 133 of file JGeane.hh.

134  :
135  a(__a),
136  b(__b)
137  {}
const double b
Definition: JGeane.hh:195
const double a
Definition: JGeane.hh:194

Member Function Documentation

virtual double JPHYSICS::JGeane_t::getA ( ) const
inlineoverridevirtual

Get energy loss constant.

Returns
Energy loss due to ionisation [GeV/m]

Implements JPHYSICS::JGeane.

Definition at line 145 of file JGeane.hh.

146  {
147  return a;
148  }
const double a
Definition: JGeane.hh:194
virtual double JPHYSICS::JGeane_t::getB ( ) const
inlineoverridevirtual

Get energy loss constant.

Returns
Energy loss due to pair production and bremsstrahlung [m^-1]

Implements JPHYSICS::JGeane.

Definition at line 156 of file JGeane.hh.

157  {
158  return b;
159  }
const double b
Definition: JGeane.hh:195
virtual double JPHYSICS::JGeane_t::getE ( const double  E,
const double  dx 
) const
inlineoverridevirtual

Get energy of muon after specified distance.

Parameters
EEnergy of muon [GeV]
dxdistance traveled [m]
Returns
Energy of muon [GeV]

Implements JPHYSICS::JGeane.

Definition at line 169 of file JGeane.hh.

170  {
171  const double y = (a/b + E) * exp(-b*dx) - a/b;
172 
173  if (y > 0.0)
174  return y;
175  else
176  return 0.0;
177  }
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
Definition: JMuonPostfit.sh:40
const double b
Definition: JGeane.hh:195
const double a
Definition: JGeane.hh:194
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` source JAcousticsToolkit.sh typeset -A TRIPODS get_tripods $WORKDIR/tripod.txt TRIPODS XMEAN
virtual double JPHYSICS::JGeane_t::getX ( const double  E0,
const double  E1 
) const
inlineoverridevirtual

Get distance traveled by muon.

Parameters
E0Energy of muon at start [GeV]
E1Energy of muon at end [GeV]
Returns
distance traveled [m]

Implements JPHYSICS::JGeane.

Definition at line 187 of file JGeane.hh.

189  {
190  return -log((a + b*E1) / (a+b*E0)) / b;
191  }
const double b
Definition: JGeane.hh:195
const double a
Definition: JGeane.hh:194
then set_variable DIR else fatal Wrong number of arguments fi for INPUT_FILE in ls rt $DIR stage * log
double JPHYSICS::JGeane::operator() ( const double  E,
const double  dx 
) const
inlineinherited

Energy of muon after specified distance.

Parameters
EEnergy of muon [GeV]
dxdistance traveled [m]
Returns
Energy of muon [GeV]

Definition at line 85 of file JGeane.hh.

86  {
87  return this->getE(E, dx);
88  }
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
Definition: JMuonPostfit.sh:40
virtual double getE(const double E, const double dx) const =0
Get energy of muon after specified distance.
double JPHYSICS::JGeane::operator() ( const double  E) const
inlineinherited

Range of muon.

Parameters
EEnergy of muon [GeV]
Returns
range [m]

Definition at line 97 of file JGeane.hh.

98  {
99  return this->getX(E, 0.0);
100  }
then usage $script< input file >[option[primary[working directory]]] nWhere option can be E
Definition: JMuonPostfit.sh:40
virtual double getX(const double E0, const double E1) const =0
Get distance traveled by muon.
double JPHYSICS::JGeane::operator() ( ) const
inlineinherited

Equivalent unit track length per unit shower energy and per unit track length.

Returns
equivalent unit track length [Gev^-1]

Definition at line 108 of file JGeane.hh.

109  {
110  return this->getB() * geanc();
111  }
double geanc()
Equivalent muon track length per unit shower energy.
Definition: JGeane.hh:28
virtual double getB() const =0
Get energy loss constant.

Member Data Documentation

const double JPHYSICS::JGeane_t::a
protected

Definition at line 194 of file JGeane.hh.

const double JPHYSICS::JGeane_t::b
protected

Definition at line 195 of file JGeane.hh.


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