Jpp
Public Types | Public Member Functions | Protected Attributes | List of all members
JFIT::JNPEHit Struct Reference

Auxiliary class for simultaneously handling light yields and response of PMT. More...

#include <JNPEHit.hh>

Inheritance diagram for JFIT::JNPEHit:
JFIT::JNPE JFIT::JK40

Public Types

typedef std::vector< double > JL1_t
 Type definition of expectation values of number of multiple hits. More...
 

Public Member Functions

 JNPEHit ()
 Default constructor. More...
 
 JNPEHit (const JNPE &npe, const size_t n)
 Constructor. More...
 
size_t getN () const
 Get number of hits. More...
 
double getP () const
 Get probability. More...
 
double getP (const double E_GeV) const
 Get muon energy dependent probability. More...
 
double getChi2 (const double E_GeV) const
 Get chi2. More...
 
double getP (const double E_GeV, const bool hit) const
 Get probability for observing a hit or not as a function of muon energy. More...
 
double getP (size_t M) const
 Get probability to observe a hit with given multiplicity. More...
 
double getChi2 (const double E_GeV, const bool hit) const
 Get chi2 for observing a hit or not as a function of muon energy. More...
 
double getYA () const
 Get light yield due to muon itself. More...
 
double getYB () const
 Get light yield due to bremsstrahlung. More...
 
double getZ () const
 Get position along muon path. More...
 
double getH0 () const
 Expected number of photo-electrons for random background hypothesis. More...
 
double getH0 (const size_t M) const
 Expected number of photo-electrons for random background hypothesis. More...
 
double getH1 (const double E_GeV) const
 Expected number of photo-electrons for muon hypothesis as a function of muon energy. More...
 
double getP (const double E_GeV, const bool hit) const
 Get probability for observing a hit or not as a function of muon energy. More...
 
double getP (size_t M) const
 Get probability to observe a hit with given multiplicity. More...
 
double getChi2 (const double E_GeV, const bool hit) const
 Get chi2 for observing a hit or not as a function of muon energy. More...
 
double getY0 () const
 Get expectation value for number of single hits. More...
 
double getY1 (const size_t M) const
 Get expectation value for number of multiple hits. More...
 

Protected Attributes

size_t __n
 
double __yA
 light yield due to minimum ionizing particle [npe] More...
 
double __yB
 light yield due to bremsstrahlung [npe/GeV] More...
 
double __z
 position along muon path [m] More...
 
double __y0
 expectation value of number of single hits More...
 
JL1_t __y1
 expectation values of number of multiple hits More...
 

Detailed Description

Auxiliary class for simultaneously handling light yields and response of PMT.

Definition at line 19 of file JNPEHit.hh.

Member Typedef Documentation

◆ JL1_t

typedef std::vector<double> JFIT::JK40::JL1_t
inherited

Type definition of expectation values of number of multiple hits.

Definition at line 34 of file JK40.hh.

Constructor & Destructor Documentation

◆ JNPEHit() [1/2]

JFIT::JNPEHit::JNPEHit ( )
inline

Default constructor.

Definition at line 28 of file JNPEHit.hh.

28  :
29  JNPE(),
30  __n (0)
31  {}

◆ JNPEHit() [2/2]

JFIT::JNPEHit::JNPEHit ( const JNPE npe,
const size_t  n 
)
inline

Constructor.

Parameters
npenpe
nnumber of hits

Definition at line 40 of file JNPEHit.hh.

41  :
42  JNPE(npe),
43  __n (n)
44  {}

Member Function Documentation

◆ getN()

size_t JFIT::JNPEHit::getN ( ) const
inline

Get number of hits.

Returns
number of hits

Definition at line 52 of file JNPEHit.hh.

53  {
54  return __n;
55  }

◆ getP() [1/6]

double JFIT::JNPEHit::getP ( ) const
inline

Get probability.

Returns
probability

Definition at line 63 of file JNPEHit.hh.

64  {
65  return this->getP(this->getN());
66  }

◆ getP() [2/6]

double JFIT::JNPEHit::getP ( const double  E_GeV) const
inline

Get muon energy dependent probability.

Parameters
E_GeVenergy [GeV]
Returns
probability

Definition at line 75 of file JNPEHit.hh.

76  {
77  return this->getP(E_GeV, this->getN() > 0);
78  }

◆ getChi2() [1/3]

double JFIT::JNPEHit::getChi2 ( const double  E_GeV) const
inline

Get chi2.

Parameters
E_GeVenergy [GeV]
Returns
chi2

Definition at line 87 of file JNPEHit.hh.

88  {
89  return this->getChi2(E_GeV, this->getN() > 0);
90  }

◆ getP() [3/6]

double JFIT::JNPE::getP
inline

