CMS 3D CMS Logo

HcalTB02Analysis Class Reference

Description: Analysis of 2004 Hcal Test beam simulation. More...

#include <SimG4CMS/HcalTestBeam/interface/HcalTB02Analysis.h>

Inheritance diagram for HcalTB02Analysis:

SimProducer Observer< const BeginOfEvent * > Observer< const EndOfEvent * > SimWatcher

List of all members.

Public Member Functions

 HcalTB02Analysis (const edm::ParameterSet &p)
virtual void produce (edm::Event &, const edm::EventSetup &)
virtual ~HcalTB02Analysis ()

Private Member Functions

void clear ()
void fillEvent (HcalTB02HistoClass &)
void finish ()
 HcalTB02Analysis (const HcalTB02Analysis &)
const HcalTB02Analysisoperator= (const HcalTB02Analysis &)
void update (const EndOfEvent *evt)
 This routine will be called when the appropriate signal arrives.
void update (const BeginOfEvent *evt)
 This routine will be called when the appropriate signal arrives.

Private Attributes

float E5x5Matrix
float E5x5MatrixN
float E7x7Matrix
float E7x7MatrixN
std::map< int, float > energyInCrystals
std::map< int, float > energyInScints
double eta
std::string fileNameTuple
bool hcalOnly
HcalTB02Histohisto
double incidentEnergy
int maxTime
std::vector< std::string > names
int particleType
double phi
double pInit
std::map< int, float > primaries
float SEnergy
float SEnergyN
float xE3x3Matrix
float xE3x3MatrixN
float xE5x5Matrix
float xE5x5MatrixN
double xIncidentEnergy
float xSEnergy
float xSEnergyN


Detailed Description

Description: Analysis of 2004 Hcal Test beam simulation.

Usage: A Simwatcher class and can be activated from Oscarproducer module

Definition at line 43 of file HcalTB02Analysis.h.


Constructor & Destructor Documentation

HcalTB02Analysis::HcalTB02Analysis ( const edm::ParameterSet p  ) 

Definition at line 45 of file HcalTB02Analysis.cc.

References edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hcalOnly, histo, and names.

00045                                                           : histo(0) {
00046 
00047   edm::ParameterSet m_Anal = p.getParameter<edm::ParameterSet>("HcalTB02Analysis");
00048   hcalOnly      = m_Anal.getUntrackedParameter<bool>("HcalClusterOnly",true);
00049   names         = m_Anal.getParameter<std::vector<std::string> >("Names");
00050   
00051   produces<HcalTB02HistoClass>();
00052 
00053   edm::LogInfo("HcalTBSim") << "HcalTB02Analysis:: Initialised as observer of "
00054                             << "BeginOfJob/BeginOfEvent/EndOfEvent with "
00055                             << "Parameter values:\n \thcalOnly = " << hcalOnly;
00056 
00057   histo  = new HcalTB02Histo(m_Anal);
00058 } 

HcalTB02Analysis::~HcalTB02Analysis (  )  [virtual]

Definition at line 60 of file HcalTB02Analysis.cc.

References finish(), and histo.

00060                                     {
00061 
00062   finish();
00063 
00064   if (histo)   {
00065     delete histo;
00066     histo  = 0;
00067   }
00068   edm::LogInfo("HcalTBSim") << "HcalTB02Analysis is deleting";
00069 }

HcalTB02Analysis::HcalTB02Analysis ( const HcalTB02Analysis  )  [private]


Member Function Documentation

void HcalTB02Analysis::clear ( void   )  [private]

Definition at line 415 of file HcalTB02Analysis.cc.

References E5x5Matrix, E5x5MatrixN, E7x7Matrix, E7x7MatrixN, energyInCrystals, energyInScints, eta, incidentEnergy, maxTime, particleType, phi, pInit, primaries, SEnergy, SEnergyN, xE3x3Matrix, xE3x3MatrixN, xE5x5Matrix, xE5x5MatrixN, xIncidentEnergy, xSEnergy, and xSEnergyN.

