Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
GeneratorInterface
CosmicMuonGenerator
interface
CosMuoGenSource.h
Go to the documentation of this file.
1
#ifndef CosMuoGenSource_h
2
#define CosMuoGenSource_h
3
//
4
// CosmicMuonGenerator by droll (01/FEB/2006)
5
//
6
#include "
GeneratorInterface/CosmicMuonGenerator/interface/CosmicMuonGenerator.h
"
7
#include "HepMC/GenEvent.h"
8
#include "
SimDataFormats/GeneratorProducts/interface/HepMCProduct.h
"
9
#include "
FWCore/Framework/interface/GeneratedInputSource.h
"
10
#include "
FWCore/Framework/interface/InputSourceDescription.h
"
11
#include "
FWCore/Framework/interface/Event.h
"
12
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
13
#include "
FWCore/Utilities/interface/Exception.h
"
14
15
16
namespace
edm
17
{
18
class
CosMuoGenSource
:
public
GeneratedInputSource
{
19
public
:
20
CosMuoGenSource
(
const
ParameterSet
&,
const
InputSourceDescription
& );
21
virtual
~CosMuoGenSource
();
22
23
void
endRun
(
Run
&
r
);
24
25
private
:
26
virtual
bool
produce
(
Event
&
e
);
27
28
void
clear
();
29
// define the configurable generator parameters
30
int32_t
RanS
;
// seed of random number generator (from Framework)
31
double
MinP
;
// min. P [GeV]
32
double
MinP_CMS
;
// min. P at CMS surface [GeV]; default is MinP_CMS=MinP, thus no bias from access-shaft
33
double
MaxP
;
// max. P [GeV]
34
double
MinT
;
// min. theta [deg]
35
double
MaxT
;
// max. theta [deg]
36
double
MinPh
;
// min. phi [deg]
37
double
MaxPh
;
// max. phi [deg]
38
double
MinS
;
// min. t0 [ns]
39
double
MaxS
;
// max. t0 [ns]
40
double
ELSF
;
// scale factor for energy loss
41
double
RTarget
;
// Radius of target-cylinder which cosmics HAVE to hit [mm], default is CMS-dimensions
42
double
ZTarget
;
// z-length of target-cylinder which cosmics HAVE to hit [mm], default is CMS-dimensions
43
double
ZCTarget
;
// z-position of centre of target-cylinder which cosmics HAVE to hit [mm], default is Nominal Interaction Point (=0)
44
bool
TrackerOnly
;
//if set to "true" detector with tracker-only setup is used, so no material or B-field outside is considerd
45
bool
MultiMuon
;
//read in multi-muon events from file instead of generating single muon events
46
std::string
MultiMuonFileName
;
//file containing multi muon events, to be read in
47
int32_t
MultiMuonFileFirstEvent
;
48
int32_t
MultiMuonNmin
;
49
bool
TIFOnly_constant
;
//if set to "true" cosmics can also be generated below 2GeV with unphysical constant energy dependence
50
bool
TIFOnly_linear
;
//if set to "true" cosmics can also be generated below 2GeV with unphysical linear energy dependence
51
bool
MTCCHalf
;
//if set to "true" muons are sure to hit half of CMS important for MTCC,
52
//still material and B-field of whole CMS is considered
53
54
//Plug position (default = on shaft)
55
double
PlugVtx
;
56
double
PlugVtz
;
57
58
//material densities in g/cm^3
59
double
VarRhoAir
;
60
double
VarRhoWall
;
61
double
VarRhoRock
;
62
double
VarRhoClay
;
63
double
VarRhoPlug
;
64
double
ClayLayerWidth
;
//[mm]
65
66
//For upgoing muon generation: Neutrino energy limits
67
double
MinEn
;
68
double
MaxEn
;
69
double
NuPrdAlt
;
70
71
bool
AllMu
;
//Accepting All Muons regardeless of direction
72
73
// external cross section and filter efficiency
74
double
extCrossSect
;
75
double
extFilterEff
;
76
77
78
CosmicMuonGenerator
*
CosMuoGen
;
79
// the event format itself
80
HepMC::GenEvent*
fEvt
;
81
bool
cmVerbosity_
;
82
};
83
}
84
85
#endif
edm::CosMuoGenSource::MultiMuonFileFirstEvent
int32_t MultiMuonFileFirstEvent
Definition:
CosMuoGenSource.h:47
edm::CosMuoGenSource::MinP_CMS
double MinP_CMS
Definition:
CosMuoGenSource.h:32
edm::CosMuoGenSource::TIFOnly_constant
bool TIFOnly_constant
Definition:
CosMuoGenSource.h:49
edm::CosMuoGenSource::ELSF
double ELSF
Definition:
CosMuoGenSource.h:40
edm::CosMuoGenSource::AllMu
bool AllMu
Definition:
CosMuoGenSource.h:71
edm::CosMuoGenSource::MinS
double MinS
Definition:
CosMuoGenSource.h:38
edm::CosMuoGenSource::MultiMuonFileName
std::string MultiMuonFileName
Definition:
CosMuoGenSource.h:46
edm::CosMuoGenSource::PlugVtx
double PlugVtx
Definition:
CosMuoGenSource.h:55
Event.h
edm::CosMuoGenSource::TrackerOnly
bool TrackerOnly
Definition:
CosMuoGenSource.h:44
edm::CosMuoGenSource::MaxP
double MaxP
Definition:
CosMuoGenSource.h:33
edm::CosMuoGenSource::extCrossSect
double extCrossSect
Definition:
CosMuoGenSource.h:74
edm::CosMuoGenSource::VarRhoPlug
double VarRhoPlug
Definition:
CosMuoGenSource.h:63
edm::CosMuoGenSource::VarRhoWall
double VarRhoWall
Definition:
CosMuoGenSource.h:60
edm::CosMuoGenSource::VarRhoAir
double VarRhoAir
Definition:
CosMuoGenSource.h:59
CosmicMuonGenerator.h
edm::CosMuoGenSource::produce
virtual bool produce(Event &e)
Definition:
CosMuoGenSource.cc:127
edm::CosMuoGenSource::MinP
double MinP
Definition:
CosMuoGenSource.h:31
edm::CosMuoGenSource::cmVerbosity_
bool cmVerbosity_
Definition:
CosMuoGenSource.h:81
edm::CosMuoGenSource::VarRhoClay
double VarRhoClay
Definition:
CosMuoGenSource.h:62
edm::CosMuoGenSource
Definition:
CosMuoGenSource.h:18
edm::CosMuoGenSource::MaxPh
double MaxPh
Definition:
CosMuoGenSource.h:37
edm::CosMuoGenSource::extFilterEff
double extFilterEff
Definition:
CosMuoGenSource.h:75
ParameterSet.h
edm::InputSourceDescription
Definition:
InputSourceDescription.h:17
edm::CosMuoGenSource::VarRhoRock
double VarRhoRock
Definition:
CosMuoGenSource.h:61
edm::CosMuoGenSource::MinPh
double MinPh
Definition:
CosMuoGenSource.h:36
edm::CosMuoGenSource::RanS
int32_t RanS
Definition:
CosMuoGenSource.h:30
edm::CosMuoGenSource::MultiMuonNmin
int32_t MultiMuonNmin
Definition:
CosMuoGenSource.h:48
edm::CosMuoGenSource::NuPrdAlt
double NuPrdAlt
Definition:
CosMuoGenSource.h:69
InputSourceDescription.h
edm::CosMuoGenSource::clear
void clear()
Definition:
CosMuoGenSource.cc:125
edm::CosMuoGenSource::CosMuoGenSource
CosMuoGenSource(const ParameterSet &, const InputSourceDescription &)
Definition:
CosMuoGenSource.cc:12
edm::CosMuoGenSource::MinEn
double MinEn
Definition:
CosMuoGenSource.h:67
HepMCProduct.h
edm::CosMuoGenSource::MultiMuon
bool MultiMuon
Definition:
CosMuoGenSource.h:45
edm::CosMuoGenSource::RTarget
double RTarget
Definition:
CosMuoGenSource.h:41
edm::CosMuoGenSource::MaxS
double MaxS
Definition:
CosMuoGenSource.h:39
edm::CosMuoGenSource::CosMuoGen
CosmicMuonGenerator * CosMuoGen
Definition:
CosMuoGenSource.h:78
edm::CosMuoGenSource::ClayLayerWidth
double ClayLayerWidth
Definition:
CosMuoGenSource.h:64
Exception.h
edm::GeneratedInputSource
Definition:
GeneratedInputSource.h:13
edm::CosMuoGenSource::MaxEn
double MaxEn
Definition:
CosMuoGenSource.h:68
edm::CosMuoGenSource::~CosMuoGenSource
virtual ~CosMuoGenSource()
Definition:
CosMuoGenSource.cc:102
alignCSCRings.e
list e
Definition:
alignCSCRings.py:90
edm::CosMuoGenSource::TIFOnly_linear
bool TIFOnly_linear
Definition:
CosMuoGenSource.h:50
GeneratedInputSource.h
edm::CosMuoGenSource::MaxT
double MaxT
Definition:
CosMuoGenSource.h:35
edm::CosMuoGenSource::MinT
double MinT
Definition:
CosMuoGenSource.h:34
alignCSCRings.r
list r
Definition:
alignCSCRings.py:92
edm::CosMuoGenSource::endRun
void endRun(Run &r)
Definition:
CosMuoGenSource.cc:110
edm::ParameterSet
Definition:
ParameterSet.h:35
edm::CosMuoGenSource::ZTarget
double ZTarget
Definition:
CosMuoGenSource.h:42
edm::Event
Definition:
Event.h:50
CosmicMuonGenerator
Definition:
CosmicMuonGenerator.h:31
edm::CosMuoGenSource::fEvt
HepMC::GenEvent * fEvt
Definition:
CosMuoGenSource.h:80
edm::CosMuoGenSource::PlugVtz
double PlugVtz
Definition:
CosMuoGenSource.h:56
edm::CosMuoGenSource::ZCTarget
double ZCTarget
Definition:
CosMuoGenSource.h:43
edm::Run
Definition:
Run.h:33
edm::CosMuoGenSource::MTCCHalf
bool MTCCHalf
Definition:
CosMuoGenSource.h:51
Generated for CMSSW Reference Manual by
1.8.5