Get probability for observing a hit or not as a function of muon energy.

Parameters
E_GeVenergy [GeV]
hithit
Returns
probability

Definition at line 147 of file JNPE.hh.

148  {
149  return JFIT::getP(this->getH1(E_GeV) + this->getH0(), hit);
150  }

◆ getP() [4/6]

double JFIT::JK40::getP
inline

Get probability to observe a hit with given multiplicity.

Note that if M = 0, the probability corresponds to observing no hits.

Parameters
Mmultiplicity (M >= 0)
Returns
probability

Definition at line 129 of file JK40.hh.

130  {
131  double expval = 0.0;
132 
133  if (M < 2)
134  expval = getY0();
135  else
136  expval = getY1(M);
137 
138  return JFIT::getP(expval, M != 0);
139  }

◆ getChi2() [2/3]

double JFIT::JNPE::getChi2
inline

Get chi2 for observing a hit or not as a function of muon energy.

Parameters
E_GeVenergy [GeV]
hithit
Returns
probability

Definition at line 160 of file JNPE.hh.

161  {
162  return JFIT::getChi2(this->getH1(E_GeV) + this->getH0(), hit);
163  }

◆ getYA()

double JFIT::JNPE::getYA ( ) const
inlineinherited

Get light yield due to muon itself.

Returns
light yield [npe]

Definition at line 69 of file JNPE.hh.

70  {
71  return __yA;
72  }

◆ getYB()

double JFIT::JNPE::getYB ( ) const
inlineinherited

Get light yield due to bremsstrahlung.

Returns
light yield [npe/GeV]

Definition at line 80 of file JNPE.hh.

81  {
82  return __yB;
83  }

◆ getZ()

double JFIT::JNPE::getZ ( ) const
inlineinherited

Get position along muon path.

Returns
position along muon path [m]

Definition at line 91 of file JNPE.hh.

92  {
93  return __z;
94  }

◆ getH0() [1/2]

double JFIT::JNPE::getH0 ( ) const
inlineinherited

Expected number of photo-electrons for random background hypothesis.

Returns
light yield [npe]

Definition at line 102 of file JNPE.hh.

103  {
104  return this->getY0();
105  }

◆ getH0() [2/2]

double JFIT::JNPE::getH0 ( const size_t  M) const
inlineinherited

Expected number of photo-electrons for random background hypothesis.

Parameters
Mmultiplicity
Returns
light yield [npe]

Definition at line 114 of file JNPE.hh.

115  {
116  return this->getY1(M);
117  }

◆ getH1()

double JFIT::JNPE::getH1 ( const double  E_GeV) const
inlineinherited

Expected number of photo-electrons for muon hypothesis as a function of muon energy.

Parameters
E_GeVenergy [GeV]
Returns
light yield [npe]

Definition at line 126 of file JNPE.hh.

127  {
128  using namespace JTOOLS;
129  using namespace JPHYSICS;
130 
131  const double E = gWater.getE(E_GeV, this->getZ());
132 
134  return this->getYA() + E * this->getYB();
135  else
136  return 0.0;
137  }

◆ getP() [5/6]

double JFIT::JNPE::getP ( const double  E_GeV,
const bool  hit 
) const
inlineinherited

Get probability for observing a hit or not as a function of muon energy.

Parameters
E_GeVenergy [GeV]
hithit
Returns
probability

Definition at line 147 of file JNPE.hh.

148  {
149  return JFIT::getP(this->getH1(E_GeV) + this->getH0(), hit);
150  }

◆ getP() [6/6]

double JFIT::JK40::getP ( size_t  M) const
inlineinherited

Get probability to observe a hit with given multiplicity.

Note that if M = 0, the probability corresponds to observing no hits.

Parameters
Mmultiplicity (M >= 0)
Returns
probability

Definition at line 129 of file JK40.hh.

130  {
131  double expval = 0.0;
132 
133  if (M < 2)
134  expval = getY0();
135  else
136  expval = getY1(M);
137 
138  return JFIT::getP(expval, M != 0);
139  }

◆ getChi2() [3/3]

double JFIT::JNPE::getChi2 ( const double  E_GeV,
const bool  hit 
) const
inlineinherited

Get chi2 for observing a hit or not as a function of muon energy.

Parameters
E_GeVenergy [GeV]
hithit
Returns
probability

Definition at line 160 of file JNPE.hh.

161  {
162  return JFIT::getChi2(this->getH1(E_GeV) + this->getH0(), hit);
163  }

◆ getY0()

double JFIT::JK40::getY0 ( ) const
inlineinherited

Get expectation value for number of single hits.

Returns
expectation value

Definition at line 101 of file JK40.hh.

102  {
103  return __y0;
104  }

◆ getY1()