Referenced by update().

00415                              {
00416 
00417   primaries.clear();
00418   particleType = 0;
00419   pInit = eta = phi = incidentEnergy = 0;
00420 
00421   SEnergy = E7x7Matrix = E5x5Matrix = SEnergyN = 0;
00422   E7x7MatrixN = E5x5MatrixN = 0;
00423   energyInScints.clear();
00424   maxTime = 0;
00425 
00426   xIncidentEnergy = 0;
00427   energyInCrystals.clear();
00428   xSEnergy = xSEnergyN = xE5x5Matrix = xE3x3Matrix = 0;
00429   xE5x5MatrixN = xE3x3MatrixN = 0;
00430 }

void HcalTB02Analysis::fillEvent ( HcalTB02HistoClass product  )  [private]

Definition at line 384 of file HcalTB02Analysis.cc.

References E5x5Matrix, E5x5MatrixN, E7x7Matrix, E7x7MatrixN, energyInCrystals, energyInScints, eta, incidentEnergy, maxTime, particleType, phi, pInit, primaries, SEnergy, SEnergyN, HcalTB02HistoClass::set_E5x5(), HcalTB02HistoClass::set_E5x5N(), HcalTB02HistoClass::set_E7x7(), HcalTB02HistoClass::set_E7x7N(), HcalTB02HistoClass::set_Eentry(), HcalTB02HistoClass::set_Einit(), HcalTB02HistoClass::set_eta(), HcalTB02HistoClass::set_ETot(), HcalTB02HistoClass::set_ETotN(), HcalTB02HistoClass::set_Nprim(), HcalTB02HistoClass::set_Ntimesli(), HcalTB02HistoClass::set_NUnit(), HcalTB02HistoClass::set_partType(), HcalTB02HistoClass::set_phi(), HcalTB02HistoClass::set_xE3x3(), HcalTB02HistoClass::set_xE3x3N(), HcalTB02HistoClass::set_xE5x5(), HcalTB02HistoClass::set_xE5x5N(), HcalTB02HistoClass::set_xEentry(), HcalTB02HistoClass::set_xETot(), HcalTB02HistoClass::set_xETotN(), HcalTB02HistoClass::set_xNUnit(), xE3x3Matrix, xE3x3MatrixN, xE5x5Matrix, xE5x5MatrixN, xIncidentEnergy, xSEnergy, and xSEnergyN.

Referenced by produce().

00384                                                             {
00385 
00386   //Beam information
00387   product.set_Nprim(float(primaries.size()));
00388   product.set_partType(particleType);
00389   product.set_Einit(pInit/GeV);
00390   product.set_eta(eta);
00391   product.set_phi(phi);
00392   product.set_Eentry(incidentEnergy);
00393 
00394   //Calorimeter energy
00395   product.set_ETot(SEnergy/GeV );
00396   product.set_E7x7(E7x7Matrix/GeV );
00397   product.set_E5x5(E5x5Matrix/GeV );
00398   product.set_ETotN(SEnergyN/GeV);
00399   product.set_E7x7N(E7x7MatrixN/GeV );
00400   product.set_E5x5N(E5x5MatrixN/GeV );
00401   product.set_NUnit(float(energyInScints.size()));
00402   product.set_Ntimesli(float(maxTime));
00403 
00404   //crystal information
00405   product.set_xEentry(xIncidentEnergy);
00406   product.set_xNUnit(float(energyInCrystals.size()));
00407   product.set_xETot(xSEnergy/GeV);
00408   product.set_xETotN(xSEnergyN/GeV);
00409   product.set_xE5x5(xE5x5Matrix/GeV);
00410   product.set_xE3x3(xE3x3Matrix/GeV);
00411   product.set_xE5x5N(xE5x5MatrixN/GeV);
00412   product.set_xE3x3N(xE3x3MatrixN/GeV);
00413 }

void HcalTB02Analysis::finish ( void   )  [private]

Definition at line 432 of file HcalTB02Analysis.cc.

