Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
SimG4Core
PhysicsLists
plugins
QGSPCMS_FTFP_BERT_EML_New.cc
Go to the documentation of this file.
1
#include "QGSPCMS_FTFP_BERT_EML_New.hh"
2
#include "
SimG4Core/PhysicsLists/interface/CMSEmStandardPhysicsLPM.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 "G4IonPhysics.hh"
9
#include "G4QStoppingPhysics.hh"
10
#include "G4HadronElasticPhysics.hh"
11
#include "G4NeutronTrackingCut.hh"
12
13
#include "G4DataQuestionaire.hh"
14
#include "HadronPhysicsQGSP_FTFP_BERT.hh"
15
16
#include <string>
17
18
QGSPCMS_FTFP_BERT_EML_New::QGSPCMS_FTFP_BERT_EML_New(
G4LogicalVolumeToDDLogicalPartMap
&
map
,
19
const
HepPDT::ParticleDataTable
*
table_
,
20
sim::FieldBuilder
*fieldBuilder_,
21
const
edm::ParameterSet
&
p
)
22
:
PhysicsList
(map, table_, fieldBuilder_, p) {
23
24
G4DataQuestionaire it(photon);
25
26
int
ver = p.
getUntrackedParameter
<
int
>(
"Verbosity"
,0);
27
bool
emPhys = p.
getUntrackedParameter
<
bool
>(
"EMPhysics"
,
true
);
28
bool
hadPhys = p.
getUntrackedParameter
<
bool
>(
"HadPhysics"
,
true
);
29
bool
tracking= p.
getParameter
<
bool
>(
"TrackingCut"
);
30
edm::LogInfo
(
"PhysicsList"
) <<
"You are using the simulation engine: "
31
<<
"QGSP_FTFP_BERT_EML_New with LPM version of EM Physics "
;
32
33
if
(emPhys) {
34
// EM Physics
35
RegisterPhysics(
new
CMSEmStandardPhysicsLPM
(
"standard EM EML_LPM"
,ver));
36
37
// Synchroton Radiation & GN Physics
38
RegisterPhysics(
new
G4EmExtraPhysics(
"extra EM"
));
39
}
40
41
// Decays
42
RegisterPhysics(
new
G4DecayPhysics(
"decay"
,ver) );
43
44
if
(hadPhys) {
45
// Hadron Elastic scattering
46
RegisterPhysics(
new
G4HadronElasticPhysics(
"elastic"
,ver,
false
));
47
48
// Hadron Physics
49
G4bool quasiElastic=
true
;
50
RegisterPhysics(
new
HadronPhysicsQGSP_FTFP_BERT(
"hadron"
,quasiElastic));
51
52
// Stopping Physics
53
RegisterPhysics(
new
G4QStoppingPhysics(
"stopping"
));
54
55
// Ion Physics
56
RegisterPhysics(
new
G4IonPhysics(
"ion"
));
57
58
// Neutron tracking cut
59
if
(tracking)
60
RegisterPhysics(
new
G4NeutronTrackingCut(
"Neutron tracking cut"
, ver));
61
}
62
63
// Monopoles
64
RegisterPhysics(
new
CMSMonopolePhysics
(table_,fieldBuilder_,p));
65
}
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
CMSEmStandardPhysicsLPM.h
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
MessageLogger.h
ParticleDataTable
HepPDT::ParticleDataTable ParticleDataTable
Definition:
ParticleDataTable.h:9
sim::FieldBuilder
Definition:
FieldBuilder.h:19
PhysicsList
Definition:
PhysicsList.h:13
python.multivaluedict.map
def map
Definition:
multivaluedict.py:125
DDMapper< G4LogicalVolume *, DDLogicalPart >
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
CMSEmStandardPhysicsLPM
Definition:
CMSEmStandardPhysicsLPM.h:8
Generated for CMSSW Reference Manual by
1.8.5