Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
src
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