Referenced by ~HcalTB02Analysis().

00432                               {
00433 
00434   /*
00435   //Profile 
00436   std::ofstream   oFile;
00437   oFile.open("profile.dat");
00438   float st[19] = {0.8,
00439                   0.4,  0.4,  0.4,  0.4,  0.4,   
00440                   0.4,  0.4,  0.4,  0.4,  0.4,
00441                   0.4,  0.4,  0.4,  0.4,  0.4, 
00442                   0.8,  1.0,  1.0};
00443                  
00444   //cm of material (brass) in front of scintillator layer i:
00445  
00446   float w[19] = {7.45,                         //iron !
00447                  6.00, 6.00, 6.00, 6.00, 6.00, //brass
00448                  6.00, 6.00, 6.00, 6.00, 6.60, //brass
00449                  6.60, 6.60, 6.60, 6.60, 6.60, //brass
00450                  8.90, 20.65, 19.5};            //brass,iron !
00451 
00452   for (int ilayer = 0; ilayer<19; ilayer++) {
00453 
00454     // Histogram mean and sigma calculated from the ROOT histos
00455     edm::LogInfo("HcalTBSim") << "Layer number: " << ilayer << " Mean = " 
00456                               << histo->getMean(ilayer) << " sigma = "   
00457                               << histo->getRMS(ilayer) << " LThick= "   
00458                               << w[ilayer] << " SThick= "   << st[ilayer];
00459       
00460     oFile << ilayer << " "  << histo->getMean(ilayer) << " " 
00461           << histo->getRMS(ilayer)  << " " << w[ilayer] << " " << st[ilayer] 
00462           << std::endl;
00463 
00464   } 
00465   oFile.close(); 
00466   */
00467 }

const HcalTB02Analysis& HcalTB02Analysis::operator= ( const HcalTB02Analysis  )  [private]

void HcalTB02Analysis::produce ( edm::Event e,
const edm::EventSetup  
) [virtual]

Implements SimProducer.

Definition at line 75 of file HcalTB02Analysis.cc.

References fillEvent(), and edm::Event::put().

00075                                                                 {
00076 
00077   std::auto_ptr<HcalTB02HistoClass> product(new HcalTB02HistoClass);
00078   fillEvent(*product);
00079   e.put(product);
00080 }

void HcalTB02Analysis::update ( const EndOfEvent  )  [private, virtual]

This routine will be called when the appropriate signal arrives.

Implements Observer< const EndOfEvent * >.

Definition at line 89 of file HcalTB02Analysis.cc.

References GenMuonPlsPt100GeV_cfg::cout, E5x5Matrix, E5x5MatrixN, E7x7Matrix, E7x7MatrixN, lat::endl(), energyInCrystals, energyInScints, eta, Exception, HcalTB02Histo::fillAllTime(), HcalTB02Histo::fillProfile(), HcalTB02Histo::fillTransProf(), CaloG4Hit::getEM(), HcalTB02HcalNumberingScheme::getetaID(), CaloG4Hit::getHadr(), CaloG4Hit::getIncidentEnergy(), HcalTB02HcalNumberingScheme::getlayerID(), HcalTB02HcalNumberingScheme::getphiID(), CaloG4Hit::getTimeSliceID(), CaloG4Hit::getTrackID(), CaloG4Hit::getUnitID(), hcalOnly, histo, i, incidentEnergy, int, edm::Service< T >::isAvailable(), funct::log(), LogDebug, max, maxTime, min, names, npart, particleType, phi, pInit, funct::pow(), primaries, SEnergy, SEnergyN, funct::sqrt(), funct::tan(), theta, xE3x3Matrix, xE3x3MatrixN, xE5x5Matrix, xE5x5MatrixN, xIncidentEnergy, and xSEnergy.

