14 #include <Math/VectorUtil.h>
20 using namespace ROOT::Math::VectorUtil;
28 basicClusterCollection_(basicClusterCollection),
29 superClusterCollection_(superClusterCollection) {}
39 double delta1 = 1000.;
40 double deltacur = 1000.;
42 bool MATCHEDSC =
false;
52 if (supercluster->
seed()->algo() == 0) {
55 if (deltacur < delta1) {
57 matchedsupercluster = supercluster;
71 int ebc_bcalgo = cluster->
algo();
72 double ebc_bce = cluster->
energy();
73 double ebc_bceta = cluster->
eta();
74 double ebc_bcet = ebc_bce *
sin(2 * atan(
exp(ebc_bceta)));
77 if (ebc_bcet >
etMin && ebc_bcalgo == 0) {
81 bool inSuperCluster =
false;
85 for (; theEclust != matchedsupercluster->
clustersEnd(); theEclust++) {
86 if ((**theEclust) == (*cluster))
87 inSuperCluster =
true;
89 if (!inSuperCluster) {
double getEcalEtSum(const reco::Candidate *)
const math::XYZPoint & position() const
cluster centroid position
Sin< T >::type sin(const T &t)
Exp< T >::type exp(const T &t)
double eta() const
pseudorapidity of cluster centroid
AlgoId algo() const
algorithm identifier
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
double energy() const
cluster energy
T const * get() const
Returns C++ pointer to the item.
const reco::SuperClusterCollection * superClusterCollection_
XYZVectorD XYZVector
spatial vector with cartesian internal representation
std::vector< BasicCluster > BasicClusterCollection
collection of BasicCluster objects
EgammaEcalIsolation(double extRadius, double etLow, const reco::BasicClusterCollection *, const reco::SuperClusterCollection *)
static int position[264][3]
CaloCluster_iterator clustersBegin() const
fist iterator over BasicCluster constituents
T get() const
get a component
const reco::BasicClusterCollection * basicClusterCollection_
const CaloClusterPtr & seed() const
seed BasicCluster
CaloCluster_iterator clustersEnd() const
last iterator over BasicCluster constituents