Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:23

0001 /** \class reco::FFTJetPileupSummary
0002 *
0003 * \short Summary info for pile-up determined by Gaussian filtering
0004 *
0005 * \author Igor Volobouev, TTU
0006 *
0007 ************************************************************/
0008 
0009 #ifndef DataFormats_JetReco_FFTJetPileupSummary_h
0010 #define DataFormats_JetReco_FFTJetPileupSummary_h
0011 
0012 namespace reco {
0013   class FFTJetPileupSummary {
0014   public:
0015     inline FFTJetPileupSummary()
0016         : uncalibratedQuantile_(-100000.f), pileupRho_(-1000000.f), pileupRhoUncert_(-1.0), uncertaintyCode_(-1) {}
0017 
0018     inline FFTJetPileupSummary(const float uncalibrated,
0019                                const float pileup,
0020                                const float uncert = -1.f,
0021                                const int code = -1)
0022         : uncalibratedQuantile_(uncalibrated), pileupRho_(pileup), pileupRhoUncert_(uncert), uncertaintyCode_(code) {}
0023 
0024     // The original point at which the pile-up estimate was found.
0025     // This does not use any calibration curve or Neyman construction,
0026     // and can serve as an input to an improved user-defined calibration.
0027     inline float uncalibratedQuantile() const { return uncalibratedQuantile_; }
0028 
0029     // The estimate of pile-up transverse energy (or momentum) density
0030     inline float pileupRho() const { return pileupRho_; }
0031 
0032     // Uncertainty of the pile-up density estimate
0033     inline float pileupRhoUncertainty() const { return pileupRhoUncert_; }
0034 
0035     // The "zone" of the uncertainty in the Neyman belt construction.
0036     // Suggested values are as follows:
0037     //
0038     // -1 -- uncertainty is unknown
0039     //
0040     //  0 -- estimated uncertainty does not come from the Neyman belt
0041     //
0042     //  1 -- the estimate does not intersect the belt at all (typically,
0043     //       the uncertainty in this case will be set to 0). This just
0044     //       means that your value of rho is unlikely, and there is no
0045     //       way to come up with a resonable frequentist uncertainty
0046     //       estimate using the adopted ordering principle.
0047     //
0048     //  2 -- the estimate intersects one error band only. The height
0049     //       of that band is used as the uncertainty.
0050     //
0051     //  3 -- the estimate intersects the center of the belt (the
0052     //       calibration curve) and one error band. The distance
0053     //       between the center and the band (one-sided uncertainty)
0054     //       is used as the uncertainty in this summary.
0055     //
0056     //  4 -- the estimate intersects the complete belt. Only in this
0057     //       case one gets a completely meanigful frequentist uncertainty
0058     //       which is typicaly calculated as the belt half-width along
0059     //       the line of intersect.
0060     //
0061     inline int uncertaintyCode() const { return uncertaintyCode_; }
0062 
0063   private:
0064     float uncalibratedQuantile_;
0065     float pileupRho_;
0066     float pileupRhoUncert_;
0067     int uncertaintyCode_;
0068   };
0069 }  // namespace reco
0070 
0071 #endif  // DataFormats_JetReco_FFTJetPileupSummary_h