CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
EcalCleaningAlgo Class Reference

#include <EcalCleaningAlgo.h>

Public Member Functions

EcalRecHit::Flags checkTopology (const DetId &id, const EcalRecHitCollection &rhs)
 
 EcalCleaningAlgo (const edm::ParameterSet &p)
 
void setFlags (EcalRecHitCollection &rhs)
 

Private Member Functions

float e4e1 (const DetId &id, const EcalRecHitCollection &rhs)
 yet another function to calculate swiss cross More...
 
float e6e2 (const DetId &id, const EcalRecHitCollection &rhs)
 
bool isNearCrack (const DetId &detid)
 in EB, check if we are near a crack More...
 
const std::vector< DetIdneighbours (const DetId &id)
 return the id of the 4 neighbours in the swiss cross More...
 
float recHitE (const DetId id, const EcalRecHitCollection &recHits, bool useTimingInfo)
 

Private Attributes

float cThreshold_barrel_
 
float cThreshold_double_
 
float cThreshold_endcap_
 
float e4e1_a_barrel_
 
float e4e1_a_endcap_
 
float e4e1_b_barrel_
 
float e4e1_b_endcap_
 
float e4e1Treshold_barrel_
 
float e4e1Treshold_endcap_
 
float e6e2thresh_
 
float ignoreOutOfTimeThresh_
 ignore kOutOfTime above threshold when calculating e4e1 More...
 
float tightenCrack_e1_double_
 
float tightenCrack_e1_single_
 
float tightenCrack_e4e1_single_
 
float tightenCrack_e6e2_double_
 

Detailed Description

Definition at line 21 of file EcalCleaningAlgo.h.

Constructor & Destructor Documentation

EcalCleaningAlgo::EcalCleaningAlgo ( const edm::ParameterSet p)

Definition at line 14 of file EcalCleaningAlgo.cc.

Member Function Documentation

EcalRecHit::Flags EcalCleaningAlgo::checkTopology ( const DetId id,
const EcalRecHitCollection rhs 
)

check topology, return : kGood : not anomalous kWeird : spike kDiWeird : dispike

Flag spikey channels

Mark single spikes. Spike definition:

Barrel: e> cThreshold_barrel_ && e4e1 > e4e1_a_barrel_ * log10(e) + e4e1_b_barrel_

Near cracks: energy threshold is multiplied by tightenCrack_e1_single e4e1 threshold is divided by tightenCrack_e4e1_single

Endcap : e> cThreshold_endcap_ && e4e1> e4e1_a_endcap_ * log10(e) + e4e1_b_endcap_

Mark double spikes (barrel only) e> cThreshold_double_ && e6e2 > e6e2thresh_;

Near cracks: energy threshold multiplied by tightenCrack_e1_double e6e2 threshold divided by tightenCrack_e6e2_double

Out of time hits above e4e1_IgnoreOutOfTimeThresh_ are ignored in topological quantities

Definition at line 69 of file EcalCleaningAlgo.cc.

float EcalCleaningAlgo::e4e1 ( const DetId id,
const EcalRecHitCollection rhs 
)
private

yet another function to calculate swiss cross

Definition at line 139 of file EcalCleaningAlgo.cc.

float EcalCleaningAlgo::e6e2 ( const DetId id,
const EcalRecHitCollection rhs 
)
private

Compute e6 over e2 around xtal 1, where 2 is the most energetic in the swiss cross around 1

  | | |   
+-+-+-+-+
| |1|2| |
+-+-+-+-+
  | | |                

Definition at line 161 of file EcalCleaningAlgo.cc.

bool EcalCleaningAlgo::isNearCrack ( const DetId detid)
private

in EB, check if we are near a crack

Definition at line 255 of file EcalCleaningAlgo.cc.

const std::vector< DetId > EcalCleaningAlgo::neighbours ( const DetId id)
private

return the id of the 4 neighbours in the swiss cross

four neighbours in the swiss cross around id

Definition at line 229 of file EcalCleaningAlgo.cc.

float EcalCleaningAlgo::recHitE ( const DetId  id,
const EcalRecHitCollection recHits,
bool  useTimingInfo 
)
private

Definition at line 197 of file EcalCleaningAlgo.cc.

void EcalCleaningAlgo::setFlags ( EcalRecHitCollection rhs)

Member Data Documentation

float EcalCleaningAlgo::cThreshold_barrel_
private

Definition at line 67 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::cThreshold_double_
private

Definition at line 78 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::cThreshold_endcap_
private

Definition at line 68 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1_a_barrel_
private

Definition at line 69 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1_a_endcap_
private

Definition at line 71 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1_b_barrel_
private

Definition at line 70 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1_b_endcap_
private

Definition at line 72 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1Treshold_barrel_
private

Definition at line 74 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e4e1Treshold_endcap_
private

Definition at line 75 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::e6e2thresh_
private

Definition at line 81 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::ignoreOutOfTimeThresh_
private

ignore kOutOfTime above threshold when calculating e4e1

Definition at line 63 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::tightenCrack_e1_double_
private

Definition at line 79 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::tightenCrack_e1_single_
private

Definition at line 76 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::tightenCrack_e4e1_single_
private

Definition at line 77 of file EcalCleaningAlgo.h.

float EcalCleaningAlgo::tightenCrack_e6e2_double_
private

Definition at line 80 of file EcalCleaningAlgo.h.