![]() |
|
|||
File indexing completed on 2024-04-06 12:26:45
0001 import FWCore.ParameterSet.Config as cms 0002 0003 #Originally the Filter was developed to identify two different types of problematic events 0004 #- energy deposits near an ECAL gap/crack region 0005 #- energy deposit near dead/masked ECAL cells 0006 0007 #In this version the EcalAnomalous EventFilter is summing up the boundary energy around dead/masked cells (all amasked cells:single, 1x5, 5x5). The boundary energy above a given threshold (configure:cutBoundEnergyDeadCellsEB/EE) is written into a summary object (DataFormats/AnomalousEcalDataFormats/interface/AnomalousECALVariables.h) together with the information of the size of the dead cell cluster. To identify problematic events the AnomalousECALVariables class 'isEcalNoise()' function returns a flag based on the stored boundary energies. Currently the function returns true if at least 1 dead cell cluster with size>=24 was filtered out in this EcalDeadCellBoundaryEnergyFilter, no additional energy cut is applied to the threshold configured below. Morde details:see AnomalousECALVariables.h. 0008 0009 #The EcalDeadCellBoundaryEnergyFilter can be run in different modes, the two needed for dead Ecal studies are: 0010 #1. "TuningMode":summary object is written into the event and can be accessed later in the process. 0011 #2. "FilterMode":the summary object is not written to the event, the filter returns the value determined in AnomalousECALVariables.isEcalNoise()--->Events affected by energy deposits in dead cells do NOT pass 0012 #current default cut: >5 GeV boundary energy 0013 #To configure the mode, please adapt FilterAlgo accordingly. 0014 #For Filter Mode events are rejected if a dead cluster has a boundary energy of at least 'cutBoundEnergyDeadCellsEB/EE' 0015 0016 EcalDeadCellBoundaryEnergyFilter = cms.EDFilter('EcalDeadCellBoundaryEnergyFilter', 0017 recHitsEB = cms.InputTag("reducedEcalRecHitsEB"), 0018 recHitsEE = cms.InputTag("reducedEcalRecHitsEE"), 0019 FilterAlgo= cms.untracked.string("FilterMode"), 0020 #### the following parameters skimGap, skimDead are only used in TuningMode 0021 #### switch bool to True to turn on filter: only Events with chosen signature pass, otherwise all events pass 0022 skimGap = cms.untracked.bool(False), 0023 skimDead = cms.untracked.bool(False), 0024 #### cuts for finding energy deposit near Gaps 0025 ## min. boundary energy (RecHit next to Gap) (abs value) 0026 cutBoundEnergyGapEE=cms.untracked.double(100), 0027 cutBoundEnergyGapEB=cms.untracked.double(100), 0028 #### cuts for finding energy deposit near dead region 0029 ## min. boundary energy (RecHits next to Dead Region) (abs value) 0030 cutBoundEnergyDeadCellsEB=cms.untracked.double(10), 0031 cutBoundEnergyDeadCellsEE=cms.untracked.double(10), 0032 #### Limit complete filter processing to EE or EB, if both are 'True' nothing will happen in the filter at all... 0033 limitFilterToEB=cms.untracked.bool(False), 0034 limitFilterToEE=cms.untracked.bool(False), 0035 #### Limit dead cells to channel status, only rec hits around channel with channel status given are 0036 #### considered. E.g to sum only energy around dead cells with stati 12 & 14 in EB, but all dead cells 0037 #### in EB, do: 0038 #### limitDeadCellToChannelStatusEB=cms.vint32(12,14) 0039 #### limitDeadCellToChannelStatusEE=cms.vint32() 0040 #### for negative values all status>=abs(given value) are used (e.g. limitDeadCellToChannelStatusEE=cms.vint32(-13)--->limitDeadCellToChannelStatusEE=cms.vint32(13,14,15,16,17,...)) 0041 limitDeadCellToChannelStatusEB=cms.vint32(12, 13, 14), 0042 limitDeadCellToChannelStatusEE=cms.vint32(12, 13, 14), 0043 #### enable calculation of energy deposits next to cracks/gaps 0044 enableGap=cms.untracked.bool(False), 0045 taggingMode = cms.bool(False), 0046 debug = cms.bool(False), 0047 ) 0048 0049 0050 0051 0052
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |