SimG4Core
PhysicsLists
plugins
FTFPCMS_BERT_EMZ.cc
Go to the documentation of this file.
1
#include "
FTFPCMS_BERT_EMZ.h
"
2
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
3
#include "
SimG4Core/PhysicsLists/interface/CMSEmStandardPhysicsEMZ.h
"
4
#include "
SimG4Core/PhysicsLists/interface/CMSHadronPhysicsFTFP_BERT.h
"
5
6
#include "G4DecayPhysics.hh"
7
#include "G4EmStandardPhysics_option4.hh"
8
#include "G4EmExtraPhysics.hh"
9
#include "G4IonPhysics.hh"
10
#include "G4StoppingPhysics.hh"
11
#include "G4HadronElasticPhysics.hh"
12
13
FTFPCMS_BERT_EMZ::FTFPCMS_BERT_EMZ
(
const
edm::ParameterSet
&
p
) :
PhysicsList
(
p
) {
14
int
ver =
p
.getUntrackedParameter<
int
>(
"Verbosity"
, 0);
15
bool
emPhys =
p
.getUntrackedParameter<
bool
>(
"EMPhysics"
,
true
);
16
bool
hadPhys =
p
.getUntrackedParameter<
bool
>(
"HadPhysics"
,
true
);
17
double
minFTFP =
p
.getParameter<
double
>(
"EminFTFP"
) *
CLHEP::GeV
;
18
double
maxBERT =
p
.getParameter<
double
>(
"EmaxBERT"
) *
CLHEP::GeV
;
19
double
maxBERTpi =
p
.getParameter<
double
>(
"EmaxBERTpi"
) *
CLHEP::GeV
;
20
edm::LogVerbatim
(
"PhysicsList"
) <<
"CMS Physics List FTFP_BERT_EMZ: "
21
<<
"\n Flags for EM Physics: "
<< emPhys <<
"; Hadronic Physics: "
<< hadPhys
22
<<
"\n transition energy Bertini/FTFP from "
<< minFTFP /
CLHEP::GeV
<<
" to "
23
<< maxBERT /
CLHEP::GeV
<<
":"
<< maxBERTpi /
CLHEP::GeV
<<
" GeV"
;
24
25
if
(emPhys) {
26
// EM Physics
27
RegisterPhysics(
new
CMSEmStandardPhysicsEMZ
(ver));
28
29
// Synchroton Radiation & GN Physics
30
G4EmExtraPhysics* gn =
new
G4EmExtraPhysics(ver);
31
RegisterPhysics(gn);
32
}
33
34
// Decays
35
this->RegisterPhysics(
new
G4DecayPhysics(ver));
36
37
if
(hadPhys) {
38
// Hadron Elastic scattering
39
RegisterPhysics(
new
G4HadronElasticPhysics(ver));
40
41
// Hadron Physics
42
RegisterPhysics(
new
CMSHadronPhysicsFTFP_BERT
(minFTFP, maxBERT, maxBERTpi, minFTFP, maxBERT));
43
44
// Stopping Physics
45
RegisterPhysics(
new
G4StoppingPhysics(ver));
46
47
// Ion Physics
48
RegisterPhysics(
new
G4IonPhysics(ver));
49
}
50
}
FTFPCMS_BERT_EMZ::FTFPCMS_BERT_EMZ
FTFPCMS_BERT_EMZ(const edm::ParameterSet &p)
Definition:
FTFPCMS_BERT_EMZ.cc:13
MessageLogger.h
CMSHadronPhysicsFTFP_BERT.h
CMSEmStandardPhysicsEMZ
Definition:
CMSEmStandardPhysicsEMZ.h:15
CMSEmStandardPhysicsEMZ.h
PhysicsList
Definition:
PhysicsList.h:7
edm::ParameterSet
Definition:
ParameterSet.h:47
AlCaHLTBitMon_ParallelJobs.p
def p
Definition:
AlCaHLTBitMon_ParallelJobs.py:153
FTFPCMS_BERT_EMZ.h
GeV
const double GeV
Definition:
MathUtil.h:16
CMSHadronPhysicsFTFP_BERT
Definition:
CMSHadronPhysicsFTFP_BERT.h:23
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition:
MessageLogger.h:128
Generated for CMSSW Reference Manual by
1.8.16