Jpp
 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
 Get energy loss constant. More...
 
virtual double getB () const
 Get energy loss constant. More...
 
virtual double getE (const double E, const double dx) const
 Get energy of muon after specified distance. More...
 
virtual double getX (const double E0, const double E1) const
 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 127 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 Bremstrahlung [m^-1]

Definition at line 136 of file JGeane.hh.

137  :
138  a(__a),
139  b(__b)
140  {}
const double b
Definition: JGeane.hh:198
const double a
Definition: JGeane.hh:197

Member Function Documentation

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

Get energy loss constant.

Returns
Energy loss due to ionisation [GeV/m]

Implements JPHYSICS::JGeane.

Definition at line 148 of file JGeane.hh.

149  {
150  return a;
151  }
const double a
Definition: JGeane.hh:197
virtual double JPHYSICS::JGeane_t::getB ( ) const
inlinevirtual

Get energy loss constant.

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

Implements JPHYSICS::JGeane.

Definition at line 159 of file JGeane.hh.

160  {
161  return b;
162  }
const double b
Definition: JGeane.hh:198
virtual double JPHYSICS::JGeane_t::getE ( const double  E,
const double  dx 
) const
inlinevirtual

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 172 of file JGeane.hh.

173  {
174  const double y = (a/b + E) * exp(-b*dx) - a/b;
175 
176  if (y > 0.0)
177  return y;
178  else
179  return 0.0;
180  }
const double b
Definition: JGeane.hh:198
const double a
Definition: JGeane.hh:197
then usage $script[input file[working directory[option]]] nWhere option can be E
Definition: JMuonPostfit.sh:37
then set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable OUTPUT_FILE histogram.root JHistogram1D -o $WORKDIR/$OUTPUT_FILE -F "$FORMULA" -
virtual double JPHYSICS::JGeane_t::getX ( const double  E0,
const double  E1 
) const
inlinevirtual

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 190 of file JGeane.hh.

192  {
193  return -log((a + b*E1) / (a+b*E0)) / b;
194  }
const double b
Definition: JGeane.hh:198
const double a
Definition: JGeane.hh:197
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 88 of file JGeane.hh.

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

Range of muon.

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

Definition at line 100 of file JGeane.hh.

101  {
102  return this->getX(E, 0.0);
103  }
virtual double getX(const double E0, const double E1) const =0
Get distance traveled by muon.
then usage $script[input file[working directory[option]]] nWhere option can be E
Definition: JMuonPostfit.sh:37
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 111 of file JGeane.hh.

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

Member Data Documentation

const double JPHYSICS::JGeane_t::a
protected

Definition at line 197 of file JGeane.hh.

const double JPHYSICS::JGeane_t::b
protected

Definition at line 198 of file JGeane.hh.


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