00089                                                     {
00090 
00091   edm::Service<edm::RandomNumberGenerator> rng;
00092   if ( ! rng.isAvailable()) {
00093     throw cms::Exception("Configuration")
00094       << "HcalTB02Analysis requires the RandomNumberGeneratorService\n"
00095       << "which is not present in the configuration file. "
00096       << "You must add the service\n in the configuration file or "
00097       << "remove the modules that require it.";
00098   }
00099   CLHEP::RandGaussQ  randGauss(rng->getEngine());
00100 
00101   // Look for the Hit Collection
00102   LogDebug("HcalTBSim") << "HcalTB02Analysis::Fill event " 
00103                         << (*evt)()->GetEventID();
00104 
00105   // access to the G4 hit collections 
00106   G4HCofThisEvent* allHC = (*evt)()->GetHCofThisEvent();
00107   int ihit = 0;    
00108  
00109   // HCAL
00110   std::string sd = names[0];
00111   int HCHCid = G4SDManager::GetSDMpointer()->GetCollectionID(sd);
00112   CaloG4HitCollection* theHCHC = (CaloG4HitCollection*) allHC->GetHC(HCHCid);
00113   HcalTB02HcalNumberingScheme *org = new HcalTB02HcalNumberingScheme();   
00114   LogDebug("HcalTBSim") << "HcalTB02Analysis :: Hit Collection for " << sd 
00115                         << " of ID " << HCHCid << " is obtained at " <<theHCHC;
00116 
00117   int nentries = 0;
00118   nentries = theHCHC->entries();
00119   if (nentries==0) return;
00120 
00121   int xentries = 0;  
00122   int XTALSid=0;
00123   CaloG4HitCollection* theXTHC=0;
00124 
00125   if (!hcalOnly) {
00126     // XTALS
00127     sd      = names[1];
00128     XTALSid = G4SDManager::GetSDMpointer()->GetCollectionID(sd);
00129     //    assert (XTALSid != 0);
00130     theXTHC = (CaloG4HitCollection*) allHC->GetHC(XTALSid);
00131     //    assert (theXTHC != 0);
00132     //HcalTB02XtalNumberingScheme *xorg = new HcalTB02XtalNumberingScheme();
00133     LogDebug("HcalTBSim") << "HcalTB02Analysis :: Hit Collection for " << sd
00134                           << " of ID " << XTALSid << " is obtained at " 
00135                           << theXTHC;
00136     xentries = theXTHC->entries();
00137     if (xentries==0) return;
00138   }
00139 
00140   LogDebug("HcalTBSim") << "HcalTB02Analysis :: There are " << nentries 
00141                         << " HCal hits, and" << xentries  << " xtal hits";
00142 
00143   float ETot=0., xETot=0.;
00144   //float maxE = 0.; 
00145   //int maxI=0, 
00146   int scintID=0, xtalID=0;
00147 
00148   // HCAL
00149 
00150   if (HCHCid >= 0 && theHCHC > 0) {
00151     for ( ihit = 0; ihit < nentries; ihit++) {
00152 
00153       CaloG4Hit* aHit = (*theHCHC)[ihit]; 
00154       scintID     = aHit->getUnitID();
00155       int layer   = org->getlayerID(scintID);
00156       float enEm  = aHit->getEM();
00157       float enhad = aHit->getHadr();
00158       
00159       if (layer==0) {
00160         enEm =enEm/2.;
00161         enhad=enhad/2.;
00162       }
00163 
00164       energyInScints[scintID]+= enEm + enhad;
00165       primaries[aHit->getTrackID()]+= enEm + enhad;
00166       float time = aHit->getTimeSliceID();
00167       if (time > maxTime) maxTime=(int)time;
00168       histo->fillAllTime(time);   
00169       
00170     }           
00171  
00172     //
00173     // Profile
00174     //
00175 
00176     float TowerEne[8][18], TowerEneCF[8][18], LayerEne[19], EnRing[100];
00177     for (int iphi=0 ; iphi<8; iphi++) {
00178       for (int jeta=0 ; jeta<18; jeta++) {
00179         TowerEne[iphi][jeta]=0.;
00180         TowerEneCF[iphi][jeta]=0.;
00181       }
00182     }
00183     
00184     for (int ilayer=0; ilayer<19; ilayer++) LayerEne[ilayer]=0.;
00185     for (int iring=0; iring<100; iring++) EnRing[iring]=0.;
00186     
00187     for (std::map<int,float>::iterator is = energyInScints.begin();
00188          is!= energyInScints.end(); is++) {
00189 
00190       ETot = (*is).second;
00191 
00192       int layer = org->getlayerID((*is).first);
00193 
00194       if ( (layer!=17) && (layer!=18) )  {
00195             
00196         float eta = org->getetaID((*is).first);
00197         float phi = org->getphiID((*is).first);
00198             
00199         SEnergy += ETot;
00200         TowerEne[(int)phi][(int)eta] += ETot;
00201 
00202         TowerEneCF[(int)phi][(int)eta] += ETot*(1.+ 0.1*randGauss.fire() );
00203         double dR=0.08727*std::sqrt( (eta-8.)*(eta-8.) + (phi-3.)*(phi-3.) );
00204         EnRing[(int)(dR/0.01)] += ETot;
00205       }
00206 
00207       LayerEne[layer] += ETot;
00208         
00209     }
00210     
00211     for (int ilayer=0 ; ilayer<19 ; ilayer++) {
00212       histo->fillProfile(ilayer,LayerEne[ilayer]/GeV);
00213     }
00214     
00215     for (int iring=0; iring<100; iring++)
00216       histo->fillTransProf(0.01*iring+0.005,EnRing[iring]/GeV);
00217     
00218     for (int iphi=0 ; iphi<8; iphi++) {
00219       for (int jeta=0 ; jeta<18; jeta++) {
00220         
00221         //SEnergyN += TowerEneCF[iphi][jeta] + 3.2*randGauss.fire(); // LHEP
00222         SEnergyN += TowerEneCF[iphi][jeta] + 3.*randGauss.fire(); // QGSP
00223 
00224         //double dR=0.08727*sqrt( (jeta-8.)*(jeta-8.)+(iphi-3.)*(iphi-3.) );
00225         //cout.testOut << " phi= " << iphi << " eta= " << jeta 
00226         //           << " TowerEne[iphi,jeta]= " << TowerEne[iphi][jeta] 
00227         //           << "dR= "  << dR << endl;
00228         
00229         //double Rand = 3.2*randGauss.fire(); // LHEP
00230         double Rand = 3.*randGauss.fire(); // QGSP
00231         
00232         if ( (iphi>=0) && (iphi<7) ) {
00233           if ( (jeta>=5) && (jeta<12) ) {
00234                 
00235             E7x7Matrix += TowerEne[iphi][jeta];
00236             E7x7MatrixN += TowerEneCF[iphi][jeta] + Rand;
00237                 
00238             if ( (iphi>=1) && (iphi<6) ) {
00239               if ( (jeta>=6) && (jeta<11) ) {
00240                         
00241                 E5x5Matrix += TowerEne[iphi][jeta];
00242                 E5x5MatrixN += TowerEneCF[iphi][jeta] + Rand;
00243                         
00244               }
00245             }
00246                 
00247           }
00248         }
00249         
00250       }
00251     }
00252     
00253     //
00254     // Find Primary info:
00255     //  
00256     int trackID = 0;
00257     G4PrimaryParticle* thePrim=0;
00258     G4int nvertex = (*evt)()->GetNumberOfPrimaryVertex();
00259     LogDebug("HcalTBSim") << "HcalTB02Analysis :: Event has " << nvertex 
00260                           << " vertex";
00261     if (nvertex==0)
00262       edm::LogWarning("HcalTBSim") << "HcalTB02Analysis:: End Of Event  "
00263                                    << "ERROR: no vertex";
00264 
00265     for (int i = 0 ; i<nvertex; i++) {
00266         
00267       G4PrimaryVertex* avertex = (*evt)()->GetPrimaryVertex(i);
00268       if (avertex == 0) {
00269         edm::LogWarning("HcalTBSim") << "HcalTB02Analysis:: End Of Event "
00270                                      << "ERROR: pointer to vertex = 0";
00271       } else {
00272         int npart = avertex->GetNumberOfParticle();
00273         LogDebug("HcalTBSim") << "HcalTB02Analysis::Vertex number :" << i 
00274                               << " with " << npart << " particles";
00275         if (thePrim==0) thePrim=avertex->GetPrimary(trackID);
00276       }
00277     }
00278     
00279     double px=0.,py=0.,pz=0.;
00280     
00281     if (thePrim != 0) {
00282       px = thePrim->GetPx();
00283       py = thePrim->GetPy();
00284       pz = thePrim->GetPz();
00285       pInit = std::sqrt(pow(px,2.)+pow(py,2.)+pow(pz,2.));
00286       if (pInit==0) {
00287         edm::LogWarning("HcalTBSim") << "HcalTB02Analysis:: End Of Event "
00288                                      << " ERROR: primary has p=0 ";
00289       } else {   
00290         float costheta = pz/pInit;
00291         float theta = acos(std::min(std::max(costheta,float(-1.)),float(1.)));
00292         eta = -log(tan(theta/2));
00293         if (px != 0) phi = atan(py/px);  
00294       }
00295       particleType      = thePrim->GetPDGcode();
00296     } else {
00297       LogDebug("HcalTBSim") << "HcalTB02Analysis:: End Of Event ERROR: could"
00298                             << " not find primary ";
00299     }
00300     
00301     CaloG4Hit* firstHit =(*theHCHC)[0];
00302     incidentEnergy = (firstHit->getIncidentEnergy()/GeV);
00303     
00304   }// number of Hits > 0
00305 
00306   if (!hcalOnly) {
00307 
00308     // XTALS
00309 
00310     if (XTALSid >= 0 && theXTHC > 0) {
00311       for (int xihit = 0; xihit < xentries; xihit++) {
00312 
00313         CaloG4Hit* xaHit = (*theXTHC)[xihit]; 
00314 
00315         float xenEm = xaHit->getEM();
00316         float xenhad = xaHit->getHadr();
00317         xtalID = xaHit->getUnitID();
00318           
00319         energyInCrystals[xtalID]+= xenEm + xenhad;
00320       }
00321       
00322       float xCrysEne[7][7];
00323       for (int irow=0 ; irow<7; irow++) {
00324         for (int jcol=0 ; jcol<7; jcol++) {
00325           xCrysEne[irow][jcol]=0.;
00326         }
00327       }
00328       
00329       for (std::map<int,float>::iterator is = energyInCrystals.begin();
00330            is!= energyInCrystals.end(); is++) {
00331         int xtalID = (*is).first;
00332         xETot = (*is).second;
00333             
00334         int irow = (int)(xtalID/100.);
00335         int jcol = (int)(xtalID-100.*irow);
00336         
00337         xSEnergy += xETot;
00338         xCrysEne[irow][jcol] = xETot;
00339             
00340         float dR=std::sqrt( 0.01619*0.01619*(jcol-3)*(jcol-3) + 
00341                             0.01606*0.01606*(irow-3)*(irow-3) );
00342         histo->fillTransProf(dR,xETot*1.05);
00343             
00344         if ( (irow>0) && (irow<6) ) {
00345           if ( (jcol>0) && (jcol<6) ) {
00346                     
00347             xE5x5Matrix += xCrysEne[irow][jcol];
00348             xE5x5MatrixN += xCrysEne[irow][jcol] + 108.5*randGauss.fire();
00349                     
00350             if ( (irow>1) && (irow<5) ) {
00351               if ( (jcol>1) && (jcol<5) ) {             
00352                 xE3x3Matrix += xCrysEne[irow][jcol];
00353                 xE3x3MatrixN += xCrysEne[irow][jcol] +108.5*randGauss.fire();
00354               }    
00355             }
00356           }
00357         }  
00358         
00359       }      
00360 
00361       if (!hcalOnly) {
00362         //      assert(theXTHC);
00363         if ( theXTHC != 0 ) {
00364           CaloG4Hit* xfirstHit =(*theXTHC)[0];
00365           xIncidentEnergy = xfirstHit->getIncidentEnergy()/GeV;
00366         }
00367       }
00368       
00369     }// number of Hits > 0
00370 
00371   }
00372 
00373   int iEvt = (*evt)()->GetEventID();
00374   if (iEvt < 10) 
00375     std::cout << " Event " << iEvt << std::endl;
00376   else if ((iEvt < 100) && (iEvt%10 == 0)) 
00377     std::cout << " Event " << iEvt << std::endl;
00378   else if ((iEvt < 1000) && (iEvt%100 == 0)) 
00379     std::cout << " Event " << iEvt << std::endl;
00380   else if ((iEvt < 10000) && (iEvt%1000 == 0)) 
00381     std::cout << " Event " << iEvt << std::endl;
00382 }

