#include <SimG4CMS/HcalTestBeam/interface/HcalTB04Histo.h>
Public Member Functions | |
void | fillEdep (double etots, double eecals, double ehcals, double etotq, double eecalq, double ehcalq) |
void | fillLongProf (std::vector< double > es, std::vector< double > eq) |
void | fillPrimary (double energy, double eta, double phi) |
void | fillTrnsProf (std::vector< double > es1, std::vector< double > eq1, std::vector< double > es2, std::vector< double > eq2) |
HcalTB04Histo (const edm::ParameterSet &ps) | |
virtual | ~HcalTB04Histo () |
Private Attributes | |
TH1D * | edecQ |
TH1D * | edecS |
TH2D * | edehQ |
TH2D * | edehS |
TH1D * | edepQ |
TH1D * | edepS |
TH1D * | edhcQ |
TH1D * | edhcS |
double | eHcalMax |
double | eTotMax |
TH1D * | iEta |
TH1D * | iniE |
TH1D * | iPhi |
TProfile * | latqe |
TProfile * | latqf |
TProfile * | latse |
TProfile * | latsf |
TProfile * | lngq |
TProfile * | lngs |
bool | verbose |
Usage: Sets up histograms and stores in a file
Definition at line 32 of file HcalTB04Histo.h.
HcalTB04Histo::HcalTB04Histo | ( | const edm::ParameterSet & | ps | ) |
Definition at line 26 of file HcalTB04Histo.cc.
References edecQ, edecS, edehQ, edehS, edepQ, edepS, edhcQ, edhcS, edm::ParameterSet::getUntrackedParameter(), iEta, iniE, iPhi, edm::Service< T >::isAvailable(), latqe, latqf, latse, latsf, lngq, and lngs.
00026 : 00027 iniE(0), iEta(0), iPhi(0), edepS(0), edecS(0), edhcS(0), edepQ(0), 00028 edecQ(0), edhcQ(0), edehS(0), edehQ(0), latse(0), latqe(0), latsf(0), 00029 latqf(0), lngs(0), lngq(0) { 00030 00031 verbose = ps.getUntrackedParameter<bool>("Verbose", false); 00032 double em1 = ps.getUntrackedParameter<double>("ETtotMax", 400.); 00033 double em2 = ps.getUntrackedParameter<double>("EHCalMax", 4.0); 00034 00035 // Book histograms 00036 edm::Service<TFileService> tfile; 00037 00038 if ( !tfile.isAvailable() ) 00039 throw cms::Exception("BadConfig") << "TFileService unavailable: " 00040 << "please add it to config file"; 00041 iniE = tfile->make<TH1D>("iniE", "Incident Energy (GeV)", 4000, 0., em1); 00042 iEta = tfile->make<TH1D>("iEta", "Eta at incidence ", 300, 0., 3.); 00043 iPhi = tfile->make<TH1D>("iPhi", "Phi at incidence ", 300, -1., 1.); 00044 edepS= tfile->make<TH1D>("edepS", "Energy deposit == Total (Simhit)",4000, 0., em1); 00045 edecS= tfile->make<TH1D>("edecS", "Energy deposit == ECal (Simhit)",4000, 0., em1); 00046 edhcS= tfile->make<TH1D>("edhcS", "Energy deposit == HCal (Simhit)",4000, 0., em2); 00047 edepQ= tfile->make<TH1D>("edepQ", "Energy deposit == Total (QIE)", 4000, 0., em1); 00048 edecQ= tfile->make<TH1D>("edecQ", "Energy deposit == ECal (QIE)", 4000, 0., em1); 00049 edhcQ= tfile->make<TH1D>("edhcQ", "Energy deposit == HCal (QIE)", 4000, 0., em2); 00050 edehS= tfile->make<TH2D>("edehS", "Hcal vs Ecal (Simhit)", 100,0.,em1, 100, 0.,em2); 00051 edehQ= tfile->make<TH2D>("edehQ", "Hcal vs Ecal (QIE)", 100,0.,em1, 100, 0.,em2); 00052 latse= tfile->make<TProfile>("latse","Lat Prof (Eta Sim)",10,0.,10.); 00053 latqe= tfile->make<TProfile>("latqe","Lat Prof (Eta QIE)",10,0.,10.); 00054 latsf= tfile->make<TProfile>("latsf","Lat Prof (Phi Sim)",10,0.,10.); 00055 latqf= tfile->make<TProfile>("latqf","Lat Prof (Phi QIE)",10,0.,10.); 00056 lngs = tfile->make<TProfile>("lngs", "Long. Prof (Sim)", 20,0.,20.); 00057 lngq = tfile->make<TProfile>("lngq", "Long. Prof (QIE)", 20,0.,20.); 00058 }
HcalTB04Histo::~HcalTB04Histo | ( | ) | [virtual] |
void HcalTB04Histo::fillEdep | ( | double | etots, | |
double | eecals, | |||
double | ehcals, | |||
double | etotq, | |||
double | eecalq, | |||
double | ehcalq | |||
) |
Definition at line 75 of file HcalTB04Histo.cc.
References edecQ, edecS, edehQ, edehS, edepQ, edepS, edhcQ, edhcS, and LogDebug.
Referenced by HcalTB04Analysis::finalAnalysis().
00076 { 00077 00078 LogDebug("HcalTBSim") << "HcalTB04Histo:::fillEdep: Simulated Total " 00079 << etots << " ECal " << eecals << " HCal " << ehcals 00080 << " Digitised Total " << etotq << " ECal " << eecalq 00081 << " HCal " << ehcalq; 00082 edepS->Fill(etots); 00083 edecS->Fill(eecals); 00084 edhcS->Fill(ehcals); 00085 edepQ->Fill(etotq); 00086 edecQ->Fill(eecalq); 00087 edhcQ->Fill(ehcalq); 00088 edehS->Fill(eecals, ehcals); 00089 edehQ->Fill(eecalq, ehcalq); 00090 }
void HcalTB04Histo::fillLongProf | ( | std::vector< double > | es, | |
std::vector< double > | eq | |||
) |
Definition at line 122 of file HcalTB04Histo.cc.
References i, lngq, lngs, LogDebug, min, and n.
Referenced by HcalTB04Analysis::finalAnalysis().
00123 { 00124 00125 unsigned int n = std::min(es.size(),eq.size()); 00126 for (unsigned int i = 0; i < n; i++) 00127 LogDebug("HcalTBSim") << "HcalTB04Histo::fillLongProf [" << i 00128 << "] Sim " << es[i] << " Dig " << eq[i]; 00129 for (unsigned int i=0; i<(es.size()); i++) { 00130 double lay = i+0.5; 00131 lngs->Fill(lay, es[i]); 00132 } 00133 for (unsigned int i=0; i<(eq.size()); i++) { 00134 double lay = i+0.5; 00135 lngq->Fill(lay, eq[i]); 00136 } 00137 }
void HcalTB04Histo::fillPrimary | ( | double | energy, | |
double | eta, | |||
double | phi | |||
) |
Definition at line 66 of file HcalTB04Histo.cc.
References iEta, iniE, iPhi, and LogDebug.
Referenced by HcalTB04Analysis::finalAnalysis().
00066 { 00067 00068 LogDebug("HcalTBSim") << "HcalTB04Histo::fillPrimary: Energy " 00069 << energy << " Eta " << eta << " Phi " << phi; 00070 iniE->Fill(energy); 00071 iEta->Fill(eta); 00072 iPhi->Fill(phi); 00073 }
void HcalTB04Histo::fillTrnsProf | ( | std::vector< double > | es1, | |
std::vector< double > | eq1, | |||
std::vector< double > | es2, | |||
std::vector< double > | eq2 | |||
) |
Definition at line 92 of file HcalTB04Histo.cc.
References i, latqe, latqf, latse, latsf, LogDebug, min, and n.
Referenced by HcalTB04Analysis::finalAnalysis().
00095 { 00096 00097 unsigned int n1 = std::min(es1.size(),eq1.size()); 00098 unsigned int n2 = std::min(es2.size(),eq2.size()); 00099 unsigned int n = std::min(n1,n2); 00100 for (unsigned int i = 0; i < n; i++) 00101 LogDebug("HcalTBSim") << "HcalTB04Histo::fillTrnsProf [" << i 00102 << "] SimEta " << es1[i] << " DigEta " << eq1[i] 00103 << " SimPhi " << es2[i] << " DigPhi " << eq2[i]; 00104 for (unsigned int i=0; i<(es1.size()); i++) { 00105 double tow = i+0.5; 00106 latse->Fill(tow, es1[i]); 00107 } 00108 for (unsigned int i=0; i<(eq1.size()); i++) { 00109 double tow = i+0.5; 00110 latqe->Fill(tow, eq1[i]); 00111 } 00112 for (unsigned int i=0; i<(es2.size()); i++) { 00113 double tow = i+0.5; 00114 latsf->Fill(tow, es2[i]); 00115 } 00116 for (unsigned int i=0; i<(eq2.size()); i++) { 00117 double tow = i+0.5; 00118 latqf->Fill(tow, eq2[i]); 00119 } 00120 }
TH1D * HcalTB04Histo::edecQ [private] |
TH1D * HcalTB04Histo::edecS [private] |
TH2D * HcalTB04Histo::edehQ [private] |
TH2D* HcalTB04Histo::edehS [private] |
TH1D * HcalTB04Histo::edepQ [private] |
TH1D* HcalTB04Histo::edepS [private] |
TH1D * HcalTB04Histo::edhcQ [private] |
TH1D * HcalTB04Histo::edhcS [private] |
double HcalTB04Histo::eHcalMax [private] |
Definition at line 52 of file HcalTB04Histo.h.
double HcalTB04Histo::eTotMax [private] |
Definition at line 52 of file HcalTB04Histo.h.
TH1D * HcalTB04Histo::iEta [private] |
TH1D* HcalTB04Histo::iniE [private] |
TH1D * HcalTB04Histo::iPhi [private] |
TProfile * HcalTB04Histo::latqe [private] |
TProfile * HcalTB04Histo::latqf [private] |
TProfile* HcalTB04Histo::latse [private] |
TProfile * HcalTB04Histo::latsf [private] |
TProfile * HcalTB04Histo::lngq [private] |
TProfile * HcalTB04Histo::lngs [private] |
bool HcalTB04Histo::verbose [private] |
Definition at line 51 of file HcalTB04Histo.h.