CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes | Static Private Attributes
FixedAreaIsolationCone Class Reference

#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
 

Detailed Description

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 37 of file FixedAreaIsolationCone.h.

Constructor & Destructor Documentation

◆ FixedAreaIsolationCone()

FixedAreaIsolationCone::FixedAreaIsolationCone ( )

Definition at line 33 of file FixedAreaIsolationCone.cc.

34  //--- nothing to be done yet
35  //
36  // WARNING: do NOT call ROOT::Math::RootFinder<ROOT::Math::Roots::Brent>::SetFunction here;
37  // this will cause the function to be evaluated before all function parameters are set,
38  // leading to an error message first and erroneous behaviour of the root-finding later on !!!
39  //
40 }

◆ ~FixedAreaIsolationCone()

FixedAreaIsolationCone::~FixedAreaIsolationCone ( )

Definition at line 42 of file FixedAreaIsolationCone.cc.

42  {
43  //--- nothing to be done yet
44 }

Member Function Documentation

◆ operator()()

double FixedAreaIsolationCone::operator() ( double  coneAxisTheta,
double  coneAxisPhi,
double  openingAngleSignalCone,
double  areaIsolationCone,
int &  error 
)

Definition at line 51 of file FixedAreaIsolationCone.cc.

52  {
55  double areaSignalCone = areaFunctionSignalCone_(openingAngleSignalCone);
56 
59  areaRootFunctionIsolationCone_.SetParameterConeArea(areaIsolationCone + areaSignalCone);
61  int statusIsolationCone = areaRootFinderIsolationCone_.Solve();
62  double openingAngleIsolationCone = areaRootFinderIsolationCone_.Root();
63 
64  if (debugLevel_ > 0) {
65  const std::string category = "FixedAreaIsolationCone::operator()";
66  edm::LogVerbatim(category) << "openingAngleSignalCone = " << openingAngleSignalCone << std::endl;
67  edm::LogVerbatim(category) << "areaSignalCone = " << areaSignalCone << std::endl;
68  edm::LogVerbatim(category) << "areaIsolationCone = " << areaIsolationCone << std::endl;
69  edm::LogVerbatim(category) << "openingAngleIsolationCone = " << openingAngleIsolationCone << std::endl;
70  edm::LogVerbatim(category) << "statusIsolationCone = " << statusIsolationCone << std::endl;
71  }
72 
73  if (statusIsolationCone == 0) {
74  error = 0;
75  return openingAngleIsolationCone;
76  } else {
77  error = 1;
78  return 0.;
79  }
80 }

References areaFunctionSignalCone_, areaRootFinderIsolationCone_, areaRootFunctionIsolationCone_, taus_updatedMVAIds_cff::category, debugLevel_, relativeConstraints::error, Pi, ConeAreaRootFunction::SetParameterConeArea(), ConeAreaFunction::SetParameterPhi0(), ConeAreaFunction::SetParameterTheta0(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ setAcceptanceLimit()

void FixedAreaIsolationCone::setAcceptanceLimit ( double  etaMaxTrackingAcceptance)

Member Data Documentation

◆ areaFunctionSignalCone_

ConeAreaFunction FixedAreaIsolationCone::areaFunctionSignalCone_
private

Definition at line 55 of file FixedAreaIsolationCone.h.

Referenced by operator()(), and setAcceptanceLimit().

◆ areaRootFinderIsolationCone_

ROOT::Math::RootFinder FixedAreaIsolationCone::areaRootFinderIsolationCone_
private

Definition at line 57 of file FixedAreaIsolationCone.h.

Referenced by operator()().

◆ areaRootFunctionIsolationCone_

ConeAreaRootFunction FixedAreaIsolationCone::areaRootFunctionIsolationCone_
private

Definition at line 56 of file FixedAreaIsolationCone.h.

Referenced by operator()(), and setAcceptanceLimit().

◆ debugLevel_

const unsigned int FixedAreaIsolationCone::debugLevel_ = 0
staticprivate

Definition at line 59 of file FixedAreaIsolationCone.h.

Referenced by operator()().

taus_updatedMVAIds_cff.category
category
Definition: taus_updatedMVAIds_cff.py:31
FixedAreaIsolationCone::areaRootFunctionIsolationCone_
ConeAreaRootFunction areaRootFunctionIsolationCone_
Definition: FixedAreaIsolationCone.h:56
ConeAreaFunction::SetParameterTheta0
void SetParameterTheta0(double theta0)
Definition: ConeAreaFunction.cc:86
FixedAreaIsolationCone::areaFunctionSignalCone_
ConeAreaFunction areaFunctionSignalCone_
Definition: FixedAreaIsolationCone.h:55
relativeConstraints.error
error
Definition: relativeConstraints.py:53
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
FixedAreaIsolationCone::areaRootFinderIsolationCone_
ROOT::Math::RootFinder areaRootFinderIsolationCone_
Definition: FixedAreaIsolationCone.h:57
ConeAreaFunction::SetParameterPhi0
void SetParameterPhi0(double phi0)
Definition: ConeAreaFunction.cc:88
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
ConeAreaFunction::SetAcceptanceLimit
void SetAcceptanceLimit(double etaMax)
Definition: ConeAreaFunction.cc:103
FixedAreaIsolationCone::debugLevel_
static const unsigned int debugLevel_
Definition: FixedAreaIsolationCone.h:59
Pi
const double Pi
Definition: CosmicMuonParameters.h:18
ConeAreaRootFunction::SetParameterConeArea
void SetParameterConeArea(double coneArea)
Definition: ConeAreaRootFunction.cc:63