PandaRoot
PndPidProbability Class Reference

#include <PndPidProbability.h>

Inheritance diagram for PndPidProbability:

Public Member Functions

 PndPidProbability ()
 
 PndPidProbability (Double_t e, Double_t mu, Double_t pi, Double_t k, Double_t p, Int_t idx=-1)
 
 ~PndPidProbability ()
 
Double_t GetElectronPdf () const
 
Double_t GetMuonPdf () const
 
Double_t GetPionPdf () const
 
Double_t GetKaonPdf () const
 
Double_t GetProtonPdf () const
 
Int_t GetIndex () const
 
Double_t GetPdf (int pdgCode)
 
Double_t GetPidProb (int pdgCode)
 
Double_t GetElectronPidProb (PndPidProbability *flux=nullptr) const
 
Double_t GetMuonPidProb (PndPidProbability *flux=nullptr) const
 
Double_t GetPionPidProb (PndPidProbability *flux=nullptr) const
 
Double_t GetKaonPidProb (PndPidProbability *flux=nullptr) const
 
Double_t GetProtonPidProb (PndPidProbability *flux=nullptr) const
 
Double_t GetSumProb (PndPidProbability *flux=nullptr) const
 
void NormalizeTo (Double_t N=1.)
 
void SetElectronPdf (Double_t val)
 
void SetMuonPdf (Double_t val)
 
void SetPionPdf (Double_t val)
 
void SetKaonPdf (Double_t val)
 
void SetProtonPdf (Double_t val)
 
void SetIndex (Int_t idx)
 
PndPidProbabilityoperator*= (const PndPidProbability &a)
 
PndPidProbability operator* (const PndPidProbability &a)
 
void Print ()
 
void Reset ()
 

Protected Attributes

Double_t fElectronPdf
 
Double_t fMuonPdf
 
Double_t fPionPdf
 
Double_t fKaonPdf
 
Double_t fProtonPdf
 
Int_t fIndex
 

Friends

std::ostream & operator<< (std::ostream &out, PndPidProbability &pid)
 

Detailed Description

Definition at line 28 of file PndPidProbability.h.

Constructor & Destructor Documentation

◆ PndPidProbability() [1/2]

PndPidProbability::PndPidProbability ( )

◆ PndPidProbability() [2/2]

PndPidProbability::PndPidProbability ( Double_t  e,
Double_t  mu,
Double_t  pi,
Double_t  k,
Double_t  p,
Int_t  idx = -1 
)

◆ ~PndPidProbability()

PndPidProbability::~PndPidProbability ( )

Member Function Documentation

◆ GetElectronPdf()

Double_t PndPidProbability::GetElectronPdf ( ) const
inline

Definition at line 35 of file PndPidProbability.h.

References fElectronPdf.

35 { return fElectronPdf; }

◆ GetElectronPidProb()

Double_t PndPidProbability::GetElectronPidProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 45 of file PndPidProbability.h.

References fElectronPdf, and GetSumProb().

46  {
47  if (flux == nullptr)
48  return fElectronPdf / GetSumProb(flux);
49  else
50  return fElectronPdf * flux->GetElectronPdf() / GetSumProb(flux);
51  }
Double_t GetElectronPdf() const
Double_t GetSumProb(PndPidProbability *flux=nullptr) const

◆ GetIndex()

Int_t PndPidProbability::GetIndex ( ) const
inline

Definition at line 40 of file PndPidProbability.h.

References fIndex, GetPdf(), and GetPidProb().

40 { return fIndex; }

◆ GetKaonPdf()

Double_t PndPidProbability::GetKaonPdf ( ) const
inline

Definition at line 38 of file PndPidProbability.h.

References fKaonPdf.

38 { return fKaonPdf; }

◆ GetKaonPidProb()

Double_t PndPidProbability::GetKaonPidProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 66 of file PndPidProbability.h.

References fKaonPdf, and GetSumProb().

67  {
68  if (flux == nullptr)
69  return fKaonPdf / GetSumProb(flux);
70  else
71  return fKaonPdf * flux->GetKaonPdf() / GetSumProb(flux);
72  }
Double_t GetKaonPdf() const
Double_t GetSumProb(PndPidProbability *flux=nullptr) const

◆ GetMuonPdf()

Double_t PndPidProbability::GetMuonPdf ( ) const
inline

Definition at line 36 of file PndPidProbability.h.

References fMuonPdf.

36 { return fMuonPdf; }

◆ GetMuonPidProb()

Double_t PndPidProbability::GetMuonPidProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 52 of file PndPidProbability.h.

References fMuonPdf, and GetSumProb().

53  {
54  if (flux == nullptr)
55  return fMuonPdf / GetSumProb(flux);
56  else
57  return fMuonPdf * flux->GetMuonPdf() / GetSumProb(flux);
58  }
Double_t GetMuonPdf() const
Double_t GetSumProb(PndPidProbability *flux=nullptr) const

◆ GetPdf()

Double_t PndPidProbability::GetPdf ( int  pdgCode)

Referenced by GetIndex().

◆ GetPidProb()

Double_t PndPidProbability::GetPidProb ( int  pdgCode)

Referenced by GetIndex().

◆ GetPionPdf()

Double_t PndPidProbability::GetPionPdf ( ) const
inline

Definition at line 37 of file PndPidProbability.h.

References fPionPdf.

37 { return fPionPdf; }

◆ GetPionPidProb()

Double_t PndPidProbability::GetPionPidProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 59 of file PndPidProbability.h.

