Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
SimG4Core
PhysicsLists
plugins
QBBCCMS.cc
Go to the documentation of this file.
1
#include "QBBCCMS.hh"
2
#include "
SimG4Core/PhysicsLists/interface/CMSEmStandardPhysics.h
"
3
#include "
SimG4Core/PhysicsLists/interface/CMSMonopolePhysics.h
"
4
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
5
6
#include "G4DecayPhysics.hh"
7
#include "G4EmExtraPhysics.hh"
8
#include "G4QStoppingPhysics.hh"
9
#include "G4LHEPStoppingPhysics.hh"
10
11
#include "G4DataQuestionaire.hh"
12
#include "G4HadronInelasticQBBC.hh"
13
#include "G4HadronInelasticQLHEP.hh"
14
#include "G4HadronElasticPhysics.hh"
15
#include "G4HadronDElasticPhysics.hh"
16
#include "G4HadronHElasticPhysics.hh"
17
#include "G4IonBinaryCascadePhysics.hh"
18
#include "G4IonPhysics.hh"
19
#include "G4NeutronTrackingCut.hh"
20
21
QBBCCMS::QBBCCMS(
G4LogicalVolumeToDDLogicalPartMap
&
map
,
22
const
HepPDT::ParticleDataTable
*
table_
,
23
sim::FieldBuilder
*fieldBuilder_,
24
const
edm::ParameterSet
&
p
) :
PhysicsList
(map, table_, fieldBuilder_, p) {
25
26
G4DataQuestionaire it(photon);
27
28
int
ver = p.
getUntrackedParameter
<
int
>(
"Verbosity"
,0);
29
bool
emPhys = p.
getUntrackedParameter
<
bool
>(
"EMPhysics"
,
true
);
30
bool
hadPhys = p.
getUntrackedParameter
<
bool
>(
"HadPhysics"
,
true
);
31
bool
ftf = p.
getUntrackedParameter
<
bool
>(
"FlagFTF"
,
false
);
32
bool
bert = p.
getUntrackedParameter
<
bool
>(
"FlagBERT"
,
false
);
33
bool
chips = p.
getUntrackedParameter
<
bool
>(
"FlagCHIPS"
,
false
);
34
bool
hp = p.
getUntrackedParameter
<
bool
>(
"FlagHP"
,
false
);
35
bool
glauber = p.
getUntrackedParameter
<
bool
>(
"FlagGlauber"
,
false
);
36
bool
tracking= p.
getParameter
<
bool
>(
"TrackingCut"
);
37
edm::LogInfo
(
"PhysicsList"
) <<
"You are using the simulation engine: "
38
<<
"QBBC 3.1 with Flags for EM Physics "
39
<< emPhys <<
" and for Hadronic Physics "
40
<< hadPhys <<
" Flags for FTF "
<< ftf
41
<<
" BERT "
<< bert <<
" CHIPS "
<< chips
42
<<
" HP "
<< hp <<
" Glauber "
<< glauber
43
<<
" and tracking cut "
<< tracking;
44
45
if
(emPhys) {
46
// EM Physics
47
RegisterPhysics(
new
CMSEmStandardPhysics
(
"standard EM"
,ver));
48
49
// Synchroton Radiation & GN Physics
50
RegisterPhysics(
new
G4EmExtraPhysics(
"extra EM"
));
51
}
52
53
// Decays
54
RegisterPhysics(
new
G4DecayPhysics(
"decay"
,ver));
55
56
if
(hadPhys) {
57
// Hadron Elastic scattering
58
RegisterPhysics(
new
G4HadronElasticPhysics(
"hElastic"
,ver,
false
,
true
));
59
60
// Hadron Physics
61
RegisterPhysics(
new
G4HadronInelasticQBBC(
"inelastic"
, ver, ftf,
62
bert, chips, hp, glauber));
63
64
// Stopping Physics
65
RegisterPhysics(
new
G4QStoppingPhysics(
"stopping"
,ver));
66
67
// Ion Physics
68
RegisterPhysics(
new
G4IonBinaryCascadePhysics(
"ionBIC"
));
69
70
// Neutron tracking cut
71
if
(tracking)
72
RegisterPhysics(
new
G4NeutronTrackingCut(
"Neutron tracking cut"
, ver));
73
}
74
75
// Monopoles
76
RegisterPhysics(
new
CMSMonopolePhysics
(table_,fieldBuilder_,p));
77
}
78
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
MessageLogger.h
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition:
ParticleDataTable.h:9
CMSEmStandardPhysics
Definition:
CMSEmStandardPhysics.h:7
sim::FieldBuilder
Definition:
FieldBuilder.h:19
Association.map
dictionary map
Definition:
Association.py:205
PhysicsList
Definition:
PhysicsList.h:13
DDMapper< G4LogicalVolume *, DDLogicalPart >
CMSEmStandardPhysics.h
edm::LogInfo
Definition:
MessageLogger.h:214
AlCaHLTBitMon_ParallelJobs.p
tuple p
Definition:
AlCaHLTBitMon_ParallelJobs.py:152
CMSMonopolePhysics
Definition:
CMSMonopolePhysics.h:15
CMSMonopolePhysics.h
edm::ParameterSet
Definition:
ParameterSet.h:35
table_
Table table_
Definition:
Actions.cc:22
Generated for CMSSW Reference Manual by
1.8.5