Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@
###########################################
_fastSim_localrecoTask = localrecoTask.copyAndExclude([
castorreco,
totemRPLocalReconstructionTask,totemTimingLocalReconstructionTask,ctppsDiamondLocalReconstructionTask,
totemRPLocalReconstructionTask,totemTimingLocalReconstructionTask,diamondSampicLocalReconstructionTask,ctppsDiamondLocalReconstructionTask,
ctppsLocalTrackLiteProducer,ctppsPixelLocalReconstructionTask,ctppsProtons,
trackerlocalrecoTask
])
Expand Down
761 changes: 761 additions & 0 deletions DQM/CTPPS/plugins/DiamondSampicDQMSource.cc

Large diffs are not rendered by default.

23 changes: 19 additions & 4 deletions DQM/CTPPS/python/ctppsDQM_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@

from DQM.CTPPS.ctppsDiamondDQMSource_cfi import *

from DQM.CTPPS.diamondSampicDQMSource_cfi import *

from DQM.CTPPS.totemTimingDQMSource_cfi import *

from DQM.CTPPS.ctppsPixelDQMSource_cfi import *
Expand All @@ -23,7 +25,7 @@
_ctppsDQMOnlineSource = cms.Sequence(
ctppsPixelDQMSource
+ ctppsDiamondDQMSource
+ totemTimingDQMSource
+ diamondSampicDQMSourceOnline
+ ctppsCommonDQMSourceOnline
)

Expand All @@ -35,7 +37,7 @@
totemRPDQMSource
+ ctppsPixelDQMSource
+ ctppsDiamondDQMSource
+ totemTimingDQMSource
+ diamondSampicDQMSourceOnline
+ ctppsCommonDQMSourceOnline
+ elasticPlotDQMSource
)
Expand All @@ -52,19 +54,32 @@
#Check if perLSsaving is enabled to mask MEs vs LS
from Configuration.ProcessModifiers.dqmPerLSsaving_cff import dqmPerLSsaving
dqmPerLSsaving.toModify(ctppsDiamondDQMSource, perLSsaving=True)
dqmPerLSsaving.toModify(totemTimingDQMSource, perLSsaving=True)
dqmPerLSsaving.toModify(diamondSampicDQMSourceOffline, perLSsaving=True)
dqmPerLSsaving.toModify(ctppsCommonDQMSourceOffline, perLSsaving=True)

_ctppsDQMOfflineSource = cms.Sequence(
ctppsPixelDQMOfflineSource
+ ctppsDiamondDQMSource
+ totemTimingDQMSource
+ diamondSampicDQMSourceOffline
+ ctppsCommonDQMSourceOffline
)

_ctppsDQMOfflineHarvest = cms.Sequence(
)

from Configuration.Eras.Modifier_ctpps_2018_cff import ctpps_2018
ctpps_2018.toReplaceWith(
_ctppsDQMOfflineSource,
cms.Sequence(
ctppsPixelDQMOfflineSource
+ ctppsDiamondDQMSource
+ totemTimingDQMSource
+ ctppsCommonDQMSourceOffline
)

)


# the actually used sequences must be empty for pre-PPS data
from Configuration.Eras.Modifier_ctpps_cff import ctpps

Expand Down
28 changes: 28 additions & 0 deletions DQM/CTPPS/python/diamondSampicDQMSource_cfi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import FWCore.ParameterSet.Config as cms

from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
diamondSampicDQMSourceOnline = DQMEDAnalyzer('DiamondSampicDQMSource',
tagDigi = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagFEDInfo = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagRecHits = cms.InputTag("totemTimingRecHits"),
tagTracks = cms.InputTag("diamondSampicLocalTracks"),
tagLocalTrack = cms.InputTag("totemRPLocalTrackFitter"),

samplesForNoise = cms.untracked.uint32(6),

verbosity = cms.untracked.uint32(10),
plotOnline=cms.untracked.bool(True)
)

diamondSampicDQMSourceOffline = DQMEDAnalyzer('DiamondSampicDQMSource',
tagDigi = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagFEDInfo = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagRecHits = cms.InputTag("totemTimingRecHits"),
tagTracks = cms.InputTag("diamondSampicLocalTracks"),
tagLocalTrack = cms.InputTag("totemRPLocalTrackFitter"),

samplesForNoise = cms.untracked.uint32(6),

verbosity = cms.untracked.uint32(10),
plotOnline=cms.untracked.bool(False)
)
3 changes: 3 additions & 0 deletions RecoPPS/Configuration/python/RecoCTPPS_EventContent_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@
'keep TotemVFATStatusedmDetSetVector_ctppsDiamondRawToDigi_*_*',
'keep CTPPSDiamondRecHitedmDetSetVector_ctppsDiamondRecHits_*_*',
'keep CTPPSDiamondLocalTrackedmDetSetVector_ctppsDiamondLocalTracks_*_*',

