Line Code
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 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
import FWCore.ParameterSet.Config as cms

from DQM.EcalCommon.CommonParams_cfi import *

emptyLSLimit = 3

ecalLedTask = cms.untracked.PSet(
    params = cms.untracked.PSet(
        emptyLSLimit = cms.untracked.int32(emptyLSLimit),
        ledWavelengths = ecaldqmLedWavelengths
    ),
    MEs = cms.untracked.PSet(
        CalibStatus = cms.untracked.PSet(
            path = cms.untracked.string('EcalCalibration/EventInfo/Calibration event rate'),
            kind = cms.untracked.string('TProfile'),
            otype = cms.untracked.string('None'),
            btype = cms.untracked.string('User'),
            xaxis = cms.untracked.PSet(
                nbins = cms.untracked.int32(5),
                low = cms.untracked.double(-0.5),
                high = cms.untracked.double(4.5),
                labels = cms.untracked.vstring(['Green Laser','Blue Laser','IR Laser','LED1','LED2'])
            ),
            yaxis = cms.untracked.PSet(
                low = cms.untracked.double(0),
                high = cms.untracked.double(1),
                title = cms.untracked.string('event rate')
            ),
            description = cms.untracked.string('')
        ),
        PNAmplitude = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/PN/Gain16/EELDT PNs amplitude %(sm)s G16 L%(wl)s'),
            otype = cms.untracked.string('EESMMEM'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            kind = cms.untracked.string('TProfile'),
            btype = cms.untracked.string('Crystal'),
            description = cms.untracked.string('Mean led pulse amplitude in the PN diodes. In general, a PN channel is filled only when a led pulse was observed in the crystals that are associated to the diode. When no led signal was observed for longer than ' + str(emptyLSLimit) + ' lumi sections, the channels start to get filled with 0 amplitude, causing the mean to drop.')
        ),
        Occupancy = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EEOccupancyTask/EEOT led digi occupancy%(suffix)s'),
            kind = cms.untracked.string('TH2F'),
            otype = cms.untracked.string('EE2P'),
            btype = cms.untracked.string('SuperCrystal'),
            description = cms.untracked.string('Led signal digi occupancy. Channels are filled whenever the DCC event type is set to LED.')
        ),
        SignalRate = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT signal rate L%(wl)s'),
            kind = cms.untracked.string('TProfile'),
            otype = cms.untracked.string('EE'),
            btype = cms.untracked.string('DCC'),
            description = cms.untracked.string('Fraction of laser events with measurable led pulse.'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            )
        ),
        Shape = cms.untracked.PSet(
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            yaxis = cms.untracked.PSet(
                high = cms.untracked.double(10.0),
                nbins = cms.untracked.int32(10),
                low = cms.untracked.double(0.0)
            ),
            kind = cms.untracked.string('TProfile2D'),
            otype = cms.untracked.string('EESM'),
            btype = cms.untracked.string('SuperCrystal'),
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT shape %(sm)s L%(wl)s'),
            description = cms.untracked.string('Led mean pulse shape. One slice corresponds to one readout tower (5x5 crystals). In general, a slice is filled only when a led pulse was observed in the tower. When no led signal was observed for longer than ' + str(emptyLSLimit) + ' lumi sections, the slices start to get filled with 0 amplitude, causing the shape to flatten.')
        ),
        Amplitude = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT amplitude %(sm)s L%(wl)s'),
            otype = cms.untracked.string('EESM'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            kind = cms.untracked.string('TProfile2D'),
            btype = cms.untracked.string('Crystal'),
            description = cms.untracked.string('2D distribution of the mean led amplitude. In general, a channel is filled only when a led pulse was observed in it. When no led signal was observed for longer than ' + str(emptyLSLimit) + ' lumi sections, the channels start to get filled with 0 amplitude, causing the mean to drop.')
        ),
        AOverP = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT amplitude over PN %(sm)s L%(wl)s'),
            otype = cms.untracked.string('EESM'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            kind = cms.untracked.string('TProfile2D'),
            btype = cms.untracked.string('Crystal'),
            description = cms.untracked.string('2D distribution of the mean APD/PN value (event mean of per-event ratio).')
        ),
        Timing = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT timing %(sm)s L%(wl)s'),
            otype = cms.untracked.string('EESM'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            kind = cms.untracked.string('TProfile2D'),
            btype = cms.untracked.string('Crystal'),
            description = cms.untracked.string('2D distribution of the mean led timing. Z scale is in LHC clocks. Due to the difference in pulse shape between led and physics events, fit-based reconstruction is not completely reliable in extracting the timing. In general, a channel is filled only when a led pulse was observed in it. When no led signal was observed for longer than ' + str(emptyLSLimit) + ' lumi sections, the channels start to get filled with 0 amplitude, causing the timing to spread randomly.')
        ),
        AmplitudeSummary = cms.untracked.PSet(
            path = cms.untracked.string('EcalEndcap/EELedTask/Led%(wl)s/EELDT amplitude map L%(wl)s%(suffix)s'),
            otype = cms.untracked.string('EE2P'),
            multi = cms.untracked.PSet(
                wl = ecaldqmLedWavelengths
            ),
            kind = cms.untracked.string('TProfile2D'),
            btype = cms.untracked.string('SuperCrystal'),
            description = cms.untracked.string('2D distribution of the mean led amplitude. In general, a channel is filled only when a led pulse was observed in it. When no led signal was observed for longer than ' + str(emptyLSLimit) + ' lumi sections, the channels start to get filled with 0 amplitude, causing the mean to drop.')
        )
    )
)