EcalTimingCalibProducer Class Reference

Plugin that derives the calibration constants. More...

#include <EcalTiming/EcalTiming/plugins/EcalTimingCalibProducer.h>

Collaboration diagram for EcalTimingCalibProducer:
Collaboration graph
[legend]

List of all members.

Private Member Functions

void FillCalibrationCorrectionHists (EcalTimeCalibrationMap::const_iterator cal_itr)
 fill histograms with the measured shifts (that will become -corrections for the next step)
bool addRecHit (const EcalRecHit &recHit, EventTimeMap &eventTimeMap_)
 If recHit passes the selection it is added to the list of recHits to be used for calibration.
void plotRecHit (const EcalTimingEvent &recHit)
 Adds the recHit to the per Event histograms.
EcalTimingEvent correctGlobalOffset (const EcalTimingEvent &ev, int splashDir, float bunchCorr)

Private Attributes

EcalTimeCalibrationMap _timeCalibMap
 calibration map: contains the time shift for each crystal
EventTimeMap _eventTimeMap
 container of recHits passing selection in the event (reset at each event)
EcalCrystalTimingCalibration timeEEP
 global time calibration of EE+
EcalCrystalTimingCalibration timeEEM
 global time calibration of EE-
EcalCrystalTimingCalibration timeEB
 global time calibration of EB
EcalCrystalTimingCalibration timeEBRing
 global time calibration of one EB ring
EcalCrystalTimingCalibration timeEEmRing
 global time calibration of one EE- ring
EcalCrystalTimingCalibration timeEEpRing
 global time calibration of one EE+ ring
EcalCrystalTimingCalibration timeEBCRYex
 global time calibration of one EB channel
EcalCrystalTimingCalibration timeEECRYex
 global time calibration of one EE channel
EcalTimeCalibConstants _timeCalibConstants
 container of calibrations updated iter by iter
TProfile2D * EneMapEEM_
 Using TProfile2D so we don't paint empty bins.
Input Parameters

Parameters defined in the config file _cfi,py



unsigned int _maxLoop
 maximum number of loops for intercalibration
bool _isSplash
 flag to activate for splash analysis
bool _makeEventPlots
 flag for making plots for each event (meant for splashes)
edm::InputTag _ecalRecHitsEBTAG
 input collection
edm::InputTag _ecalRecHitsEETAG
 input collection
std::vector< int > _recHitFlags
 vector containing list of valid rec hit flags for calibration
unsigned int _recHitMin
 require at least this many rec hits to count the event
double _minRecHitEnergy
 minimum energy for the recHit to be considered for timing studies
double _minRecHitEnergyStep
 at each iteration the code increases the minimum energy required for the calibration
unsigned int _minEntries
 require a minimum number of entries in a ring to do averages
float _globalOffset
 time to subtract from every event
bool _produceNewCalib
 true if you don't want to use the values in DB and what to extract new absolute calibrations, if false iteration does not work
std::string _outputDumpFileName
 name of the output file for the calibration constants' dump
float _noiseRMSThreshold
float _noiseTimeThreshold
float _maxSkewnessForDump

Detailed Description

This plugin runs over the events, selects the recHits according to the criteria defined in addRecHit

Todo:
Exit condition based on convergence

Member Function Documentation

bool EcalTimingCalibProducer::addRecHit ( const EcalRecHit &  recHit,
EventTimeMap &  eventTimeMap_ 
) [private]

The recHit is used (accepted) if:

  • recHit flag in the list of _recHitFlags defined in the config file
  • recHit energy in EB > _minRecHitEnergy defined in the config file
  • recHit energy in EE is x2 the threshold of EB
  • at each iteration the recHit threshold is raised by _minRecHitEnergyStep If the recHit is used, the time information is added to _eventTimeMap

References _eventTimeMap, _minRecHitEnergyStep, and _recHitFlags.

EcalTimingEvent EcalTimingCalibProducer::correctGlobalOffset ( const EcalTimingEvent te,
int  splashDir,
float  bunchCorr 
) [private]

Returns an EcalTimingEvent with a new time, which has been adjusted so that the upstream endcap is 0.

Parameters:
[in] te EcalTimingEvent
[in] splashDir integer indicating the beam direction in splash events
[in] bunchCorr float correction for global event timing
[out] c corrected timing event

References _globalOffset.

void EcalTimingCalibProducer::plotRecHit ( const EcalTimingEvent recHit  )  [private]

fills the energy map and timing maps for EB, EE+ and EE-


The documentation for this class was generated from the following files:
 All Classes Functions Variables

Generated on 24 Jun 2015 for EcalTiming by  doxygen 1.6.1