double JFIT::JK40::getY1 ( const size_t  M) const
inlineinherited

Get expectation value for number of multiple hits.

Parameters
Mmultiplicity (M >= 2)
Returns
expectation value

Definition at line 113 of file JK40.hh.

114  {
115  if (M >= 2 && M - 2 < __y1.size())
116  return __y1[M-2];
117  else
118  return 0.0;
119  }

Member Data Documentation

◆ __n

size_t JFIT::JNPEHit::__n
protected

Definition at line 93 of file JNPEHit.hh.

◆ __yA

double JFIT::JNPE::__yA
protectedinherited

light yield due to minimum ionizing particle [npe]

Definition at line 166 of file JNPE.hh.

◆ __yB

double JFIT::JNPE::__yB
protectedinherited

light yield due to bremsstrahlung [npe/GeV]

Definition at line 167 of file JNPE.hh.

◆ __z

double JFIT::JNPE::__z
protectedinherited

position along muon path [m]

Definition at line 168 of file JNPE.hh.

◆ __y0

double JFIT::JK40::__y0
protectedinherited

expectation value of number of single hits

Definition at line 142 of file JK40.hh.

◆ __y1

JL1_t JFIT::JK40::__y1
protectedinherited

expectation values of number of multiple hits

Definition at line 143 of file JK40.hh.


The documentation for this struct was generated from the following file:
JFIT::JNPE::getZ
double getZ() const
Get position along muon path.
Definition: JNPE.hh:91
JTOOLS::MASS_MUON
static const double MASS_MUON
muon mass [GeV]
Definition: JConstants.hh:59
JPHYSICS::gWater
static const JGeaneWater gWater
Function object for energy loss of muon in sea water.
Definition: JGeane.hh:328
JFIT::JNPEHit::getN
size_t getN() const
Get number of hits.
Definition: JNPEHit.hh:52
JTOOLS::n
const int n
Definition: JPolint.hh:628
JFIT::JK40::__y0
double __y0
expectation value of number of single hits
Definition: JK40.hh:142
JFIT::JNPEHit::getP
double getP() const
Get probability.
Definition: JNPEHit.hh:63
JPHYSICS
Auxiliary classes and methods for calculation of PDF and muon energy loss.
Definition: JAbstractMedium.hh:9
JFIT::JNPE::getYB
double getYB() const
Get light yield due to bremsstrahlung.
Definition: JNPE.hh:80
JFIT::JNPE::__yA
double __yA
light yield due to minimum ionizing particle [npe]
Definition: JNPE.hh:166
JFIT::JK40::getY0
double getY0() const
Get expectation value for number of single hits.
Definition: JK40.hh:101
JPHYSICS::JGeaneWater::getE
virtual double getE(const double E, const double dx) const
Get energy of muon after specified distance.
Definition: JGeane.hh:260
JFIT::JNPE::getH0
double getH0() const
Expected number of photo-electrons for random background hypothesis.
Definition: JNPE.hh:102
JFIT::JNPEHit::__n
size_t __n
Definition: JNPEHit.hh:93
JFIT::JNPEHit::getChi2
double getChi2(const double E_GeV) const
Get chi2.
Definition: JNPEHit.hh:87
JTOOLS::INDEX_OF_REFRACTION_WATER
static const double INDEX_OF_REFRACTION_WATER
average index of refraction of water
Definition: JConstants.hh:37
JFIT::JNPE::getH1
double getH1(const double E_GeV) const
Expected number of photo-electrons for muon hypothesis as a function of muon energy.
Definition: JNPE.hh:126
JFIT::JNPE::JNPE
JNPE()
Default constructor.
Definition: JNPE.hh:37
JFIT::getChi2
double getChi2(const double P)
Get chi2 corresponding to given probability.
Definition: JFitToolkit.hh:80
JFIT::getP
double getP(const double expval, bool hit)
Get Poisson probability to observe a hit or not for given expectation value for the number of hits.
Definition: JFitToolkit.hh:37
JFIT::JNPE::__yB
double __yB
light yield due to bremsstrahlung [npe/GeV]
Definition: JNPE.hh:167
JTOOLS
Auxiliary classes and methods for multi-dimensional interpolations and histograms.
Definition: JAbstractCollection.hh:9
JFIT::JNPE::getYA
double getYA() const
Get light yield due to muon itself.
Definition: JNPE.hh:69
JFIT::JK40::getY1
double getY1(const size_t M) const
Get expectation value for number of multiple hits.
Definition: JK40.hh:113
JFIT::JK40::__y1
JL1_t __y1
expectation values of number of multiple hits
Definition: JK40.hh:143
JFIT::JNPE::__z
double __z
position along muon path [m]
Definition: JNPE.hh:168