From: cnattras Date: Mon, 19 May 2014 00:17:39 +0000 (-0400) Subject: adding function to calculate total et with systematic errors X-Git-Url: http://git.uio.no/git/?a=commitdiff_plain;h=a112459a17866f5e09130fab87740a5b816f176b;p=u%2Fmrichter%2FAliRoot.git adding function to calculate total et with systematic errors --- diff --git a/PWGLF/totEt/AliAnalysisHadEtCorrections.cxx b/PWGLF/totEt/AliAnalysisHadEtCorrections.cxx index 751e64b5f83..2955ff14c5a 100644 --- a/PWGLF/totEt/AliAnalysisHadEtCorrections.cxx +++ b/PWGLF/totEt/AliAnalysisHadEtCorrections.cxx @@ -73,6 +73,7 @@ AliAnalysisHadEtCorrections::AliAnalysisHadEtCorrections() : TNamed(), ,fDataSet(2009) ,fProduction("ProductionName") ,fProductionDescription("Long production description") + ,fSpectraCalcErrorCorrelation(1) {//default constructor Init(); } @@ -168,6 +169,7 @@ AliAnalysisHadEtCorrections::AliAnalysisHadEtCorrections(const AliAnalysisHadEtC ,fDataSet(g->fDataSet) ,fProduction(g->fProduction) ,fProductionDescription(g->fProductionDescription) + ,fSpectraCalcErrorCorrelation(g->fSpectraCalcErrorCorrelation) {//copy constructor //SetName(g->GetName()); fnotIDTPC = new TH1D(*(g->fnotIDTPC)); @@ -246,6 +248,41 @@ Float_t AliAnalysisHadEtCorrections::GetConstantCorrections(Bool_t totEt, Float_ //cout<<" Acceptance "<0){ + emEt = scale*(rawEmEt-hadronCorr-kaonCorr-neutronCorr-secondaryCorr)/minEt; + totEtStatError = TMath::Sqrt(hadEtErr*hadEtErr+TMath::Power(scale*rawEmEtError/minEt,2)); + } + totEt = emEt+hadEt; + //first add variance due to had et + Float_t variance = (neutralFracErr*neutralFracErr+ptcutFracErr*ptcutFracErr+pidFracErr*pidFracErr+backgroundFracErr*backgroundFracErr)*hadEt*hadEt; + //then add variance due to em et + variance += (energyScaleError*energyScaleError+minEtError/minEt*minEtError/minEt+nonLinError*nonLinError)*emEt*emEt+scale/minEt*(neutronError*neutronError+hadronError*hadronError+kaonError*kaonError+secondaryError*secondaryError); + //add efficiency errors separately - these are basically 100% correlated between Em ET and had Et + variance +=efficiencyFracErr*efficiencyFracErr*totEt*totEt; + //correlated errors +// variance +=fSpectraCalcErrorCorrelation*neutralFracErr*hadEt*(pidFracErr*hadEt+backgroundFracErr*hadEt+scale*kaonError/minEt); +// variance +=fSpectraCalcErrorCorrelation*pidFracErr*hadEt*(backgroundFracErr*hadEt+scale*kaonError/minEt+neutralFracErr*hadEt) ; +// variance +=fSpectraCalcErrorCorrelation*backgroundFracErr*hadEt*(pidFracErr*hadEt+scale*kaonError/minEt+neutralFracErr*hadEt); +// variance +=fSpectraCalcErrorCorrelation*scale*kaonError/minEt*(pidFracErr*hadEt+backgroundFracErr*hadEt+neutralFracErr*hadEt); + variance +=fSpectraCalcErrorCorrelation*neutralFracErr*hadEt*(backgroundFracErr*hadEt+scale*kaonError/minEt); + variance +=fSpectraCalcErrorCorrelation*backgroundFracErr*hadEt*(scale*kaonError/minEt+neutralFracErr*hadEt); + variance +=fSpectraCalcErrorCorrelation*scale*kaonError/minEt*(backgroundFracErr*hadEt+neutralFracErr*hadEt); + // cout<<"Correlated error neutral "<