CMS 3D CMS Logo

IntegralOverPhiFunction.h

Go to the documentation of this file.
00001 #ifndef PhysicsTools_IsolationUtils_IntegralOverPhiFunction_h
00002 #define PhysicsTools_IsolationUtils_IntegralOverPhiFunction_h
00003 
00004 // -*- C++ -*-
00005 //
00006 // Package:    IntegralOverPhiFunction
00007 // Class:      IntegralOverPhiFunction
00008 // 
00017 //
00018 // Original Author:  Christian Veelken, UC Davis
00019 //         Created:  Thu Nov  2 13:47:40 CST 2006
00020 // $Id: IntegralOverPhiFunction.h,v 1.1 2007/05/23 20:23:08 veelken Exp $
00021 //
00022 //
00023 
00024 // ROOT include files
00025 #include <Math/ParamFunction.h>
00026 
00027 //
00028 // class declaration
00029 //
00030 
00031 class IntegralOverPhiFunction : public ROOT::Math::ParamFunction
00032 {
00033  public:
00034   IntegralOverPhiFunction();
00035   ~IntegralOverPhiFunction();
00036 
00037   void SetParameterTheta0(double theta0);
00038   void SetParameterPhi0(double phi0);
00039   void SetParameterAlpha(double alpha);
00040 
00041   ROOT::Math::IGenFunction* Clone () const { return new IntegralOverPhiFunction(*this); }
00042 
00043  private:
00044   void SetParameters(double* param);
00045 
00046   double DoEval(double x) const;
00047   double DoDerivative(double x) const;
00048   void DoParameterGradient(double x, double* paramGradient) const;
00049 
00050   double theta0_; // polar angle of cone axis
00051   double phi0_; // azimuth angle of cone axis
00052   double alpha_; // opening angle of cone (measured from cone axis)
00053 
00054 // !!! ONLY FOR TESTING
00055   mutable unsigned int numSolutionMin1_;
00056   mutable unsigned int numSolutionMax1_;
00057   mutable unsigned int numSolutionMin2_;
00058   mutable unsigned int numSolutionMax2_;
00059   mutable unsigned int numSolutionMin3_;
00060   mutable unsigned int numSolutionMax3_;
00061   mutable unsigned int numSolutionMin4_;
00062   mutable unsigned int numSolutionMax4_;
00063 //     FOR TESTING ONLY !!!
00064 
00065   static const unsigned int debugLevel_ = 0;
00066 };
00067 
00068 #endif

Generated on Tue Jun 9 17:41:11 2009 for CMSSW by  doxygen 1.5.4