Go to the documentation of this file.00001 #include "SimG4Core/CustomPhysics/interface/CustomPhysics.h"
00002 #include "SimG4Core/CustomPhysics/interface/CustomPhysicsList.h"
00003 #include "SimG4Core/PhysicsLists/interface/CMSEmStandardPhysics71.h"
00004 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00005
00006 #include "G4DecayPhysics.hh"
00007 #include "G4EmExtraPhysics.hh"
00008 #include "G4IonPhysics.hh"
00009 #include "G4QStoppingPhysics.hh"
00010 #include "G4HadronElasticPhysics.hh"
00011 #include "G4NeutronTrackingCut.hh"
00012
00013 #include "G4DataQuestionaire.hh"
00014 #include "HadronPhysicsQGSP.hh"
00015
00016 CustomPhysics::CustomPhysics(G4LogicalVolumeToDDLogicalPartMap& map,
00017 const HepPDT::ParticleDataTable * table_,
00018 sim::FieldBuilder *fieldBuilder_,
00019 const edm::ParameterSet & p) : PhysicsList(map, table_, fieldBuilder_, p) {
00020
00021 G4DataQuestionaire it(photon);
00022
00023 int ver = p.getUntrackedParameter<int>("Verbosity",0);
00024 bool emPhys = p.getUntrackedParameter<bool>("EMPhysics",true);
00025 bool hadPhys = p.getUntrackedParameter<bool>("HadPhysics",true);
00026 edm::LogInfo("PhysicsList") << "You are using the simulation engine: "
00027 << "QGSP_EMV 3.3 with Flags for EM Physics "
00028 << emPhys << " and for Hadronic Physics "
00029 << hadPhys << "\n";
00030
00031
00032 RegisterPhysics( new CMSEmStandardPhysics71("standard EM v71",ver));
00033
00034
00035 RegisterPhysics(new G4EmExtraPhysics("extra EM"));
00036
00037
00038 RegisterPhysics(new G4DecayPhysics("decay"));
00039
00040
00041 RegisterPhysics(new G4HadronElasticPhysics("elastic",ver,false));
00042
00043
00044 G4bool quasiElastic=true;
00045 RegisterPhysics(new HadronPhysicsQGSP("hadron",quasiElastic));
00046
00047
00048
00049 RegisterPhysics(new G4QStoppingPhysics("stopping"));
00050
00051
00052 RegisterPhysics(new G4IonPhysics("ion"));
00053
00054
00055 RegisterPhysics( new G4NeutronTrackingCut("Neutron tracking cut", ver));
00056
00057
00058 RegisterPhysics(new CustomPhysicsList("custom",p));
00059 }