#include <PhysicsTools/IsolationUtils/src/FixedAreaIsolationCone.cc>
Public Member Functions | |
FixedAreaIsolationCone () | |
double | operator() (double coneAxisTheta, double coneAxisPhi, double openingAngleSignalCone, double areaIsolationCone, int &error) |
void | setAcceptanceLimit (double etaMaxTrackingAcceptance) |
~FixedAreaIsolationCone () | |
Private Attributes | |
ConeAreaFunction | areaFunctionSignalCone_ |
ROOT::Math::RootFinder | areaRootFinderIsolationCone_ |
ConeAreaRootFunction | areaRootFunctionIsolationCone_ |
Static Private Attributes | |
static const unsigned int | debugLevel_ = 0 |
Description: highest level class to compute size of isolation cone such that area weighted by particle density (proportional to dEta/dTheta = 1/sin(theta)) is constant
Implementation: imported into CMSSW on 05/18/2007
Definition at line 38 of file FixedAreaIsolationCone.h.
FixedAreaIsolationCone::FixedAreaIsolationCone | ( | ) |
Definition at line 34 of file FixedAreaIsolationCone.cc.
: areaFunctionSignalCone_(), areaRootFunctionIsolationCone_() { //--- nothing to be done yet // // WARNING: do NOT call ROOT::Math::RootFinder<ROOT::Math::Roots::Brent>::SetFunction here; // this will cause the function to be evaluated before all function parameters are set, // leading to an error message first and erroneous behaviour of the root-finding later on !!! // }
FixedAreaIsolationCone::~FixedAreaIsolationCone | ( | ) |
Definition at line 45 of file FixedAreaIsolationCone.cc.
{
//--- nothing to be done yet
}
double FixedAreaIsolationCone::operator() | ( | double | coneAxisTheta, |
double | coneAxisPhi, | ||
double | openingAngleSignalCone, | ||
double | areaIsolationCone, | ||
int & | error | ||
) |
Definition at line 56 of file FixedAreaIsolationCone.cc.
References areaFunctionSignalCone_, areaRootFinderIsolationCone_, areaRootFunctionIsolationCone_, python::rootplot::argparse::category, debugLevel_, Pi, ConeAreaRootFunction::SetParameterConeArea(), ConeAreaFunction::SetParameterPhi0(), and ConeAreaFunction::SetParameterTheta0().
{ areaFunctionSignalCone_.SetParameterTheta0(coneAxisTheta); areaFunctionSignalCone_.SetParameterPhi0(coneAxisPhi); double areaSignalCone = areaFunctionSignalCone_(openingAngleSignalCone); areaRootFunctionIsolationCone_.SetParameterTheta0(coneAxisTheta); areaRootFunctionIsolationCone_.SetParameterPhi0(coneAxisPhi); areaRootFunctionIsolationCone_.SetParameterConeArea(areaIsolationCone + areaSignalCone); areaRootFinderIsolationCone_.SetFunction(areaRootFunctionIsolationCone_, 0. , TMath::Pi()); int statusIsolationCone = areaRootFinderIsolationCone_.Solve(); double openingAngleIsolationCone = areaRootFinderIsolationCone_.Root(); if ( debugLevel_ > 0 ) { const std::string category = "FixedAreaIsolationCone::operator()"; edm::LogVerbatim(category) << "openingAngleSignalCone = " << openingAngleSignalCone << std::endl; edm::LogVerbatim(category) << "areaSignalCone = " << areaSignalCone << std::endl; edm::LogVerbatim(category) << "areaIsolationCone = " << areaIsolationCone << std::endl; edm::LogVerbatim(category) << "openingAngleIsolationCone = " << openingAngleIsolationCone << std::endl; edm::LogVerbatim(category) << "statusIsolationCone = " << statusIsolationCone << std::endl; } if ( statusIsolationCone == 0 ) { error = 0; return openingAngleIsolationCone; } else { error = 1; return 0.; } }
void FixedAreaIsolationCone::setAcceptanceLimit | ( | double | etaMaxTrackingAcceptance | ) |
Definition at line 50 of file FixedAreaIsolationCone.cc.
References areaFunctionSignalCone_, areaRootFunctionIsolationCone_, and ConeAreaFunction::SetAcceptanceLimit().
Referenced by PFTauElementsOperators::computeInsideOutContents(), CaloTauElementsOperators::EcalRecHitsInAnnulus(), and CaloTauElementsOperators::EcalRecHitsInCone().
{ areaFunctionSignalCone_.SetAcceptanceLimit(etaMaxTrackingAcceptance); areaRootFunctionIsolationCone_.SetAcceptanceLimit(etaMaxTrackingAcceptance); }
Definition at line 57 of file FixedAreaIsolationCone.h.
Referenced by operator()(), and setAcceptanceLimit().
ROOT::Math::RootFinder FixedAreaIsolationCone::areaRootFinderIsolationCone_ [private] |
Definition at line 59 of file FixedAreaIsolationCone.h.
Referenced by operator()().
Definition at line 58 of file FixedAreaIsolationCone.h.
Referenced by operator()(), and setAcceptanceLimit().
const unsigned int FixedAreaIsolationCone::debugLevel_ = 0 [static, private] |
Definition at line 61 of file FixedAreaIsolationCone.h.
Referenced by operator()().