#include <TDatabasePDG.h>
#include "AliHFMassFitter.h"
-
+#include "AliVertexingHFUtils.h"
ClassImp(AliHFMassFitter)
return;
}
- significance = signal/TMath::Sqrt(signal+background);
-
- errsignificance = TMath::Sqrt(significance*significance/(signal+background)/(signal+background)*(1/4.*errsignal*errsignal+errbackground*errbackground)+significance*significance/signal/signal*errsignal*errsignal);
+ AliVertexingHFUtils::ComputeSignificance(signal,errsignal,background,errbackground,significance,errsignificance);
return;
}
}
+//______________________________________________________________________
+void AliVertexingHFUtils::ComputeSignificance(Double_t signal, Double_t errsignal, Double_t background, Double_t errbackground, Double_t &significance,Double_t &errsignificance){
+ // calculate significance from S, B and errors
+
+
+ Double_t errSigSq=errsignal*errsignal;
+ Double_t errBkgSq=errbackground*errbackground;
+ Double_t sigPlusBkg=signal+background;
+ if(sigPlusBkg>0. && signal>0.){
+ significance = signal/TMath::Sqrt(signal+background);
+ errsignificance = significance*TMath::Sqrt((errSigSq+errBkgSq)/(4.*sigPlusBkg*sigPlusBkg)+(background/sigPlusBkg)*errSigSq/signal/signal);
+ }else{
+ significance=0.;
+ errsignificance=0.;
+ }
+ return;
+
+}
//______________________________________________________________________
Double_t AliVertexingHFUtils::Pol(Double_t x, Int_t k){
// compute chi from polynomial approximation
class AliAODMCParticle;
class AliAODMCHeader;
+class AliAODEvent;
class TProfile;
class TClonesArray;
class TH1F;
AliVertexingHFUtils(Int_t k);
virtual ~AliVertexingHFUtils() {};
+ // Significance calculator
+ static void ComputeSignificance(Double_t signal, Double_t errsignal, Double_t background, Double_t errbackground, Double_t &significance,Double_t &errsignificance);
+
// Functions for Event plane resolution
void SetK(Int_t k){fK=k;}
void SetSubEvResol(Double_t res){fSubRes=res;}