void HcalTB02Analysis::update ( const BeginOfEvent  )  [private, virtual]

This routine will be called when the appropriate signal arrives.

Implements Observer< const BeginOfEvent * >.

Definition at line 82 of file HcalTB02Analysis.cc.

References clear().

00082                                                       {
00083  
00084   edm::LogInfo("HcalTBSim") << "HcalTB02Analysis: =====> Begin of event = "
00085                             << (*evt) ()->GetEventID();
00086   clear();
00087 }


Member Data Documentation

float HcalTB02Analysis::E5x5Matrix [private]

Definition at line 82 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::E5x5MatrixN [private]

Definition at line 83 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::E7x7Matrix [private]

Definition at line 82 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::E7x7MatrixN [private]

Definition at line 83 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

std::map<int,float> HcalTB02Analysis::energyInCrystals [private]

Definition at line 78 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

std::map<int,float> HcalTB02Analysis::energyInScints [private]

Definition at line 78 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

double HcalTB02Analysis::eta [private]

Definition at line 81 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

std::string HcalTB02Analysis::fileNameTuple [private]

Definition at line 74 of file HcalTB02Analysis.h.

bool HcalTB02Analysis::hcalOnly [private]

Definition at line 73 of file HcalTB02Analysis.h.

Referenced by HcalTB02Analysis(), and update().

