CMS 3D CMS Logo

LHEPCMS.cc

Go to the documentation of this file.
00001 #include "LHEPCMS.hh"
00002 #include "SimG4Core/PhysicsLists/interface/CMSEmStandardPhysics.h"
00003 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00004 
00005 #include "G4DecayPhysics.hh"
00006 #include "G4EmExtraPhysics.hh"
00007 #include "G4IonPhysics.hh"
00008 #include "G4HadronElasticPhysics.hh"
00009 
00010 #include "G4DataQuestionaire.hh"
00011 #include "HadronPhysicsLHEP.hh"
00012 
00013 LHEPCMS::LHEPCMS(G4LogicalVolumeToDDLogicalPartMap& map, 
00014                  const edm::ParameterSet & p) : PhysicsList(map, p) {
00015 
00016   G4DataQuestionaire it(photon);
00017   
00018   int  ver     = p.getUntrackedParameter<int>("Verbosity",0);
00019   bool emPhys  = p.getUntrackedParameter<bool>("EMPhysics",true);
00020   bool hadPhys = p.getUntrackedParameter<bool>("HadPhysics",true);
00021   edm::LogInfo("PhysicsList") << "You are using the simulation engine: "
00022                               << "LHEP 4.2 with Flags for EM Physics "
00023                               << emPhys << " and for Hadronic Physics "
00024                               << hadPhys << "\n";
00025 
00026   if (emPhys) {
00027     // EM Physics
00028     RegisterPhysics( new CMSEmStandardPhysics("standard EM",ver));
00029 
00030     // Synchroton Radiation & GN Physics
00031     RegisterPhysics( new G4EmExtraPhysics("extra EM"));
00032   }
00033 
00034   // General Physics - i.e. decay
00035   RegisterPhysics( new G4DecayPhysics("decay"));
00036 
00037   if (hadPhys) {
00038     // Hadron Elastic scattering
00039     RegisterPhysics( new G4HadronElasticPhysics("LElastic",ver,false));
00040 
00041     // Hadron Physics
00042     RegisterPhysics(  new HadronPhysicsLHEP("hadron"));
00043 
00044     // Ion Physics
00045     RegisterPhysics( new G4IonPhysics("ion"));
00046   }
00047 }
00048 

Generated on Tue Jun 9 17:47:07 2009 for CMSSW by  doxygen 1.5.4