CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/Validation/EventGenerator/interface/BasicHepMCHeavyIonValidation.h

Go to the documentation of this file.
00001 #ifndef BASICHEPMCHEAVYIONVALIDATION_H
00002 #define BASICHEPMCHEAVYIONVALIDATION_H
00003 
00004 /*class BasicHepMCHeavyIonValidation
00005  *  
00006  *  Class to fill Event Generator dqm monitor elements; works on HepMCProduct HepMC::HeavyIon
00007  *  Quan Wang - 04/2013
00008  *
00009  */
00010 
00011 // framework & common header files
00012 #include "FWCore/Framework/interface/EDAnalyzer.h"
00013 #include "FWCore/Framework/interface/Event.h"
00014 #include "FWCore/Framework/interface/EventSetup.h"
00015 #include "FWCore/Framework/interface/Run.h"
00016 
00017 #include "DataFormats/Common/interface/Handle.h"
00018 #include "FWCore/Framework/interface/ESHandle.h"
00019 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00020 #include "FWCore/Utilities/interface/InputTag.h"
00021 
00022 //DQM services
00023 #include "DQMServices/Core/interface/DQMStore.h"
00024 #include "FWCore/ServiceRegistry/interface/Service.h"
00025 #include "DQMServices/Core/interface/MonitorElement.h"
00026 
00027 #include "SimDataFormats/GeneratorProducts/interface/HepMCProduct.h"
00028 
00029 #include "SimGeneral/HepPDTRecord/interface/ParticleDataTable.h"
00030 
00031 #include "Validation/EventGenerator/interface/WeightManager.h"
00032 
00033 class BasicHepMCHeavyIonValidation : public edm::EDAnalyzer
00034 {
00035         public:
00036                 explicit BasicHepMCHeavyIonValidation(const edm::ParameterSet&);
00037                 virtual ~BasicHepMCHeavyIonValidation();
00038                 virtual void beginJob();
00039                 virtual void endJob();  
00040                 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00041                 virtual void beginRun(const edm::Run&, const edm::EventSetup&);
00042                 virtual void endRun(const edm::Run&, const edm::EventSetup&);
00043 
00044         private:
00045 
00046                 WeightManager _wmanager;
00047 
00048                 edm::InputTag hepmcCollection_;
00049                 bool QWdebug_;
00050 
00052                 //edm::ESHandle<HepPDT::ParticleDataTable> fPDGTable ;
00053 
00055                 DQMStore *dbe;
00056 
00057                 MonitorElement* nEvt;
00058 
00059                 // Additional information stored in HeavyIon structure
00060                 MonitorElement* Ncoll_hard;             // Number of hard scatterings
00061                 MonitorElement* Npart_proj;             // Number of projectile participants
00062                 MonitorElement* Npart_targ;             // Number of target participants
00063                 MonitorElement* Ncoll;                  // Number of NN (nucleon-nucleon) collisions
00064                 MonitorElement* N_Nwounded_collisions;          // Number of N-Nwounded collisions
00065                 MonitorElement* Nwounded_N_collisions;          // Number of Nwounded-N collisons
00066                 MonitorElement* Nwounded_Nwounded_collisions;   // Number of Nwounded-Nwounded collisions
00067                 MonitorElement* spectator_neutrons;             // Number of spectator neutrons
00068                 MonitorElement* spectator_protons;              // Number of spectator protons
00069                 MonitorElement* impact_parameter;               // Impact Parameter(fm) of collision
00070                 MonitorElement* event_plane_angle;              // Azimuthal angle of event plane
00071                 MonitorElement* eccentricity;           // eccentricity of participating nucleons
00072                                                         // in the transverse plane 
00073                                                         // (as in phobos nucl-ex/0510031) 
00074                 MonitorElement* sigma_inel_NN;          // nucleon-nucleon inelastic 
00075                                                         // (including diffractive) cross-section
00076 
00077 
00078 };
00079 
00080 #endif