test
Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
SimG4Core
PhysicsLists
plugins
QBBCCMS.cc
Go to the documentation of this file.
1
#include "QBBCCMS.hh"
2
#include "
SimG4Core/PhysicsLists/interface/CMSMonopolePhysics.h
"
3
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
4
5
#include "G4EmStandardPhysics_option1.hh"
6
#include "G4DecayPhysics.hh"
7
#include "G4EmExtraPhysics.hh"
8
#include "G4StoppingPhysics.hh"
9
#include "G4HadronicProcessStore.hh"
10
11
#include "G4DataQuestionaire.hh"
12
#include "G4HadronInelasticQBBC.hh"
13
#include "G4HadronElasticPhysicsXS.hh"
14
#include "G4IonPhysics.hh"
15
#include "G4NeutronTrackingCut.hh"
16
17
QBBCCMS::QBBCCMS(
G4LogicalVolumeToDDLogicalPartMap
& map,
18
const
HepPDT::ParticleDataTable
*
table_
,
19
sim::ChordFinderSetter
*chordFinderSetter_,
20
const
edm::ParameterSet
&
p
) :
PhysicsList
(map, table_, chordFinderSetter_, p) {
21
22
G4DataQuestionaire it(photon);
23
24
int
ver = p.
getUntrackedParameter
<
int
>(
"Verbosity"
,0);
25
bool
emPhys = p.
getUntrackedParameter
<
bool
>(
"EMPhysics"
,
true
);
26
bool
hadPhys = p.
getUntrackedParameter
<
bool
>(
"HadPhysics"
,
true
);
27
bool
tracking= p.
getParameter
<
bool
>(
"TrackingCut"
);
28
edm::LogInfo
(
"PhysicsList"
) <<
"You are using the simulation engine: "
29
<<
"QBBC \n Flags for EM Physics "
30
<< emPhys <<
" and for Hadronic Physics "
31
<< hadPhys
32
<<
" and tracking cut "
<< tracking;
33
34
if
(emPhys) {
35
// EM Physics
36
RegisterPhysics(
new
G4EmStandardPhysics_option1(ver));
37
38
// Synchroton Radiation & GN Physics
39
G4EmExtraPhysics* gn =
new
G4EmExtraPhysics(ver);
40
RegisterPhysics(gn);
41
}
42
43
// Decays
44
RegisterPhysics(
new
G4DecayPhysics(ver));
45
46
if
(hadPhys) {
47
G4HadronicProcessStore::Instance()->SetVerbose(ver);
48
49
// Hadron Elastic scattering
50
RegisterPhysics(
new
G4HadronElasticPhysicsXS(ver));
51
52
// Hadron Physics
53
RegisterPhysics(
new
G4HadronInelasticQBBC(ver));
54
55
// Stopping Physics
56
RegisterPhysics(
new
G4StoppingPhysics(ver));
57
58
// Ion Physics
59
RegisterPhysics(
new
G4IonPhysics(ver));
60
61
// Neutron tracking cut
62
if
(tracking) {
63
RegisterPhysics(
new
G4NeutronTrackingCut(ver));
64
}
65
}
66
67
// Monopoles
68
RegisterPhysics(
new
CMSMonopolePhysics
(table_,chordFinderSetter_,p));
69
}
70
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
MessageLogger.h
sim::ChordFinderSetter
Definition:
ChordFinderSetter.h:8
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition:
ParticleDataTable.h:8
PhysicsList
Definition:
PhysicsList.h:14
DDMapper< G4LogicalVolume *, DDLogicalPart >
edm::LogInfo
Definition:
MessageLogger.h:214
table_
Table table_
Definition:
ExceptionActions.cc:22
AlCaHLTBitMon_ParallelJobs.p
tuple p
Definition:
AlCaHLTBitMon_ParallelJobs.py:152
CMSMonopolePhysics
Definition:
CMSMonopolePhysics.h:18
CMSMonopolePhysics.h
edm::ParameterSet
Definition:
ParameterSet.h:36
Generated for CMSSW Reference Manual by
1.8.5