#ifndef __GFMATH_H #define __GFMATH_H ////////////////////////////////////////////////////////////////////////// // // // GFMath // // // // Encapsulate Gero's math routines. // // // ////////////////////////////////////////////////////////////////////////// #include "Rtypes.h" // needed for dictionary: #include "TArrayD.h" class TMatrixD; class GFMath { public: static TArrayD X1ThroughX2CorrErr(Double_t x1, Double_t x2, Double_t sigmax1, Double_t sigmax2); static TArrayD X1ThroughX2BinomErr(Double_t x1, Double_t x2); static TArrayD NormaliseTo1(const TArrayD& input, const TArrayD* inputErr = NULL, TArrayD* outputErr = NULL, TMatrixD* outputVariance = NULL); static Float_t BinomialError(Int_t nRec, Int_t nGen, Bool_t upper); static TArrayD EfficiencyGassnerError(Double_t nCount, Double_t nDenom, Double_t errCount, Double_t errDenom); static TArrayD EfficiencyBlobelError(Double_t nCount, Double_t nDenom, Double_t errCount, Double_t errDenom); static TArrayD EfficiencyTestError(Double_t nCount, Double_t nDenom, Double_t errCount, Double_t errDenom); static TArrayD Efficiency(Double_t nCount, Double_t nDenom, Double_t nEffDenom, Double_t nFillDenom); static Bool_t EquidistLogBins(Double_t* bins,Int_t length,Double_t first,Double_t last); static Bool_t EquidistBins(Double_t* bins,Int_t length,Double_t first,Double_t last); static Bool_t IsEqualFloat(Double_t x1, Double_t x2); ClassDef(GFMath,0) //Interface to Gero's math routines }; #endif