References fPionPdf, and GetSumProb().

60  {
61  if (flux == nullptr)
62  return fPionPdf / GetSumProb(flux);
63  else
64  return fPionPdf * flux->GetPionPdf() / GetSumProb(flux);
65  }
Double_t GetPionPdf() const
Double_t GetSumProb(PndPidProbability *flux=nullptr) const

◆ GetProtonPdf()

Double_t PndPidProbability::GetProtonPdf ( ) const
inline

Definition at line 39 of file PndPidProbability.h.

References fProtonPdf.

39 { return fProtonPdf; }

◆ GetProtonPidProb()

Double_t PndPidProbability::GetProtonPidProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 73 of file PndPidProbability.h.

References fProtonPdf, and GetSumProb().

74  {
75  if (flux == nullptr)
76  return fProtonPdf / GetSumProb(flux);
77  else
78  return fProtonPdf * flux->GetProtonPdf() / GetSumProb(flux);
79  }
Double_t GetProtonPdf() const
Double_t GetSumProb(PndPidProbability *flux=nullptr) const

◆ GetSumProb()

Double_t PndPidProbability::GetSumProb ( PndPidProbability flux = nullptr) const
inline

Definition at line 81 of file PndPidProbability.h.

References fElectronPdf, fKaonPdf, fMuonPdf, fPionPdf, fProtonPdf, and NormalizeTo().

Referenced by GetElectronPidProb(), GetKaonPidProb(), GetMuonPidProb(), GetPionPidProb(), and GetProtonPidProb().

82  {
83  if (flux == nullptr)
85  else
86  return fElectronPdf * flux->GetElectronPdf() + fMuonPdf * flux->GetMuonPdf() + fPionPdf * flux->GetPionPdf() + fKaonPdf * flux->GetKaonPdf() +
87  fProtonPdf * flux->GetProtonPdf();
88  }
Double_t GetProtonPdf() const
Double_t GetElectronPdf() const
Double_t GetMuonPdf() const
Double_t GetKaonPdf() const
Double_t GetPionPdf() const

◆ NormalizeTo()

void PndPidProbability::NormalizeTo ( Double_t  N = 1.)

Referenced by GetSumProb().

◆ operator*()

PndPidProbability PndPidProbability::operator* ( const PndPidProbability a)

Referenced by SetIndex().

◆ operator*=()

PndPidProbability& PndPidProbability::operator*= ( const PndPidProbability a)

Referenced by SetIndex().

◆ Print()

void PndPidProbability::Print ( )

Referenced by SetIndex().

◆ Reset()

void PndPidProbability::Reset ( )

Referenced by SetIndex().

◆ SetElectronPdf()

void PndPidProbability::SetElectronPdf ( Double_t  val)
inline

Definition at line 92 of file PndPidProbability.h.

References fElectronPdf.

92 { fElectronPdf = (Double_t)val; }

◆ SetIndex()

void PndPidProbability::SetIndex ( Int_t  idx)
inline

Definition at line 97 of file PndPidProbability.h.

References fIndex, operator*(), operator*=(), Print(), and Reset().

97 { fIndex = idx; }

◆ SetKaonPdf()

void PndPidProbability::SetKaonPdf ( Double_t  val)
inline

Definition at line 95 of file PndPidProbability.h.

References fKaonPdf.

95 { fKaonPdf = (Double_t)val; }

◆ SetMuonPdf()

void PndPidProbability::SetMuonPdf ( Double_t  val)
inline

Definition at line 93 of file PndPidProbability.h.

References fMuonPdf.

93 { fMuonPdf = (Double_t)val; }

◆ SetPionPdf()

void PndPidProbability::SetPionPdf ( Double_t  val)
inline

Definition at line 94 of file PndPidProbability.h.

References fPionPdf.

94 { fPionPdf = (Double_t)val; }

◆ SetProtonPdf()

void PndPidProbability::SetProtonPdf ( Double_t  val)
inline

Definition at line 96 of file PndPidProbability.h.

References fProtonPdf.

96 { fProtonPdf = (Double_t)val; }

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
PndPidProbability pid 
)
friend

Definition at line 105 of file PndPidProbability.h.

106  {
107  pid.Print();
108  return out;
109  }

Member Data Documentation

◆ fElectronPdf

Double_t PndPidProbability::fElectronPdf
protected

◆ fIndex

Int_t PndPidProbability::fIndex
protected

Definition at line 117 of file PndPidProbability.h.

Referenced by GetIndex(), and SetIndex().

◆ fKaonPdf

Double_t PndPidProbability::fKaonPdf
protected

Definition at line 115 of file PndPidProbability.h.

Referenced by GetKaonPdf(), GetKaonPidProb(), GetSumProb(), and SetKaonPdf().

◆ fMuonPdf

Double_t PndPidProbability::fMuonPdf
protected

Definition at line 113 of file PndPidProbability.h.

Referenced by GetMuonPdf(), GetMuonPidProb(), GetSumProb(), and SetMuonPdf().

◆ fPionPdf

Double_t PndPidProbability::fPionPdf
protected

Definition at line 114 of file PndPidProbability.h.

Referenced by GetPionPdf(), GetPionPidProb(), GetSumProb(), and SetPionPdf().

◆ fProtonPdf

Double_t PndPidProbability::fProtonPdf
protected

Definition at line 116 of file PndPidProbability.h.

Referenced by GetProtonPdf(), GetProtonPidProb(), GetSumProb(), and SetProtonPdf().


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