#include <DQMOffline/Muon/src/MuonEnergyDepositAnalyzer.h>
Definition at line 28 of file MuonEnergyDepositAnalyzer.h.
MuonEnergyDepositAnalyzer::MuonEnergyDepositAnalyzer | ( | const edm::ParameterSet & | pSet, | |
MuonServiceProxy * | theService | |||
) |
Constructor.
Definition at line 32 of file MuonEnergyDepositAnalyzer.cc.
References parameters.
00032 :MuonAnalyzerBase(theService) { 00033 00034 parameters = pSet; 00035 }
MuonEnergyDepositAnalyzer::~MuonEnergyDepositAnalyzer | ( | ) | [virtual] |
void MuonEnergyDepositAnalyzer::analyze | ( | const edm::Event & | iEvent, | |
const edm::EventSetup & | iSetup, | |||
const reco::Muon & | recoMu | |||
) |
Get the analysis.
Definition at line 134 of file MuonEnergyDepositAnalyzer.cc.
References funct::abs(), reco::Muon::calEnergy(), ecalDepEnergyBarrel, ecalDepEnergyEndcap, ecalS9DepEnergyBarrel, ecalS9DepEnergyEndcap, ecalS9PointingMuDepEnergy_Glb, ecalS9PointingMuDepEnergy_Sta, ecalS9PointingMuDepEnergy_Tk, reco::MuonEnergy::em, reco::MuonEnergy::emS9, reco::Particle::eta(), MonitorElement::Fill(), edm::EventSetup::get(), TrajectoryStateOnSurface::globalPosition(), reco::Muon::globalTrack(), reco::MuonEnergy::had, reco::MuonEnergy::hadS9, hcalDepEnergyBarrel, hcalDepEnergyEndcap, hcalS9DepEnergyBarrel, hcalS9DepEnergyEndcap, hcalS9PointingMuDepEnergy_Glb, hcalS9PointingMuDepEnergy_Sta, hcalS9PointingMuDepEnergy_Tk, reco::MuonEnergy::ho, hoDepEnergy, reco::MuonEnergy::hoS9, hoS9DepEnergy, hoS9PointingMuDepEnergy_Glb, hoS9PointingMuDepEnergy_Sta, hoS9PointingMuDepEnergy_Tk, reco::TransientTrack::impactPointState(), reco::Muon::innerTrack(), reco::Muon::isGlobalMuon(), reco::Muon::isStandAloneMuon(), reco::Muon::isTrackerMuon(), LogTrace, metname, reco::Muon::outerTrack(), PV3DBase< T, PVType, FrameType >::perp(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by MuonAnalyzer::analyze().
00134 { 00135 00136 LogTrace(metname)<<"[MuonEnergyDepositAnalyzer] Filling the histos"; 00137 00138 // get all the mu energy deposits 00139 reco::MuonEnergy muEnergy = recoMu.calEnergy(); 00140 00141 // energy deposited in ECAL 00142 LogTrace(metname) << "Energy deposited in ECAL: "<<muEnergy.em; 00143 if (fabs(recoMu.eta()) > 1.479) 00144 ecalDepEnergyEndcap->Fill(muEnergy.em); 00145 else 00146 ecalDepEnergyBarrel->Fill(muEnergy.em); 00147 00148 // energy deposited in HCAL 00149 LogTrace(metname) << "Energy deposited in HCAL: "<<muEnergy.had; 00150 if (fabs(recoMu.eta()) > 1.4) 00151 hcalDepEnergyEndcap->Fill(muEnergy.had); 00152 else 00153 hcalDepEnergyBarrel->Fill(muEnergy.had); 00154 00155 // energy deposited in HO 00156 LogTrace(metname) << "Energy deposited in HO: "<<muEnergy.ho; 00157 if (fabs(recoMu.eta()) < 1.26) 00158 hoDepEnergy->Fill(muEnergy.ho); 00159 00160 // energy deposited in ECAL in 3*3 towers 00161 LogTrace(metname) << "Energy deposited in ECAL: "<<muEnergy.emS9; 00162 if (fabs(recoMu.eta()) > 1.479) 00163 ecalS9DepEnergyEndcap->Fill(muEnergy.emS9); 00164 else 00165 ecalS9DepEnergyBarrel->Fill(muEnergy.emS9); 00166 00167 // energy deposited in HCAL in 3*3 crystals 00168 LogTrace(metname) << "Energy deposited in HCAL: "<<muEnergy.hadS9; 00169 if (fabs(recoMu.eta()) > 1.4) 00170 hcalS9DepEnergyEndcap->Fill(muEnergy.hadS9); 00171 else 00172 hcalS9DepEnergyBarrel->Fill(muEnergy.hadS9); 00173 00174 // energy deposited in HO in 3*3 crystals 00175 LogTrace(metname) << "Energy deposited in HO: "<<muEnergy.hoS9; 00176 if (fabs(recoMu.eta()) < 1.26) 00177 hoS9DepEnergy->Fill(muEnergy.hoS9); 00178 00179 // plot for energy tests 00180 edm::ESHandle<TransientTrackBuilder> theB; 00181 iSetup.get<TransientTrackRecord>().get("TransientTrackBuilder",theB); 00182 reco::TransientTrack TransTrack; 00183 00184 if(recoMu.isGlobalMuon()) 00185 TransTrack = theB->build(recoMu.globalTrack()); 00186 if(recoMu.isTrackerMuon() && !(recoMu.isGlobalMuon())) 00187 TransTrack = theB->build(recoMu.innerTrack()); 00188 if(recoMu.isStandAloneMuon() && !(recoMu.isGlobalMuon())) 00189 TransTrack = theB->build(recoMu.outerTrack()); 00190 00191 TrajectoryStateOnSurface TSOS; 00192 TSOS = TransTrack.impactPointState(); 00193 // section for vertex pointing muon 00194 if((abs(TSOS.globalPosition().z())<30) && (abs(TSOS.globalPosition().perp())<20)){ 00195 // GLB muon 00196 if(recoMu.isGlobalMuon()){ 00197 ecalS9PointingMuDepEnergy_Glb->Fill(muEnergy.emS9); 00198 hcalS9PointingMuDepEnergy_Glb->Fill(muEnergy.hadS9); 00199 hoS9PointingMuDepEnergy_Glb->Fill(muEnergy.hoS9); 00200 } 00201 // TK muon 00202 if(recoMu.isTrackerMuon() && !(recoMu.isGlobalMuon())){ 00203 ecalS9PointingMuDepEnergy_Tk->Fill(muEnergy.emS9); 00204 hcalS9PointingMuDepEnergy_Tk->Fill(muEnergy.hadS9); 00205 hoS9PointingMuDepEnergy_Tk->Fill(muEnergy.hoS9); 00206 } 00207 // STA muon 00208 if(recoMu.isStandAloneMuon() && !(recoMu.isGlobalMuon())){ 00209 ecalS9PointingMuDepEnergy_Sta->Fill(muEnergy.emS9); 00210 hcalS9PointingMuDepEnergy_Sta->Fill(muEnergy.hadS9); 00211 hoS9PointingMuDepEnergy_Sta->Fill(muEnergy.hoS9); 00212 } 00213 } 00214 00215 }
void MuonEnergyDepositAnalyzer::beginJob | ( | edm::EventSetup const & | iSetup, | |
DQMStore * | dbe | |||
) | [virtual] |
Inizialize parameters for histo binning.
Implements MuonAnalyzerBase.
Definition at line 41 of file MuonEnergyDepositAnalyzer.cc.
References DQMStore::book1D(), ecalDepEnergyBarrel, ecalDepEnergyEndcap, ecalS9DepEnergyBarrel, ecalS9DepEnergyEndcap, ecalS9PointingMuDepEnergy_Glb, ecalS9PointingMuDepEnergy_Sta, ecalS9PointingMuDepEnergy_Tk, emNoBin, emNoMax, emNoMin, emS9NoBin, emS9NoMax, emS9NoMin, edm::ParameterSet::getParameter(), hadNoBin, hadNoMax, hadNoMin, hadS9NoBin, hadS9NoMax, hadS9NoMin, hcalDepEnergyBarrel, hcalDepEnergyEndcap, hcalS9DepEnergyBarrel, hcalS9DepEnergyEndcap, hcalS9PointingMuDepEnergy_Glb, hcalS9PointingMuDepEnergy_Sta, hcalS9PointingMuDepEnergy_Tk, hoDepEnergy, hoNoBin, hoNoMax, hoNoMin, hoS9DepEnergy, hoS9NoBin, hoS9NoMax, hoS9NoMin, hoS9PointingMuDepEnergy_Glb, hoS9PointingMuDepEnergy_Sta, hoS9PointingMuDepEnergy_Tk, LogTrace, metname, parameters, MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().
Referenced by MuonAnalyzer::beginJob().
00041 { 00042 00043 metname = "muEnergyDepositAnalyzer"; 00044 00045 LogTrace(metname)<<"[MuonEnergyDepositAnalyzer] Parameters initialization"; 00046 dbe->setCurrentFolder("Muons/MuonEnergyDepositAnalyzer"); 00047 std::string AlgoName = parameters.getParameter<std::string>("AlgoName"); 00048 00049 emNoBin = parameters.getParameter<int>("emSizeBin"); 00050 emNoMin = parameters.getParameter<double>("emSizeMin"); 00051 emNoMax = parameters.getParameter<double>("emSizeMax"); 00052 std::string histname = "ecalDepositedEnergyBarrel_"; 00053 ecalDepEnergyBarrel = dbe->book1D(histname+AlgoName, "Energy deposited in the ECAL barrel cells", emNoBin, emNoMin, emNoMax); 00054 ecalDepEnergyBarrel->setAxisTitle("GeV"); 00055 histname = "ecalDepositedEnergyEndcap_"; 00056 ecalDepEnergyEndcap = dbe->book1D(histname+AlgoName, "Energy deposited in the ECAL endcap cells", emNoBin, emNoMin, emNoMax); 00057 ecalDepEnergyEndcap->setAxisTitle("GeV"); 00058 00059 emS9NoBin = parameters.getParameter<int>("emS9SizeBin"); 00060 emS9NoMin = parameters.getParameter<double>("emS9SizeMin"); 00061 emS9NoMax = parameters.getParameter<double>("emS9SizeMax"); 00062 histname = "ecalS9DepositedEnergyBarrel_"; 00063 ecalS9DepEnergyBarrel = dbe->book1D(histname+AlgoName, "Energy deposited in the ECAL barrel 3*3 towers", emS9NoBin, emS9NoMin, emS9NoMax); 00064 ecalS9DepEnergyBarrel->setAxisTitle("GeV"); 00065 histname = "ecalS9DepositedEnergyEndcap_"; 00066 ecalS9DepEnergyEndcap = dbe->book1D(histname+AlgoName, "Energy deposited in the ECAL endcap 3*3 towers", emS9NoBin, emS9NoMin, emS9NoMax); 00067 ecalS9DepEnergyEndcap->setAxisTitle("GeV"); 00068 histname = "ecalS9PointingMuDepositedEnergy_Glb_"; 00069 ecalS9PointingMuDepEnergy_Glb = dbe->book1D(histname+AlgoName, "Pointing glb muons energy deposited in the ECAL 3*3 towers", emS9NoBin, emS9NoMin, emS9NoMax); 00070 ecalS9PointingMuDepEnergy_Glb->setAxisTitle("GeV"); 00071 histname = "ecalS9PointingMuDepositedEnergy_Tk_"; 00072 ecalS9PointingMuDepEnergy_Tk = dbe->book1D(histname+AlgoName, "Pointing tk muons energy deposited in the ECAL 3*3 towers", emS9NoBin, emS9NoMin, emS9NoMax); 00073 ecalS9PointingMuDepEnergy_Tk->setAxisTitle("GeV"); 00074 histname = "ecalS9PointingMuDepositedEnergy_Sta_"; 00075 ecalS9PointingMuDepEnergy_Sta = dbe->book1D(histname+AlgoName, "Pointing sta muons energy deposited in the ECAL 3*3 towers", emS9NoBin, emS9NoMin, emS9NoMax); 00076 ecalS9PointingMuDepEnergy_Sta->setAxisTitle("GeV"); 00077 00078 hadNoBin = parameters.getParameter<int>("hadSizeBin"); 00079 hadNoMin = parameters.getParameter<double>("hadSizeMin"); 00080 hadNoMax = parameters.getParameter<double>("hadSizeMax"); 00081 histname = "hadDepositedEnergyBarrel_"; 00082 hcalDepEnergyBarrel = dbe->book1D(histname+AlgoName, "Energy deposited in the HCAL barrel cells", hadNoBin, hadNoMin, hadNoMax); 00083 hcalDepEnergyBarrel->setAxisTitle("GeV"); 00084 histname = "hadDepositedEnergyEndcap_"; 00085 hcalDepEnergyEndcap = dbe->book1D(histname+AlgoName, "Energy deposited in the HCAL endcap cells", hadNoBin, hadNoMin, hadNoMax); 00086 hcalDepEnergyEndcap->setAxisTitle("GeV"); 00087 00088 hadS9NoBin = parameters.getParameter<int>("hadS9SizeBin"); 00089 hadS9NoMin = parameters.getParameter<double>("hadS9SizeMin"); 00090 hadS9NoMax = parameters.getParameter<double>("hadS9SizeMax"); 00091 histname = "hadS9DepositedEnergyBarrel_"; 00092 hcalS9DepEnergyBarrel = dbe->book1D(histname+AlgoName, "Energy deposited in the HCAL barrel 3*3 towers", hadS9NoBin, hadS9NoMin, hadS9NoMax); 00093 hcalS9DepEnergyBarrel->setAxisTitle("GeV"); 00094 histname = "hadS9DepositedEnergyEndcap_"; 00095 hcalS9DepEnergyEndcap = dbe->book1D(histname+AlgoName, "Energy deposited in the HCAL endcap 3*3 towers", hadS9NoBin, hadS9NoMin, hadS9NoMax); 00096 hcalS9DepEnergyEndcap->setAxisTitle("GeV"); 00097 histname = "hadS9PointingMuDepositedEnergy_Glb"; 00098 hcalS9PointingMuDepEnergy_Glb = dbe->book1D(histname+AlgoName, "Pointing glb muons energy deposited in the HCAL endcap 3*3 towers", hadS9NoBin, hadS9NoMin, hadS9NoMax); 00099 hcalS9PointingMuDepEnergy_Glb->setAxisTitle("GeV"); 00100 histname = "hadS9PointingMuDepositedEnergy_Tk_"; 00101 hcalS9PointingMuDepEnergy_Tk = dbe->book1D(histname+AlgoName, "Pointing tk muons energy deposited in the HCAL endcap 3*3 towers", hadS9NoBin, hadS9NoMin, hadS9NoMax); 00102 hcalS9PointingMuDepEnergy_Tk->setAxisTitle("GeV"); 00103 histname = "hadS9PointingMuDepositedEnergy_Sta_"; 00104 hcalS9PointingMuDepEnergy_Sta = dbe->book1D(histname+AlgoName, "Pointing sta muons energy deposited in the HCAL endcap 3*3 towers", hadS9NoBin, hadS9NoMin, hadS9NoMax); 00105 hcalS9PointingMuDepEnergy_Sta->setAxisTitle("GeV"); 00106 00107 hoNoBin = parameters.getParameter<int>("hoSizeBin"); 00108 hoNoMin = parameters.getParameter<double>("hoSizeMin"); 00109 hoNoMax = parameters.getParameter<double>("hoSizeMax"); 00110 histname = "hoDepositedEnergy_"; 00111 hoDepEnergy = dbe->book1D(histname+AlgoName, "Energy deposited in the HO cells", hoNoBin, hoNoMin, hoNoMax); 00112 hoDepEnergy->setAxisTitle("GeV"); 00113 00114 hoS9NoBin = parameters.getParameter<int>("hoS9SizeBin"); 00115 hoS9NoMin = parameters.getParameter<double>("hoS9SizeMin"); 00116 hoS9NoMax = parameters.getParameter<double>("hoS9SizeMax"); 00117 histname = "hoS9DepositedEnergy_"; 00118 hoS9DepEnergy = dbe->book1D(histname+AlgoName, "Energy deposited in the HO 3*3 towers", hoS9NoBin, hoS9NoMin, hoS9NoMax); 00119 hoS9DepEnergy->setAxisTitle("GeV"); 00120 histname = "hoS9PointingMuDepositedEnergy_Glb"; 00121 hoS9PointingMuDepEnergy_Glb = dbe->book1D(histname+AlgoName, "Pointing glb muons energy deposited in the HO 3*3 towers", hoS9NoBin, hoS9NoMin, hoS9NoMax); 00122 hoS9PointingMuDepEnergy_Glb->setAxisTitle("GeV"); 00123 histname = "hoS9PointingMuDepositedEnergy_Tk"; 00124 hoS9PointingMuDepEnergy_Tk = dbe->book1D(histname+AlgoName, "Pointing tk muons energy deposited in the HO 3*3 towers", hoS9NoBin, hoS9NoMin, hoS9NoMax); 00125 hoS9PointingMuDepEnergy_Tk->setAxisTitle("GeV"); 00126 histname = "hoS9PointingMuDepositedEnergy_Sta"; 00127 hoS9PointingMuDepEnergy_Sta = dbe->book1D(histname+AlgoName, "Pointing sta muons energy deposited in the HO 3*3 towers", hoS9NoBin, hoS9NoMin, hoS9NoMax); 00128 hoS9PointingMuDepEnergy_Sta->setAxisTitle("GeV"); 00129 00130 }
int MuonEnergyDepositAnalyzer::emNoBin [private] |
double MuonEnergyDepositAnalyzer::emNoMax [private] |
double MuonEnergyDepositAnalyzer::emNoMin [private] |
int MuonEnergyDepositAnalyzer::emS9NoBin [private] |
double MuonEnergyDepositAnalyzer::emS9NoMax [private] |
double MuonEnergyDepositAnalyzer::emS9NoMin [private] |
int MuonEnergyDepositAnalyzer::hadNoBin [private] |
double MuonEnergyDepositAnalyzer::hadNoMax [private] |
double MuonEnergyDepositAnalyzer::hadNoMin [private] |
int MuonEnergyDepositAnalyzer::hadS9NoBin [private] |
double MuonEnergyDepositAnalyzer::hadS9NoMax [private] |
double MuonEnergyDepositAnalyzer::hadS9NoMin [private] |
int MuonEnergyDepositAnalyzer::hoNoBin [private] |
double MuonEnergyDepositAnalyzer::hoNoMax [private] |
double MuonEnergyDepositAnalyzer::hoNoMin [private] |
int MuonEnergyDepositAnalyzer::hoS9NoBin [private] |
double MuonEnergyDepositAnalyzer::hoS9NoMax [private] |
double MuonEnergyDepositAnalyzer::hoS9NoMin [private] |
std::string MuonEnergyDepositAnalyzer::metname [private] |
Definition at line 47 of file MuonEnergyDepositAnalyzer.h.
Referenced by beginJob(), and MuonEnergyDepositAnalyzer().
Definition at line 51 of file MuonEnergyDepositAnalyzer.h.