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

Source of radiation. More...

#include <JRadiationSource.hh>

Inheritance diagram for JPHYSICS::JRadiationSource:
JPHYSICS::JRadiationInterface

Public Types

typedef double(JRadiation::* sigma_type )(const double) const
 
typedef double(JRadiation::* eloss_type )(const double) const
 
typedef std::pair< sigma_type,
eloss_type
source_type
 

Public Member Functions

 JRadiationSource (const JLANG::JSharedPointer< JRadiation > &radiation, const double density, const source_type source)
 Constructor. More...
 
virtual double getInverseInteractionLength (const double E) const override
 Get inverse interaction length. More...
 
virtual double getA (const double E) const override
 Get A value. More...
 
virtual double getEnergyOfShower (const double E) const override
 Get energy of shower. More...
 

Protected Attributes

JLANG::JSharedPointer< JRadiationrad
 
const double rho
 
sigma_type sigma
 
eloss_type eloss
 

Detailed Description

Source of radiation.

This class implements the JRadiationInterface interface. N.B: This class owns the object pointed to using JSharedPointer<>.

Definition at line 275 of file JRadiationSource.hh.

Member Typedef Documentation

typedef double(JRadiation::* JPHYSICS::JRadiationSource::sigma_type)(const double) const

Definition at line 280 of file JRadiationSource.hh.

typedef double(JRadiation::* JPHYSICS::JRadiationSource::eloss_type)(const double) const

Definition at line 281 of file JRadiationSource.hh.

Definition at line 283 of file JRadiationSource.hh.

Constructor & Destructor Documentation

JPHYSICS::JRadiationSource::JRadiationSource ( const JLANG::JSharedPointer< JRadiation > &  radiation,
const double  density,
const source_type  source 
)
inline

Constructor.

Parameters
radiationpointer to valid JRadition object
densityMass density of radiation material [gr/cm³]
sourcepointers to total cross section and energy loss methods

Definition at line 293 of file JRadiationSource.hh.

295  :
296  rad (radiation),
297  rho (density),
298  sigma(source.first),
299  eloss(source.second)
300  {}
JLANG::JSharedPointer< JRadiation > rad

Member Function Documentation

virtual double JPHYSICS::JRadiationSource::getInverseInteractionLength ( const double  E) const
inlineoverridevirtual

Get inverse interaction length.

Parameters
Emuon energy [GeV]
Returns
inverse interaction length [m^-1]

Implements JPHYSICS::JRadiationInterface.

Definition at line 309 of file JRadiationSource.hh.

310  {
311  return (*rad.*sigma)(E) * rho * 1.0e6;
312  }
JLANG::JSharedPointer< JRadiation > rad
then usage E
Definition: JMuonPostfit.sh:35
virtual double JPHYSICS::JRadiationSource::getA ( const double  E) const
inlineoverridevirtual

Get A value.

Parameters
Emuon energy [GeV]
Returns
ionization A value [GeV/m]

Implements JPHYSICS::JRadiationInterface.

Definition at line 320 of file JRadiationSource.hh.

321  {
322  return (*rad.*sigma)(E) * rho * 1.0e6;
323  }
JLANG::JSharedPointer< JRadiation > rad
then usage E
Definition: JMuonPostfit.sh:35
virtual double JPHYSICS::JRadiationSource::getEnergyOfShower ( const double  E) const
inlineoverridevirtual

Get energy of shower.

Parameters
Emuon energy [GeV]
Returns
shower energy [GeV]

Implements JPHYSICS::JRadiationInterface.

Definition at line 331 of file JRadiationSource.hh.

332  {
333  return (*rad.*eloss)(E);
334  }
JLANG::JSharedPointer< JRadiation > rad
then usage E
Definition: JMuonPostfit.sh:35

Member Data Documentation

JLANG::JSharedPointer<JRadiation> JPHYSICS::JRadiationSource::rad
protected

Definition at line 337 of file JRadiationSource.hh.

const double JPHYSICS::JRadiationSource::rho
protected

Definition at line 338 of file JRadiationSource.hh.

sigma_type JPHYSICS::JRadiationSource::sigma
protected

Definition at line 339 of file JRadiationSource.hh.

eloss_type JPHYSICS::JRadiationSource::eloss
protected

Definition at line 340 of file JRadiationSource.hh.


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