1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
import FWCore.ParameterSet.Config as cms
import FWCore.ParameterSet.VarParsing as VarParsing
import os
hjenergy = os.getenv("HJENERGY", "0")
if hjenergy in "0":
options = VarParsing.VarParsing("analysis")
options.register("hjenergy", "999", VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, "Beam energy")
options.parseArguments()
hjenergy = options.hjenergy
if hjenergy in "999":
raise RuntimeError("Stopping cmsRun testHydjet.py: this macro needs hjenergy=5362 command line parameter")
process = cms.Process("ANA")
process.load("SimGeneral.HepPDTESSource.pythiapdt_cfi")
process.load("Configuration.StandardSequences.Services_cff")
process.load("GeneratorInterface.HydjetInterface.hydjetDefault_cfi")
process.RandomNumberGeneratorService = cms.Service("RandomNumberGeneratorService",
generator = cms.PSet(
initialSeed = cms.untracked.uint32(123456789),
engineName = cms.untracked.string('HepJamesRandom')
)
)
process.maxEvents = cms.untracked.PSet(
input = cms.untracked.int32(-1)
)
process.ana = cms.EDAnalyzer('HydjetAnalyzer',
doHistos = cms.untracked.bool(True),
userHistos = cms.untracked.bool(False),
# Settings for USER histos
uStatus = cms.untracked.int32(2), # 1 - it's 1,2,3,4,5 of Pythia status; 2 - 11,12,13,14,15; 3 - All
uPDG_1 = cms.untracked.int32(443),
uPDG_2 = cms.untracked.int32(-443),
### Eta cut for pT dep. dist.
uPTetaCut = cms.untracked.double(4.),
dPTetaCut = cms.untracked.double(2.5),
### Vectors of bins borders (when 0 - uniform bins would be used)
PtBins = cms.untracked.vdouble(0.,1.,2.,3.,4.,5.,6.,8.,12.,16.,20.),
EtaBins = cms.untracked.vdouble(0.),
PhiBins = cms.untracked.vdouble(0.),
v2EtaBins = cms.untracked.vdouble(0.),
v2PtBins = cms.untracked.vdouble(0.,1.,2.,3.,4.,6.,8.,12.,16.,20.),
### Settings for uniform bins
nintPt = cms.untracked.int32(1000),
nintEta = cms.untracked.int32(100),
nintPhi = cms.untracked.int32(100),
nintV2pt = cms.untracked.int32(100),
nintV2eta = cms.untracked.int32(100),
minPt = cms.untracked.double(0.),
minEta = cms.untracked.double(-10.),
minPhi = cms.untracked.double(-3.14159265358979),
minV2pt = cms.untracked.double(0.),
minV2eta = cms.untracked.double(-10.),
maxPt = cms.untracked.double(100.),
maxEta = cms.untracked.double(10.),
maxPhi = cms.untracked.double(3.14159265358979),
maxV2pt = cms.untracked.double(10.),
maxV2eta = cms.untracked.double(10.),
)
#process.generator.signalVtx = cms.untracked.vdouble(0.,0.,0.,0.) # Signal event vertex option, to set it by hand (instead of smearing)
process.TFileService = cms.Service('TFileService',
fileName = cms.string('Hydjet.root')
)
process.p = cms.Path(process.generator*process.ana)
|