 |
Belle II Software
release-05-02-19
|
14 #include <framework/datastore/RelationsObject.h>
15 #include <framework/gearbox/Const.h>
38 ECLPidLikelihood(
const float* logl,
float energy = 0,
float eop = 0,
float e9e25 = 0,
float lat = 0,
float dist = 0,
39 float trkDepth = 0,
float shDepth = 0,
int ncrystals = 0,
int nclusters = 0):
RelationsObject()
45 setVariables(energy, eop, e9e25, lat, dist, trkDepth, shDepth, ncrystals, nclusters);
59 return m_logl[type.getIndex()];
65 return exp((
double)
m_logl[type.getIndex()]);
71 m_logl[type.getIndex()] = logl;
75 void setVariables(
float energy,
float eop,
float e9e25,
float lat,
float dist,
float trkDepth,
float shDepth,
int ncrystals,
82 double energy()
const {
return m_energy; }
83 double eop()
const {
return m_eop; }
85 float lat()
const {
return m_lat; }
86 float dist()
const {
return m_dist; }
88 float shDepth()
const {
return m_shDepth; }
static const unsigned int c_SetSize
Number of elements (for use in array bounds etc.)
void setVariables(float energy, float eop, float e9e25, float lat, float dist, float trkDepth, float shDepth, int ncrystals, int nclusters)
Set cluster features upon which the likelihood might depend.
float getLogLikelihood(const Const::ChargedStable &type) const
returns log-likelihood value for a particle hypothesis.
int m_nClusters
Number of clusters per candidate.
float m_dist
Cluster-Shower distance.
int m_nCrystals
Number of crystals per candidate.
Abstract base class for different kinds of events.
Container for likelihoods with ECL PID (ECLChargedPIDModule)
void setLogLikelihood(const Const::ChargedStable &type, float logl)
corresponding setter for m_logl.
ECLPidLikelihood()
default constructor
float m_e9e25
Ratio of energy in 3x3 matrix over energy in 5x5 matrix (should now be called E9oE21) for cluster.
float m_eop
E/p ratio for cluster.
float m_energy
Cluster Energy.
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
float m_trkDepth
Track Depth.
Provides a type-safe way to pass members of the chargedStableSet set.
float m_logl[Const::ChargedStable::c_SetSize]
log likelihood for each particle, not including momentum prior
float m_shDepth
Cluster Depth.
Defines interface for accessing relations of objects in StoreArray.
ClassDef(ECLPidLikelihood, 3)
Build ROOT dictionary.
double getLikelihood(const Const::ChargedStable &type) const
returns exp(getLogLikelihood(type)) with sufficient precision.