1 |
ireid |
1.2 |
import FWCore.ParameterSet.Config as cms
|
2 |
|
|
|
3 |
|
|
process = cms.Process("APE")
|
4 |
|
|
# we need conditions
|
5 |
|
|
#process.load("Configuration.StandardSequences.FrontierConditions_GlobalTag_cff")
|
6 |
|
|
#process.GlobalTag.globaltag = 'IDEAL_V11::All'
|
7 |
|
|
|
8 |
|
|
# include "Configuration/StandardSequences/data/FakeConditions.cff"
|
9 |
|
|
# initialize magnetic field
|
10 |
|
|
#process.load("Configuration.StandardSequences.MagneticField_cff")
|
11 |
|
|
|
12 |
|
|
# ideal geometry and interface
|
13 |
|
|
process.load("Geometry.CMSCommonData.cmsIdealGeometryXML_cfi")
|
14 |
|
|
process.load("Geometry.TrackerNumberingBuilder.trackerNumberingGeometry_cfi")
|
15 |
|
|
# for Muon: include "Geometry/MuonNumbering/data/muonNumberingInitialization.cfi"
|
16 |
|
|
|
17 |
|
|
# track selection for alignment
|
18 |
|
|
#process.load("Alignment.CommonAlignmentProducer.AlignmentTrackSelector_cfi")
|
19 |
|
|
|
20 |
|
|
# Alignment producer
|
21 |
|
|
process.load("Alignment.CommonAlignmentProducer.AlignmentProducer_cff")
|
22 |
|
|
from Alignment.CommonAlignmentAlgorithm.ApeSettingAlgorithm_cfi import *
|
23 |
|
|
process.AlignmentProducer.algoConfig = ApeSettingAlgorithm
|
24 |
ireid |
1.3 |
process.AlignmentProducer.saveApeToDB = False
|
25 |
ireid |
1.2 |
process.AlignmentProducer.algoConfig.readApeFromASCII = True
|
26 |
ireid |
1.3 |
process.AlignmentProducer.algoConfig.setComposites = False
|
27 |
ireid |
1.2 |
process.AlignmentProducer.algoConfig.readLocalNotGlobal = True
|
28 |
ireid |
1.3 |
process.AlignmentProducer.algoConfig.apeASCIIReadFile = 'Alignment/CommonAlignmentAlgorithm/test/ShortLocalInput.txt'
|
29 |
ireid |
1.2 |
process.AlignmentProducer.algoConfig.saveApeToASCII = True
|
30 |
ireid |
1.3 |
process.AlignmentProducer.algoConfig.saveComposites = False
|
31 |
|
|
process.AlignmentProducer.algoConfig.apeASCIISaveFile = 'myLocalDump.txt'
|
32 |
ireid |
1.2 |
|
33 |
|
|
# replace AlignmentProducer.doMisalignmentScenario = true
|
34 |
|
|
# replace AlignmentProducer.applyDbAlignment = true # needs other conditions than fake!
|
35 |
|
|
# Track refitter (adapted to alignment needs)
|
36 |
|
|
#process.load("RecoTracker.TrackProducer.RefitterWithMaterial_cff")
|
37 |
|
|
|
38 |
|
|
# to be refined...
|
39 |
|
|
process.MessageLogger = cms.Service("MessageLogger",
|
40 |
|
|
statistics = cms.untracked.vstring('cout', 'alignment'),
|
41 |
|
|
categories = cms.untracked.vstring('Alignment'),
|
42 |
|
|
cout = cms.untracked.PSet(
|
43 |
|
|
threshold = cms.untracked.string('DEBUG'),
|
44 |
|
|
noLineBreaks = cms.untracked.bool(True)
|
45 |
|
|
),
|
46 |
|
|
alignment = cms.untracked.PSet(
|
47 |
|
|
INFO = cms.untracked.PSet(
|
48 |
|
|
limit = cms.untracked.int32(0)
|
49 |
|
|
),
|
50 |
|
|
noLineBreaks = cms.untracked.bool(True),
|
51 |
|
|
DEBUG = cms.untracked.PSet(
|
52 |
|
|
limit = cms.untracked.int32(0)
|
53 |
|
|
),
|
54 |
|
|
WARNING = cms.untracked.PSet(
|
55 |
|
|
limit = cms.untracked.int32(0)
|
56 |
|
|
),
|
57 |
|
|
ERROR = cms.untracked.PSet(
|
58 |
|
|
limit = cms.untracked.int32(0)
|
59 |
|
|
),
|
60 |
|
|
threshold = cms.untracked.string('INFO'),
|
61 |
|
|
Alignment = cms.untracked.PSet(
|
62 |
|
|
limit = cms.untracked.int32(-1)
|
63 |
|
|
)
|
64 |
|
|
),
|
65 |
|
|
destinations = cms.untracked.vstring('cout', ## .log automatically
|
66 |
|
|
'alignment')
|
67 |
|
|
)
|
68 |
|
|
|
69 |
|
|
process.source = cms.Source("EmptySource")
|
70 |
|
|
process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(0) )
|
71 |
|
|
|
72 |
|
|
from CondCore.DBCommon.CondDBSetup_cfi import *
|
73 |
|
|
process.PoolDBOutputService = cms.Service(
|
74 |
|
|
"PoolDBOutputService",
|
75 |
|
|
CondDBSetup,
|
76 |
|
|
timetype = cms.untracked.string('runnumber'),
|
77 |
|
|
connect = cms.string('sqlite_file:TkAlignmentApe.db'),
|
78 |
|
|
toPut = cms.VPSet(cms.PSet(record = cms.string('TrackerAlignmentErrorRcd'),
|
79 |
|
|
tag = cms.string('testTagAPE')
|
80 |
|
|
)
|
81 |
|
|
)
|
82 |
|
|
)
|
83 |
|
|
|
84 |
|
|
|
85 |
|
|
|
86 |
|
|
# We do not even need a path - producer is called anyway...
|
87 |
|
|
#process.load("RecoVertex.BeamSpotProducer.BeamSpot_cfi")
|
88 |
|
|
#process.p = cms.Path(process.offlineBeamSpot)
|
89 |
|
|
#process.TrackRefitter.src = 'AlignmentTrackSelector'
|
90 |
|
|
#process.TrackRefitter.TrajectoryInEvent = True
|
91 |
|
|
|
92 |
|
|
|