HcalTB02Histo* HcalTB02Analysis::histo [private]

Definition at line 70 of file HcalTB02Analysis.h.

Referenced by HcalTB02Analysis(), update(), and ~HcalTB02Analysis().

double HcalTB02Analysis::incidentEnergy [private]

Definition at line 81 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

int HcalTB02Analysis::maxTime [private]

Definition at line 84 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

std::vector<std::string> HcalTB02Analysis::names [private]

Definition at line 75 of file HcalTB02Analysis.h.

Referenced by HcalTB02Analysis(), and update().

int HcalTB02Analysis::particleType [private]

Definition at line 80 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

double HcalTB02Analysis::phi [private]

Definition at line 81 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

double HcalTB02Analysis::pInit [private]

Definition at line 81 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

std::map<int,float> HcalTB02Analysis::primaries [private]

Definition at line 79 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::SEnergy [private]

Definition at line 82 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::SEnergyN [private]

Definition at line 83 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xE3x3Matrix [private]

Definition at line 87 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xE3x3MatrixN [private]

Definition at line 88 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xE5x5Matrix [private]

Definition at line 87 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xE5x5MatrixN [private]

Definition at line 88 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

double HcalTB02Analysis::xIncidentEnergy [private]

Definition at line 85 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xSEnergy [private]

Definition at line 86 of file HcalTB02Analysis.h.

Referenced by clear(), fillEvent(), and update().

float HcalTB02Analysis::xSEnergyN [private]

Definition at line 86 of file HcalTB02Analysis.h.

Referenced by clear(), and fillEvent().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:23:57 2009 for CMSSW by  doxygen 1.5.4