Go to the documentation of this file.00001 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00002
00003
00004 #include "FastSimulation/CalorimeterProperties/interface/ECALBarrelProperties.h"
00005 #include "TMath.h"
00006 #include <iostream>
00007 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00008
00009 ECALBarrelProperties::ECALBarrelProperties(const edm::ParameterSet& fastDet)
00010 {
00011
00012 edm::ParameterSet fastDetBarrel = fastDet.getParameter<edm::ParameterSet>("BarrelCalorimeterProperties");
00013
00014 lightColl_ = fastDetBarrel.getParameter<double>("lightColl");
00015 lightCollUnif_ = fastDetBarrel.getParameter<double>("lightCollUnif");
00016 photoStatistics_ = fastDetBarrel.getParameter<double>("photoStatistics");
00017 thickness_ = fastDetBarrel.getParameter<double>("thickness");
00018 interactionLength_ = fastDetBarrel.getParameter<double>("interactionLength");
00019
00020 Aeff_ = fastDetBarrel.getParameter<double>("Aeff");
00021 Zeff_ = fastDetBarrel.getParameter<double>("Zeff");
00022 rho_ = fastDetBarrel.getParameter<double>("rho");
00023 radLenIngcm2_ = fastDetBarrel.getParameter<double>("radLenIngcm2");
00024
00025 radLenIncm_ = fastDetBarrel.getParameter<double>("radLenIncm");
00026 radLenIncm_ = (radLenIncm_ < 0) ? radLenIngcm2_/rho_ : radLenIncm_;
00027
00028 criticalEnergy_ = fastDetBarrel.getParameter<double>("criticalEnergy");
00029 criticalEnergy_ = (criticalEnergy_ < 0) ? 2.66E-3*TMath::Power((radLenIngcm2_*Zeff_/Aeff_),1.1) : criticalEnergy_;
00030
00031 moliereRadius_ = fastDetBarrel.getParameter<double>("moliereRadius");
00032 moliereRadius_ = (moliereRadius_ < 0) ? scaleEnergy_/criticalEnergy_*radLenIncm_ : moliereRadius_;
00033
00034 Fs_ = fastDetBarrel.getParameter<double>("Fs");
00035 ehat_ = fastDetBarrel.getParameter<double>("ehat");
00036 resE_ = fastDetBarrel.getParameter<double>("resE");
00037
00038 da_ = fastDetBarrel.getParameter<double>("da");
00039 dp_ = fastDetBarrel.getParameter<double>("dp");
00040
00041 bHom_ = fastDetBarrel.getParameter<bool>("bHom");
00042
00043 bool debug = fastDetBarrel.getParameter<bool>("debug");
00044
00045
00046 if (debug)
00047 edm::LogInfo("ECALProperties") <<" ========== Barrel ========= " << "\n"
00048 <<" isHom ? " << bHom_ << "\n"
00049 <<" da = " << da_ << " dp = " << dp_
00050 <<" lightColl = " << lightColl_ << "\n"
00051 <<" lightCollUnif_ = " << lightCollUnif_ << "\n"
00052 <<" photoStatistics_ = " << photoStatistics_ << " photons/GeV\n"
00053 <<" thickness_ = " << thickness_ << " cm\n"
00054 <<" interactionLength_ = " << interactionLength_ << " cm\n"
00055 <<" Aeff_ = " << Aeff_ << "\n"
00056 <<" Zeff_ = " << Zeff_ << "\n"
00057 <<" rho_ = " << rho_ << " g/cm3\n"
00058 <<" radLenIngcm2_ = " << radLenIngcm2_ << " g*cm2\n"
00059 <<" radLenIncm_ = " << radLenIncm_ << " cm\n"
00060 <<" moliereRadius_ = " << moliereRadius_ << " cm\n"
00061 <<" criticalEnergy_ = " << criticalEnergy_ << " GeV\n"
00062 <<" scaleEnergy_ = " << scaleEnergy_ << " GeV\n"
00063 <<" Fs = " << Fs_ << " ehat = " << ehat_ << " resE = " << resE_ << "\n";
00064
00065
00066 }