gambit is hosted by Hepforge, IPPP Durham
GAMBIT  v1.5.0-2191-ga4742ac
a Global And Modular Bsm Inference Tool
getBuckFast.cpp
Go to the documentation of this file.
1 // GAMBIT: Global and Modular BSM Inference Tool
2 // *********************************************
37 
38 #include <memory>
39 
44 
45 #include "HEPUtils/FastJet.h"
46 
47 
48 namespace Gambit
49 {
50 
51  namespace ColliderBit
52  {
53 
56  {
57  using namespace Pipes::getBuckFastATLAS;
58  thread_local BuckFast bucky;
59  if (*Loop::iteration == START_SUBPROCESS)
60  {
62  bucky.smearMuonMomentum = &ATLAS::smearMuonMomentum;
63  bucky.smearTaus = &ATLAS::smearTaus;
64  bucky.smearJets = &ATLAS::smearJets;
65  result = &bucky;
66  }
67  }
68 
71  {
72  using namespace Pipes::getBuckFastCMS;
73  thread_local BuckFast bucky;
74  if (*Loop::iteration == START_SUBPROCESS)
75  {
77  bucky.smearMuonMomentum = &CMS::smearMuonMomentum;
78  bucky.smearTaus = &CMS::smearTaus;
79  bucky.smearJets = &CMS::smearJets;
80  result = &bucky;
81  }
82  }
83 
86  {
87  using namespace Pipes::getBuckFastIdentity;
88  thread_local BuckFast bucky;
89  result = &bucky;
90  }
91 
92  }
93 
94 }
void getBuckFastCMS(BaseDetector *&result)
Retrieve a BuckFast sim of CMS.
Definition: getBuckFast.cpp:70
void smearTaus(std::vector< HEPUtils::Particle *> &taus)
Randomly smear the supplied hadronic taus&#39; momenta by parameterised resolutions.
void smearJets(std::vector< HEPUtils::Jet *> &jets)
Randomly smear the supplied jets&#39; momenta by parameterised resolutions.
void smearElectronEnergy(std::vector< HEPUtils::Particle *> &electrons)
Randomly smear the supplied electrons&#39; momenta by parameterised resolutions.
void smearMuonMomentum(std::vector< HEPUtils::Particle *> &muons)
Randomly smear the supplied muons&#39; momenta by parameterised resolutions.
Functions that do super fast CMS detector simulation based on four-vector smearing.
Declarations common to all ColliderBit event loop functions.
void smearElectronEnergy(std::vector< HEPUtils::Particle *> &electrons)
Randomly smear the supplied electrons&#39; momenta by parameterised resolutions.
void getBuckFastATLAS(BaseDetector *&result)
Retrieve a BuckFast sim of ATLAS.
Definition: getBuckFast.cpp:55
An abstract base class for detector simulators within ColliderBit.
void smearMuonMomentum(std::vector< HEPUtils::Particle *> &muons)
Randomly smear the supplied muons&#39; momenta by parameterised resolutions.
void getBuckFastIdentity(BaseDetector *&result)
Retrieve an Identity BuckFast sim (no sim)
Definition: getBuckFast.cpp:85
A base class for BuckFast simple smearing simulations within ColliderBit.
Definition: BuckFast.hpp:33
BuckFast simple smearing detector sim.
void(* smearElectronEnergy)(std::vector< HEPUtils::Particle *> &)
Pointers to actual detector response functions.
Definition: BuckFast.hpp:40
void smearJets(std::vector< HEPUtils::Jet *> &jets)
Randomly smear the supplied jets&#39; momenta by parameterised resolutions.
TODO: see if we can use this one:
Definition: Analysis.hpp:33
Functions that do super fast ATLAS detector simulation based on four-vector smearing.
void smearTaus(std::vector< HEPUtils::Particle *> &taus)
Randomly smear the supplied taus&#39; momenta by parameterised resolutions.