Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:30:44

0001 #ifndef SimMuon_GEMDigitizer_GEMBkgModel_h
0002 #define SimMuon_GEMDigitizer_GEMBkgModel_h
0003 
0004 /** 
0005  * \class GEMBkgModel
0006  *
0007  * Class for the GEM strip response to background simulation based on a very simple model
0008  * Originally comes from GEMSimpleModel
0009  *
0010  * \author Sven Dildick
0011  * \modified by Roumyana Hadjiiska
0012  * \splitted by Yechan Kang
0013  */
0014 
0015 #include "SimMuon/GEMDigitizer/interface/GEMDigiModel.h"
0016 
0017 class GEMGeometry;
0018 
0019 namespace CLHEP {
0020   class HepRandomEngine;
0021 }
0022 
0023 class GEMBkgModel : public GEMDigiModel {
0024 public:
0025   GEMBkgModel(const edm::ParameterSet&);
0026 
0027   ~GEMBkgModel() override;
0028 
0029   void simulate(
0030       const GEMEtaPartition*, const edm::PSimHitContainer&, CLHEP::HepRandomEngine*, Strips&, DetectorHitMap&) override;
0031 
0032 private:
0033   const double clusterSizeCut;
0034   double averageEfficiency_;
0035   int minBunch_;
0036   int maxBunch_;
0037   bool digitizeOnlyMuons_;
0038   bool simulateNoiseCLS_;
0039   bool fixedRollRadius_;
0040   bool simulateElectronBkg_;
0041   double instLumi_;
0042   double rateFact_;
0043   double bxWidth_;
0044   const double referenceInstLumi_;
0045   double resolutionX_;
0046 
0047   //params for pol3 model of electron bkg for GE1/1 and GE2/1:
0048   double GE11ElecBkgParam0_;
0049   double GE11ElecBkgParam1_;
0050   double GE11ElecBkgParam2_;
0051   double GE21ElecBkgParam0_;
0052   double GE21ElecBkgParam1_;
0053   double GE21ElecBkgParam2_;
0054   //params for pol3 model of neutral bkg for GE1/1 and GE2/1:
0055   double GE11ModNeuBkgParam0_;
0056   double GE11ModNeuBkgParam1_;
0057   double GE11ModNeuBkgParam2_;
0058   double GE21ModNeuBkgParam0_;
0059   double GE21ModNeuBkgParam1_;
0060   double GE21ModNeuBkgParam2_;
0061 };
0062 #endif