#diamond sampic
'keep TotemTimingLocalTrackedmDetSetVector_diamondSampicLocalTracks_*_*',

# TOTEM timing
'keep TotemTimingDigiedmDetSetVector_totemTimingRawToDigi_*_*',
Expand Down
17 changes: 16 additions & 1 deletion RecoPPS/Configuration/python/recoCTPPS_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,25 @@
recoCTPPSTask = cms.Task(
totemRPLocalReconstructionTask ,
ctppsDiamondLocalReconstructionTask ,
totemTimingLocalReconstructionTask ,
diamondSampicLocalReconstructionTask ,
ctppsPixelLocalReconstructionTask ,
ctppsLocalTrackLiteProducer ,
ctppsProtons
)

from Configuration.Eras.Modifier_ctpps_2018_cff import ctpps_2018
ctpps_2018.toReplaceWith(
recoCTPPSTask,
cms.Task(
totemRPLocalReconstructionTask ,
ctppsDiamondLocalReconstructionTask ,
totemTimingLocalReconstructionTask ,
ctppsPixelLocalReconstructionTask ,
ctppsLocalTrackLiteProducer ,
ctppsProtons
)

)


recoCTPPS = cms.Sequence(recoCTPPSTask)
45 changes: 41 additions & 4 deletions RecoPPS/Local/test/totemTiming_digiConverter_reco_cfg.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
process.load('Configuration.StandardSequences.FrontierConditions_GlobalTag_cff')

from Configuration.AlCa.GlobalTag import GlobalTag
process.GlobalTag = GlobalTag(process.GlobalTag, 'auto:run2_data', '')
process.GlobalTag = GlobalTag(process.GlobalTag, '113X_dataRun3_Prompt_Candidate_2021_08_24_17_11_47')

################
#digi converter
Expand Down Expand Up @@ -68,24 +68,61 @@
#load calibrations from json
#process.totemTimingRecHits.timingCalibrationTag= cms.string('ppsTimingCalibrationESSource:TotemTimingCalibration')
#process.ppsTimingCalibrationESSource = cms.ESSource('PPSTimingCalibrationESSource',
# calibrationFile = cms.FileInPath('RecoPPS/Local/data/timing_offsets_ufsd_2018.dec18.cal.json'),#calibration file does not yet exist in db
# calibrationFile = cms.FileInPath('RecoPPS/Local/data/1plane_2.json'),#calibration file does not yet exist in db
# subDetector = cms.uint32(1),
# appendToDataLabel = cms.string('TotemTimingCalibration')
#)

from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer
process.diamondSampicDQMSource = DQMEDAnalyzer('DiamondSampicDQMSource',
tagDigi = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagFEDInfo = cms.InputTag("totemTimingRawToDigi", "TotemTiming"),
tagRecHits = cms.InputTag("totemTimingRecHits"),
tagTracks = cms.InputTag("diamondSampicLocalTracks"),
tagLocalTrack = cms.InputTag("totemRPLocalTrackFitter"),

minimumStripAngleForTomography = cms.double(0),
maximumStripAngleForTomography = cms.double(1),
samplesForNoise = cms.untracked.uint32(6),

verbosity = cms.untracked.uint32(10),
plotOnline=cms.untracked.bool(False)
)
# load DQM framework
process.load("DQM.Integration.config.environment_cfi")
process.dqmEnv.subSystemFolder = "CTPPS"
process.dqmEnv.eventInfoFolder = "EventInfo"
process.dqmSaver.path = ""
process.dqmSaver.tag = "CTPPS"


process.totemTimingRecHits.mergeTimePeaks= cms.bool(False)

#process.load('CondCore.CondDB.CondDB_cfi')
#process.CondDB.connect = 'sqlite_file:ppsDiamondSampicTiming_calibration.sqlite' # SQLite input
#process.PoolDBESSource = cms.ESSource('PoolDBESSource',
# process.CondDB,
# DumpStats = cms.untracked.bool(True),
# toGet = cms.VPSet(
# cms.PSet(
# record = cms.string('PPSTimingCalibrationRcd'),
# tag = cms.string('DiamondSampicCalibration')
# )
# )
# )
process.totemTimingRecHits.timingCalibrationTag= cms.string('GlobalTag:DiamondSampicCalibration')

process.out = cms.OutputModule("PoolOutputModule",
fileName = cms.untracked.string('file:diamondSampicReco.root')

)

process.p = cms.Path(process.totemTimingRawToDigi*
process.diamondSampicLocalReconstruction
process.diamondSampicLocalReconstruction*
process.diamondSampicDQMSource
)

process.outpath = cms.EndPath(process.out)
process.outpath = cms.EndPath(process.out* process.dqmEnv *
process.dqmSaver)