Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
RecoLocalCalo
EcalDeadChannelRecoveryAlgos
src
EcalDeadChannelRecoveryAlgos.cc
Go to the documentation of this file.
1
//
2
// Original Author: Stilianos Kesisoglou - Institute of Nuclear and Particle
3
// Physics NCSR Demokritos (Stilianos.Kesisoglou@cern.ch)
4
// Created: Wed Nov 21 11:24:39 EET 2012
5
//
6
// Nov 21 2012: First version of the code. Based on the old
7
// "EcalDeadChannelRecoveryAlgos.cc" code
8
// Feb 14 2013: Implementation of the criterion to select the "correct"
9
// max. cont. crystal.
10
//
11
//modified by S.Taroni, N. Marinelli 11 June 2019
12
13
#include "
RecoLocalCalo/EcalDeadChannelRecoveryAlgos/interface/EcalDeadChannelRecoveryAlgos.h
"
14
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
15
16
template
<
typename
T>
17
void
EcalDeadChannelRecoveryAlgos<T>::setParameters
(
const
edm::ParameterSet
&ps) {
18
bdtg_.setParameters(ps);
19
}
20
21
template
<
typename
T>
22
void
EcalDeadChannelRecoveryAlgos<T>::setCaloTopology
(
const
CaloTopology
*topo) {
23
bdtg_.setCaloTopology(topo);
24
}
25
26
template
<
typename
T>
27
float
EcalDeadChannelRecoveryAlgos<T>::correct
(
const
T
id
,
28
const
EcalRecHitCollection
&hit_collection,
29
std::string
algo
,
30
double
single8Cut,
31
double
sum8Cut,
32
bool
*acceptFlag) {
33
// recover as single dead channel
34
double
newEnergy = 0.0;
35
if
(algo ==
"BDTG"
) {
36
*acceptFlag =
false
;
37
newEnergy = this->bdtg_.recover(
id
, hit_collection, single8Cut, sum8Cut, acceptFlag);
//ADD here
38
if
(newEnergy > 0.)
39
*acceptFlag =
true
;
//bdtg set to 0 if there is more than one channel in the matrix that is not reponding
40
}
else
{
41
edm::LogError
(
"EcalDeadChannelRecoveryAlgos"
) <<
"Invalid algorithm for dead channel recovery."
;
42
*acceptFlag =
false
;
43
}
44
45
return
newEnergy;
46
}
47
48
template
class
EcalDeadChannelRecoveryAlgos<EBDetId>
;
49
template
class
EcalDeadChannelRecoveryAlgos<EEDetId>
;
EcalDeadChannelRecoveryAlgos< EBDetId >
edm::SortedCollection< EcalRecHit >
MessageLogger.h
edm::LogError
Log< level::Error, false > LogError
Definition:
MessageLogger.h:123
EcalDeadChannelRecoveryAlgos::setCaloTopology
void setCaloTopology(const CaloTopology *topology)
Definition:
EcalDeadChannelRecoveryAlgos.cc:22
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
EcalDeadChannelRecoveryAlgos::setParameters
void setParameters(const edm::ParameterSet &ps)
Definition:
EcalDeadChannelRecoveryAlgos.cc:17
cmsdt::algo
algo
Definition:
constants.h:171
edm::ParameterSet
Definition:
ParameterSet.h:47
CaloTopology
Definition:
CaloTopology.h:19
EcalDeadChannelRecoveryAlgos::correct
float correct(const DetIdT id, const EcalRecHitCollection &hit_collection, std::string algo, double single8Cut, double sum8Cut, bool *accFlag)
Definition:
EcalDeadChannelRecoveryAlgos.cc:27
T
long double T
Definition:
Basic3DVectorLD.h:48
EcalDeadChannelRecoveryAlgos.h
Generated for CMSSW Reference Manual by
1.8.5