Belle II Software  release-05-01-25
B2BIIConvertMdstModule.h
1 //+
2 // File : PantherInputModule.h
3 // Description : A module to read Panther record in basf2
4 //
5 // Author : Ryosuke Itoh, IPNS, KEK
6 // Date : 16 - Feb - 2015
7 //
8 // Contirbutors: Anze Zupanc, Matic Lubej,
9 //-
10 
11 #ifndef B2BII_CONVERT_MDST_H
12 #define B2BII_CONVERT_MDST_H
13 
14 #include <framework/core/Module.h>
15 
16 #define BELLE_TARGET_H "belle-x86_64-unknown-linux-gnu-g++.h"
17 #include "belle_legacy/panther/panther.h"
18 #include "belle_legacy/panther/panther_group.h"
19 
20 // Belle objects (Panther tables)
21 #include "belle_legacy/tables/belletdf.h"
22 #include "belle_legacy/tables/mdst.h"
23 
24 #include "belle_legacy/helix/Helix.h"
25 
26 // Belle2 objects
27 #include <mdst/dataobjects/V0.h>
28 #include <mdst/dataobjects/ECLCluster.h>
29 #include <mdst/dataobjects/KLMCluster.h>
30 #include <analysis/dataobjects/Particle.h>
31 #include <analysis/dataobjects/ParticleList.h>
32 #include <mdst/dataobjects/MCParticle.h>
33 #include <mdst/dataobjects/MCParticleGraph.h>
34 #include <mdst/dataobjects/Track.h>
35 #include <mdst/dataobjects/PIDLikelihood.h>
36 #include <analysis/dataobjects/EventExtraInfo.h>
37 #include <b2bii/dataobjects/BelleTrkExtra.h>
38 
39 // Replace BeamParameters
40 #include <mdst/dbobjects/BeamSpot.h>
41 #include <mdst/dbobjects/CollisionBoostVector.h>
42 #include <mdst/dbobjects/CollisionInvariantMass.h>
43 
44 #include <framework/datastore/StoreArray.h>
45 #include <framework/database/DBObjPtr.h>
46 #include <framework/gearbox/Const.h>
47 
48 #include "CLHEP/Vector/ThreeVector.h"
49 #include "CLHEP/Vector/LorentzVector.h"
50 #include "CLHEP/Matrix/SymMatrix.h"
51 #include "CLHEP/Geometry/Point3D.h"
52 
54 
55 #include <string>
56 #include <map>
57 
58 //enable ACC conversion (needs externals >= v00-06-01)
59 #define HAVE_KID_ACC
60 
61 //enable EID conversion (needs externals > v00-07-01)
62 #define HAVE_EID
63 
64 // enable findKs (needs externals > v00-07-01)
65 #define HAVE_FINDKS
66 
67 // enable nisKsFinder (needs externals > v00-07-01)
68 #define HAVE_NISKSFINDER
69 
70 // enable goodLambda (needs externals >= v01-08-00)
71 #define HAVE_GOODLAMBDA
72 
73 namespace Belle2 {
97  class B2BIIConvertMdstModule : public Module {
98 
103 
106 
109 
110  };
111 
112  // Public functions
113  public:
114 
118  virtual ~B2BIIConvertMdstModule() override;
119 
121  virtual void initialize() override;
122 
124  virtual void beginRun() override;
125  virtual void event() override;
126  virtual void endRun() override;
127  virtual void terminate() override;
129  // Data members
130  private:
131 
135  void initializeDataStore();
136 
138  // true = real data
139  // false = mc
141 
144 
146  // true = use 6x6 (position, momentum) covariance matrix
147  // false = use 5x5 (helix parameters) covariance matrix
149 
152 
155 
158  bool m_nisEnable;
170 
173 
174  //-----------------------------------------------------------------------------
175  // CONVERT TABLES
176  //-----------------------------------------------------------------------------
177 
181  void convertRecTrgTable();
182 
186  void convertEvtclsTable();
187 
191  void convertGenHepEvtTable();
192 
196  void convertMdstECLTable();
197 
201  void convertMdstKLMTable();
202 
207 
211  void convertMdstGammaTable();
212 
216  void convertMdstKLongTable();
217 
221  void convertMdstPi0Table();
222 
227  void convertMdstVee2Table();
228 
230  void convertBeamEnergy();
231 
233  void convertIPProfile(bool beginRun = false);
234 
235  //-----------------------------------------------------------------------------
236  // CONVERT OBJECTS
237  //-----------------------------------------------------------------------------
238 
242  void convertGenHepevtObject(const Belle::Gen_hepevt& genHepevt, MCParticleGraph::GraphParticle* mcParticle);
243 
248  void convertMdstECLObject(const Belle::Mdst_ecl& ecl, const Belle::Mdst_ecl_aux& eclAux, ECLCluster* eclCluster);
249 
254  void convertMdstKLMObject(const Belle::Mdst_klm_cluster& klm, KLMCluster* klmCluster);
255 
260  void convertMdstChargedObject(const Belle::Mdst_charged& belleTrack, Track* track);
261 
265  TrackFitResult createTrackFitResult(const CLHEP::HepLorentzVector& momentum,
266  const HepPoint3D& position,
267  const CLHEP::HepSymMatrix& error,
268  const short int charge,
269  const Const::ParticleType& pType,
270  const float pValue,
271  const uint64_t hitPatternCDCInitializer,
272  const uint32_t hitPatternVXDInitializer,
273  const uint16_t ndf);
274 
278  int getHelixParameters(const Belle::Mdst_trk_fit& trk_fit,
279  const double mass,
280  const HepPoint3D& newPivot,
281  std::vector<float>& helixParams,
282  CLHEP::HepSymMatrix& error5x5,
283  CLHEP::HepLorentzVector& momentum,
284  HepPoint3D& position,
285  CLHEP::HepSymMatrix& error7x7,
286  const double dPhi = 0.0);
287 
291  void convertHelix(Belle::Helix& helix, std::vector<float>& helixParams, CLHEP::HepSymMatrix& error5x5);
292 
296  void convertHelix(const Belle::Mdst_trk_fit& trk_fit, const HepPoint3D& newPivot, std::vector<float>& helixParams,
297  std::vector<float>& helixError);
298 
302  int belleHelixToCartesian(const Belle::Mdst_trk_fit& trk_fit, const double mass, const HepPoint3D& newPivot,
303  CLHEP::HepLorentzVector& momentum, HepPoint3D& position, CLHEP::HepSymMatrix& error, double dPhi = 0.0);
304 
308  void belleHelixToHelix(const Belle::Mdst_trk_fit& trk_fit,
309  std::vector<float>& helixParam, std::vector<float>& helixError);
310 
314  void belleVeeDaughterToCartesian(const Belle::Mdst_vee2& vee, const int charge, const Const::ParticleType& pType,
315  CLHEP::HepLorentzVector& momentum, HepPoint3D& position, CLHEP::HepSymMatrix& error);
316 
320  void belleVeeDaughterHelix(const Belle::Mdst_vee2& vee, const int charge, std::vector<float>& helixParam,
321  std::vector<float>& helixError);
322 
324  void convertPIDData(const Belle::Mdst_charged& belleTrack, const Track* track);
325 
327  const static int c_nHyp = 5;
330 
332  void setLikelihoods(PIDLikelihood* pid, Const::EDetector det, double likelihoods[c_nHyp], bool discard_allzero = false);
333 
334 #ifdef HAVE_KID_ACC
335 
336  static double acc_pid(const Belle::Mdst_charged& chg, int idp);
338  double cdc_pid(const Belle::Mdst_charged& chg, int idp);
339 #endif
340 
342  double atcPID(const PIDLikelihood* pid, int sigHyp, int bkgHyp);
343 
344  //-----------------------------------------------------------------------------
345  // RELATIONS
346  //-----------------------------------------------------------------------------
347 
352 
357 
358  //-----------------------------------------------------------------------------
359  // MISC
360  //-----------------------------------------------------------------------------
361 
365  int recoverMoreThan24bitIDHEP(int id);
366 
370  void testMCRelation(const Belle::Gen_hepevt& belleMC, const MCParticle* mcP, const std::string& objectName);
371 
374 
376  std::map<int, int> genHepevtToMCParticle;
378  std::map<int, int> mdstEclToECLCluster;
380  std::map<int, int> mdstGammaToParticle;
382  std::map<int, int> mdstKlmToKLMCluster;
384  std::map<int, int> mdstKlongToParticle;
385 
388 
391 
394 
397 
400 
403 
406 
409 
412 
415 
437  const int ERRMCONV[7] = {3, 4, 5, -1, 0, 1, 2};
438 
440  const double BFIELD = 1.5;
441 
443  const double KAPPA2OMEGA = 1.5 * TMath::C() * 1E-11;
444 
445  };
446 
448 } // end namespace Belle2
449 
450 #endif
Belle2::B2BIIConvertMdstModule::convertMdstVee2Table
void convertMdstVee2Table()
Reads and converts all entries of Mdst_vee2 Panther table to V0 dataobjects and adds them to StoreArr...
Definition: B2BIIConvertMdstModule.cc:493
Belle2::B2BIIConvertMdstModule::m_eclClusters
StoreArray< ECLCluster > m_eclClusters
ECL clusters.
Definition: B2BIIConvertMdstModule.h:390
Belle2::B2BIIConvertMdstModule::m_convertEvtcls
bool m_convertEvtcls
Flag to switch on conversion of Evtcls table.
Definition: B2BIIConvertMdstModule.h:156
Belle2::B2BIIConvertMdstModule::m_nisEnable
bool m_nisEnable
Flag to switch on conversion of nisKsFinder info.
Definition: B2BIIConvertMdstModule.h:158
Belle2::B2BIIConvertMdstModule::m_convertTrkExtra
bool m_convertTrkExtra
Flag to switch on conversion of first(last)_{x,y,z} of mdst_trk_fit.
Definition: B2BIIConvertMdstModule.h:162
Belle2::B2BIIConvertMdstModule::testMCRelation
void testMCRelation(const Belle::Gen_hepevt &belleMC, const MCParticle *mcP, const std::string &objectName)
Checks if the reconstructed object (Track, ECLCluster, ...) was matched to the same MCParticle.
Definition: B2BIIConvertMdstModule.cc:1970
Belle2::B2BIIConvertMdstModule::mdstGammaToParticle
std::map< int, int > mdstGammaToParticle
map of gamma Panther IDs and corresponding Particle StoreArray indices
Definition: B2BIIConvertMdstModule.h:380
Belle2::B2BIIConvertMdstModule::beginRun
virtual void beginRun() override
Module functions to be called from event process.
Definition: B2BIIConvertMdstModule.cc:262
Belle2::B2BIIConvertMdstModule::convertMdstECLTable
void convertMdstECLTable()
Reads and converts all entries of Mdst_ecl(_aux) Panther table to ECLCluster dataobjects and adds the...
Definition: B2BIIConvertMdstModule.cc:938
Belle2::B2BIIConvertMdstModule::convertIPProfile
void convertIPProfile(bool beginRun=false)
Stores the IPProfiles in BeamSpot (currently in DataStore)
Definition: B2BIIConvertMdstModule.cc:402
Belle2::B2BIIConvertMdstModule::createTrackFitResult
TrackFitResult createTrackFitResult(const CLHEP::HepLorentzVector &momentum, const HepPoint3D &position, const CLHEP::HepSymMatrix &error, const short int charge, const Const::ParticleType &pType, const float pValue, const uint64_t hitPatternCDCInitializer, const uint32_t hitPatternVXDInitializer, const uint16_t ndf)
Creates TrackFitResult and fills it.
Definition: B2BIIConvertMdstModule.cc:2218
Belle2::B2BIIConvertMdstModule::m_collisionBoostVector
CollisionBoostVector m_collisionBoostVector
CollisionBoostVector for bosst vector of the beam.
Definition: B2BIIConvertMdstModule.h:422
Belle2::B2BIIConvertMdstModule::m_belleTrkExtra
StoreArray< BelleTrkExtra > m_belleTrkExtra
Belle CDC extra information.
Definition: B2BIIConvertMdstModule.h:408
Belle2::B2BIIConvertMdstModule::convertHelix
void convertHelix(Belle::Helix &helix, std::vector< float > &helixParams, CLHEP::HepSymMatrix &error5x5)
Converts Belle's Helix parameters and it's covariance matrix to Belle II's version.
Definition: B2BIIConvertMdstModule.cc:1576
Belle2::B2BIIConvertMdstModule::mdstKlongToParticle
std::map< int, int > mdstKlongToParticle
map of Klong Panther IDs and corresponding Particle StoreArray indices
Definition: B2BIIConvertMdstModule.h:384
Belle2::B2BIIConvertMdstModule::convertEvtclsTable
void convertEvtclsTable()
Reads and converts all entries of evtcls Panther table.
Definition: B2BIIConvertMdstModule.cc:1204
Belle2::B2BIIConvertMdstModule::m_particles
StoreArray< Particle > m_particles
Particles.
Definition: B2BIIConvertMdstModule.h:405
Belle2::ECLCluster
ECL cluster data.
Definition: ECLCluster.h:39
Belle2::B2BIIConvertMdstModule::convertMdstPi0Table
void convertMdstPi0Table()
Reads all entries of Mdst_Pi0 Panther table, creates a particle list 'pi0:mdst' and adds them to Stor...
Definition: B2BIIConvertMdstModule.cc:1071
Belle2::MCParticleGraph
Class to build, validate and sort a particle decay chain.
Definition: MCParticleGraph.h:48
Belle2::B2BIIConvertMdstModule::setTracksToECLClustersRelations
void setTracksToECLClustersRelations()
Sets Track -> ECLCluster relations.
Definition: B2BIIConvertMdstModule.cc:1833
Belle2::B2BIIConvertMdstModule::terminate
virtual void terminate() override
Terminates the module.
Definition: B2BIIConvertMdstModule.cc:2299
Belle2::B2BIIConvertMdstModule::event
virtual void event() override
Called for each event.
Definition: B2BIIConvertMdstModule.cc:288
Belle2::B2BIIConvertMdstModule::setKLMClustersRelations
void setKLMClustersRelations()
Sets KLMCluster -> Track and ECLCluster relations.
Definition: B2BIIConvertMdstModule.cc:1876
Belle2::B2BIIConvertMdstModule::m_collisionInvM
CollisionInvariantMass m_collisionInvM
CollisionInvariantMass for the invariant mass of the beam.
Definition: B2BIIConvertMdstModule.h:426
Belle2::B2BIIConvertMdstModule::m_convertRecTrg
bool m_convertRecTrg
Flag to switch on conversion of rectrg_summary3.
Definition: B2BIIConvertMdstModule.h:160
Belle2::B2BIIConvertMdstModule::acc_pid
static double acc_pid(const Belle::Mdst_charged &chg, int idp)
Returns ACC likelihood for given hypothesis idp.
Belle2::B2BIIConvertMdstModule::m_lastIPProfileBin
int m_lastIPProfileBin
variable to tell us which IPProfile bin was active last time we looked
Definition: B2BIIConvertMdstModule.h:172
Belle2::B2BIIConvertMdstModule::belleHelixToCartesian
int belleHelixToCartesian(const Belle::Mdst_trk_fit &trk_fit, const double mass, const HepPoint3D &newPivot, CLHEP::HepLorentzVector &momentum, HepPoint3D &position, CLHEP::HepSymMatrix &error, double dPhi=0.0)
Fills 4-momentum, position and 7x7 error matrix from Belle Helix stored in Mdst_trk_fit.
Definition: B2BIIConvertMdstModule.cc:2165
Belle2::B2BIIConvertMdstModule::m_mcParticles
StoreArray< MCParticle > m_mcParticles
MC particles.
Definition: B2BIIConvertMdstModule.h:387
Belle2::PIDLikelihood
Class to collect log likelihoods from TOP, ARICH, dEdx, ECL and KLM aimed for output to mdst includes...
Definition: PIDLikelihood.h:37
Belle2::B2BIIConvertMdstModule::belleVeeDaughterToCartesian
void belleVeeDaughterToCartesian(const Belle::Mdst_vee2 &vee, const int charge, const Const::ParticleType &pType, CLHEP::HepLorentzVector &momentum, HepPoint3D &position, CLHEP::HepSymMatrix &error)
Fills 4-momentum, position and 7x7 error matrix from Belle Vee daughter.
Definition: B2BIIConvertMdstModule.cc:1997
Belle2::B2BIIConvertMdstModule::initializeDataStore
void initializeDataStore()
Initializes Belle II DataStore.
Definition: B2BIIConvertMdstModule.cc:208
Belle2::B2BIIConvertMdstModule::convertPIDData
void convertPIDData(const Belle::Mdst_charged &belleTrack, const Track *track)
Get PID information for belleTrack and add it to PIDLikelihood (with relation from track).
Definition: B2BIIConvertMdstModule.cc:1336
Belle2::B2BIIConvertMdstModule::cdc_pid
double cdc_pid(const Belle::Mdst_charged &chg, int idp)
Returns CDC likelihood for given hypothesis idp.
Belle2::Const::EDetector
EDetector
Enum for identifying the detector components (detector and subdetector).
Definition: Const.h:44
Belle2::B2BIIConvertMdstModule::setLikelihoods
void setLikelihoods(PIDLikelihood *pid, Const::EDetector det, double likelihoods[c_nHyp], bool discard_allzero=false)
Add given Belle likelihoods (not log-likelihoods, in Belle hypothesis order) for given detector to pi...
Definition: B2BIIConvertMdstModule.cc:1318
Belle2::TrackFitResult
Values of the result of a track fit with a given particle hypothesis.
Definition: TrackFitResult.h:59
Belle2::B2BIIConvertMdstModule::KAPPA2OMEGA
const double KAPPA2OMEGA
Conversion factor for Kappa -> Omega helix parameters.
Definition: B2BIIConvertMdstModule.h:443
Belle2::BeamSpot
This class contains the beam spot position and size modeled as a gaussian distribution in space.
Definition: BeamSpot.h:32
Belle2::B2BIIConvertMdstModule::m_collisionBoostVectorDB
OptionalDBObjPtr< CollisionBoostVector > m_collisionBoostVectorDB
CollisionBoostVector for boost vector.
Definition: B2BIIConvertMdstModule.h:421
Belle2::B2BIIConvertMdstModule::convertMdstChargedTable
void convertMdstChargedTable()
Reads and converts all entries of Mdst_charged (Mdst_trk and Mdst_trk_fit) Panther table to Track (Tr...
Definition: B2BIIConvertMdstModule.cc:444
Belle2::B2BIIConvertMdstModule::c_GeneratorLevel
@ c_GeneratorLevel
Match to generator-level particles.
Definition: B2BIIConvertMdstModule.h:108
Belle2::B2BIIConvertMdstModule::convertGenHepevtObject
void convertGenHepevtObject(const Belle::Gen_hepevt &genHepevt, MCParticleGraph::GraphParticle *mcParticle)
Converts Gen_hepevt record to MCParticleGraph object.
Definition: B2BIIConvertMdstModule.cc:1751
Belle2::B2BIIConvertMdstModule::m_beamSpot
BeamSpot m_beamSpot
Interaction Point of the beam.
Definition: B2BIIConvertMdstModule.h:418
Belle2::OptionalDBObjPtr
Optional DBObjPtr: This class behaves the same as the DBObjPtr except that it will not raise errors w...
Definition: DBObjPtr.h:55
Belle2::B2BIIConvertMdstModule::convertBeamEnergy
void convertBeamEnergy()
Stores beam parameters (energy, angles) in CollisionInvariantMass and CollisionBoostVector (currently...
Definition: B2BIIConvertMdstModule.cc:374
Belle2::Module
Base class for Modules.
Definition: Module.h:74
Belle2::B2BIIConvertMdstModule::convertMdstKLongTable
void convertMdstKLongTable()
Reads all entries of Mdst_Klong Panther table, creates a particle list 'K_L0:mdst' and adds them to S...
Definition: B2BIIConvertMdstModule.cc:1119
Belle2::B2BIIConvertMdstModule::BFIELD
const double BFIELD
B filed in TESLA.
Definition: B2BIIConvertMdstModule.h:440
Belle2::B2BIIConvertMdstModule::mdstKlmToKLMCluster
std::map< int, int > mdstKlmToKLMCluster
map of Mdst_klm Panther IDs and corresponding KLMCluster StoreArray indices
Definition: B2BIIConvertMdstModule.h:382
Belle2::B2BIIConvertMdstModule::m_klmClusters
StoreArray< KLMCluster > m_klmClusters
KLM clusters.
Definition: B2BIIConvertMdstModule.h:393
Belle2::B2BIIConvertMdstModule::m_v0s
StoreArray< V0 > m_v0s
V0-particles.
Definition: B2BIIConvertMdstModule.h:402
Belle2::B2BIIConvertMdstModule::m_matchType2E9oE25Threshold
double m_matchType2E9oE25Threshold
E9/E25 threshold value clusters with a value above this threshold are classified as neutral even if t...
Definition: B2BIIConvertMdstModule.h:169
Belle2::B2BIIConvertMdstModule::m_trackFitResults
StoreArray< TrackFitResult > m_trackFitResults
Track fir results.
Definition: B2BIIConvertMdstModule.h:399
Belle2::B2BIIConvertMdstModule::c_nHyp
const static int c_nHyp
Number of Belle track hypotheses (see c_belleHyp_to_chargedStable).
Definition: B2BIIConvertMdstModule.h:327
Belle2::B2BIIConvertMdstModule::convertRecTrgTable
void convertRecTrgTable()
Reads and converts m_final from rectrg_summary3.
Definition: B2BIIConvertMdstModule.cc:1249
Belle2::B2BIIConvertMdstModule::~B2BIIConvertMdstModule
virtual ~B2BIIConvertMdstModule() override
Destructor.
Definition: B2BIIConvertMdstModule.cc:189
Belle2::B2BIIConvertMdstModule::convertGenHepEvtTable
void convertGenHepEvtTable()
Reads and converts all entries of Gen_hepevt Panther table to MCParticle dataobjects and adds them to...
Definition: B2BIIConvertMdstModule.cc:848
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::B2BIIConvertMdstModule::atcPID
double atcPID(const PIDLikelihood *pid, int sigHyp, int bkgHyp)
calculates atc_pid(3,1,5,sigHyp,bkgHyp).prob() from converted PIDLikelihood
Definition: B2BIIConvertMdstModule.cc:2249
Belle2::B2BIIConvertMdstModule::m_mcMatchingModeString
std::string m_mcMatchingModeString
MC matching mode.
Definition: B2BIIConvertMdstModule.h:151
Belle2::B2BIIConvertMdstModule
Module converts Belle MDST objects (Panther records) to Belle II MDST objects.
Definition: B2BIIConvertMdstModule.h:97
Belle2::B2BIIConvertMdstModule::m_tracks
StoreArray< Track > m_tracks
Tracks.
Definition: B2BIIConvertMdstModule.h:396
Belle2::B2BIIConvertMdstModule::convertMdstGammaTable
void convertMdstGammaTable()
Reads all entries of Mdst_Gamma Panther table, creates a particle list 'gamma:mdst' and adds them to ...
Definition: B2BIIConvertMdstModule.cc:1024
Belle2::CollisionInvariantMass
This class contains the measured average center-of-mass energy, which is equal to the invariant mass ...
Definition: CollisionInvariantMass.h:31
Belle2::B2BIIConvertMdstModule::m_convertBeamParameters
bool m_convertBeamParameters
Convert beam parameters or use information stored in Belle II database.
Definition: B2BIIConvertMdstModule.h:143
Belle2::B2BIIConvertMdstModule::convertMdstChargedObject
void convertMdstChargedObject(const Belle::Mdst_charged &belleTrack, Track *track)
Converts Mdst_charged (Mdst_trk(_fit)) record to Track (TrackFitResult) object.
Definition: B2BIIConvertMdstModule.cc:1616
Belle2::B2BIIConvertMdstModule::m_beamSpotDB
OptionalDBObjPtr< BeamSpot > m_beamSpotDB
BeamSpot for IP.
Definition: B2BIIConvertMdstModule.h:417
Belle2::B2BIIConvertMdstModule::convertMdstECLObject
void convertMdstECLObject(const Belle::Mdst_ecl &ecl, const Belle::Mdst_ecl_aux &eclAux, ECLCluster *eclCluster)
Converts Mdst_ecl(_aux) record to ECLCluster object.
Definition: B2BIIConvertMdstModule.cc:1791
Belle2::KLMCluster
KLM cluster data.
Definition: KLMCluster.h:38
Belle2::B2BIIConvertMdstModule::m_realData
bool m_realData
flag that tells whether given data sample is for real data or MC
Definition: B2BIIConvertMdstModule.h:140
Belle2::B2BIIConvertMdstModule::convertMdstKLMTable
void convertMdstKLMTable()
Reads and converts all entries of Mdst_klm_cluster Panther table to KLMCluster dataobjects and adds t...
Definition: B2BIIConvertMdstModule.cc:998
Belle2::B2BIIConvertMdstModule::MCMatchingMode
MCMatchingMode
MC matching mode.
Definition: B2BIIConvertMdstModule.h:102
Belle2::B2BIIConvertMdstModule::getHelixParameters
int getHelixParameters(const Belle::Mdst_trk_fit &trk_fit, const double mass, const HepPoint3D &newPivot, std::vector< float > &helixParams, CLHEP::HepSymMatrix &error5x5, CLHEP::HepLorentzVector &momentum, HepPoint3D &position, CLHEP::HepSymMatrix &error7x7, const double dPhi=0.0)
Fills Helix parameters (converted to Belle II version), 5x5 error matrix, 4-momentum,...
Definition: B2BIIConvertMdstModule.cc:1464
Belle2::B2BIIConvertMdstModule::belleHelixToHelix
void belleHelixToHelix(const Belle::Mdst_trk_fit &trk_fit, std::vector< float > &helixParam, std::vector< float > &helixError)
obtains the helix parameters from trk_fit and moves the pivot to 0,0,0
Definition: B2BIIConvertMdstModule.cc:2097
Belle2::B2BIIConvertMdstModule::m_use6x6CovarianceMatrix4Tracks
bool m_use6x6CovarianceMatrix4Tracks
flag that tells which form of covariance matrix should be used in the conversion of charged tracks
Definition: B2BIIConvertMdstModule.h:148
Belle2::B2BIIConvertMdstModule::m_pidLikelihoods
StoreArray< PIDLikelihood > m_pidLikelihoods
output PIDLikelihood array.
Definition: B2BIIConvertMdstModule.h:411
Belle2::Const::ParticleType
The ParticleType class for identifying different particle types.
Definition: Const.h:284
Belle2::B2BIIConvertMdstModule::genHepevtToMCParticle
std::map< int, int > genHepevtToMCParticle
map of Gen_hepevt Panther IDs and corresponding MCParticle StoreArray indices
Definition: B2BIIConvertMdstModule.h:376
Belle2::Const::ChargedStable
Provides a type-safe way to pass members of the chargedStableSet set.
Definition: Const.h:465
Belle2::B2BIIConvertMdstModule::m_particleGraph
Belle2::MCParticleGraph m_particleGraph
MCParticle Graph to build Belle2 MC Particles.
Definition: B2BIIConvertMdstModule.h:373
Belle2::B2BIIConvertMdstModule::mdstEclToECLCluster
std::map< int, int > mdstEclToECLCluster
map of Mdst_ecl Panther IDs and corresponding ECLCluster StoreArray indices
Definition: B2BIIConvertMdstModule.h:378
Belle2::Track
Class that bundles various TrackFitResults.
Definition: Track.h:35
HepGeom::Point3D< double >
Belle2::MCParticle
A Class to store the Monte Carlo particle information.
Definition: MCParticle.h:43
Belle2::B2BIIConvertMdstModule::convertMdstKLMObject
void convertMdstKLMObject(const Belle::Mdst_klm_cluster &klm, KLMCluster *klmCluster)
Converts Mdst_klm_cluster record to KLMCluster object.
Definition: B2BIIConvertMdstModule.cc:1822
Belle2::StoreArray< MCParticle >
Belle2::B2BIIConvertMdstModule::c_Direct
@ c_Direct
Direct matching.
Definition: B2BIIConvertMdstModule.h:105
Belle2::CollisionBoostVector
This class contains the measured average boost vector vec(beta) = (beta_x, beta_y,...
Definition: CollisionBoostVector.h:33
Belle2::B2BIIConvertMdstModule::recoverMoreThan24bitIDHEP
int recoverMoreThan24bitIDHEP(int id)
Helper function to recover falsely set idhep info in GenHepEvt list.
Definition: B2BIIConvertMdstModule.cc:1902
Belle2::B2BIIConvertMdstModule::c_belleHyp_to_chargedStable
const static Const::ChargedStable c_belleHyp_to_chargedStable[c_nHyp]
maps Belle hypotheses to Const::ChargedStable (from http://belle.kek.jp/secured/wiki/doku....
Definition: B2BIIConvertMdstModule.h:329
Belle2::B2BIIConvertMdstModule::m_mcMatchingMode
MCMatchingMode m_mcMatchingMode
C matching mode.
Definition: B2BIIConvertMdstModule.h:154
Belle2::B2BIIConvertMdstModule::ERRMCONV
const int ERRMCONV[7]
CONVERSION OF TRACK ERROR MATRIX ELEMENTS.
Definition: B2BIIConvertMdstModule.h:437
Belle2::MCParticleGraph::GraphParticle
Class to represent Particle data in graph.
Definition: MCParticleGraph.h:86
Belle2::B2BIIConvertMdstModule::B2BIIConvertMdstModule
B2BIIConvertMdstModule()
Constructor.
Definition: B2BIIConvertMdstModule.cc:160
Belle2::B2BIIConvertMdstModule::belleVeeDaughterHelix
void belleVeeDaughterHelix(const Belle::Mdst_vee2 &vee, const int charge, std::vector< float > &helixParam, std::vector< float > &helixError)
obtains the helix parameters of the vee daughters
Definition: B2BIIConvertMdstModule.cc:2036
Belle2::B2BIIConvertMdstModule::endRun
virtual void endRun() override
Called when the current run is finished.
Definition: B2BIIConvertMdstModule.cc:2293
Belle2::B2BIIConvertMdstModule::initialize
virtual void initialize() override
Initialize the module.
Definition: B2BIIConvertMdstModule.cc:193
Belle2::B2BIIConvertMdstModule::m_collisionInvMDB
OptionalDBObjPtr< CollisionInvariantMass > m_collisionInvMDB
CollisionInvariantMass for Invariant Mass of Beam.
Definition: B2BIIConvertMdstModule.h:425
Belle2::B2BIIConvertMdstModule::m_evtInfo
StoreObjPtr< EventExtraInfo > m_evtInfo
Event Extra Info.
Definition: B2BIIConvertMdstModule.h:414