Jpp  15.0.1-rc.1-highQE
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 122 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 131 of file JGeane.hh.

132  :
133  a(__a),
134  b(__b)
135  {}
const double b
Definition: JGeane.hh:193
const double a
Definition: JGeane.hh:192

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

144  {
145  return a;
146  }
const double a
Definition: JGeane.hh:192
virtual double JPHYSICS::JGeane_t::getB ( ) const
inlineoverridevirtual

Get energy loss constant.

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

Implements JPHYSICS::JGeane.

Definition at line 154 of file JGeane.hh.

155  {
156  return b;
157  }
const double b
Definition: JGeane.hh:193
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 167 of file JGeane.hh.

168  {
169  const double y = (a/b + E) * exp(-b*dx) - a/b;
170 
171  if (y > 0.0)
172  return y;
173  else
174  return 0.0;
175  }
then usage E
Definition: JMuonPostfit.sh:35
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"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
const double b
Definition: JGeane.hh:193
const double a
Definition: JGeane.hh:192
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 185 of file JGeane.hh.

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

84  {
85  return this->getE(E, dx);
86  }
virtual double getE(const double E, const double dx) const =0
Get energy of muon after specified distance.
then usage E
Definition: JMuonPostfit.sh:35
double JPHYSICS::JGeane::operator() ( const double  E) const
inlineinherited

Range of muon.

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

Definition at line 95 of file JGeane.hh.

96  {
97  return this->getX(E, 0.0);
98  }
then usage E
Definition: JMuonPostfit.sh:35
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 106 of file JGeane.hh.

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

Member Data Documentation

const double JPHYSICS::JGeane_t::a
protected

Definition at line 192 of file JGeane.hh.

const double JPHYSICS::JGeane_t::b
protected

Definition at line 193 of file JGeane.hh.


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