X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWGCF%2FEBYE%2Fmacros%2FdrawBalanceFunction2DPsi.C;h=8a8beda4027ec750dcaec269805fd1a7796ad6c9;hb=0d57c290f4d4c77dab3805a6a174a9051ef68d8f;hp=03b95d4b23f478974c0c1010a3bd4c3debb183d2;hpb=bd36d661f8938eb9788372fee4b9e586ae480f98;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWGCF/EBYE/macros/drawBalanceFunction2DPsi.C b/PWGCF/EBYE/macros/drawBalanceFunction2DPsi.C index 03b95d4b23f..8a8beda4027 100644 --- a/PWGCF/EBYE/macros/drawBalanceFunction2DPsi.C +++ b/PWGCF/EBYE/macros/drawBalanceFunction2DPsi.C @@ -1,5 +1,6 @@ -const Int_t numberOfCentralityBins = 11; -TString centralityArray[numberOfCentralityBins] = {"0-10","10-20","20-30","30-40","40-50","50-60","60-70","70-80","0-1","1-2","0-100"}; +const Int_t numberOfCentralityBins = 12; +TString centralityArray[numberOfCentralityBins] = {"0-10","10-20","20-30","30-40","40-50","50-60","60-70","70-80","0-100","0-1","1-2","2-3"}; + const Int_t gRebin = 1; void drawBalanceFunction2DPsi(const char* filename = "AnalysisResultsPsi.root", @@ -9,6 +10,8 @@ void drawBalanceFunction2DPsi(const char* filename = "AnalysisResultsPsi.root", Bool_t kShowShuffled = kFALSE, Bool_t kShowMixed = kTRUE, Double_t psiMin = -0.5, Double_t psiMax = 0.5, + Double_t vertexZMin = -10., + Double_t vertexZMax = 10., Double_t ptTriggerMin = -1., Double_t ptTriggerMax = -1., Double_t ptAssociatedMin = -1., @@ -42,7 +45,8 @@ void drawBalanceFunction2DPsi(const char* filename = "AnalysisResultsPsi.root", return; } else - draw(listBF,listBFShuffled,listBFMixed,gCentrality,psiMin,psiMax, + draw(listBF,listBFShuffled,listBFMixed,gCentrality,gCentralityEstimator, + psiMin,psiMax,vertexZMin,vertexZMax, ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax, k2pMethod,eventClass); } @@ -101,18 +105,18 @@ TList *GetListOfObjects(const char* filename, listBF = dynamic_cast(dir->Get(listBFName.Data())); cout<<"======================================================="<GetName()<ls(); //Get the histograms TString histoName; if(kData == 0) - histoName = "fHistPV0M"; + histoName = "fHistP"; else if(kData == 1) - histoName = "fHistP_shuffleV0M"; + histoName = "fHistP_shuffle"; else if(kData == 2) - histoName = "fHistPV0M"; + histoName = "fHistP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistP = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistP) { Printf("fHistP %s not found!!!",histoName.Data()); @@ -121,11 +125,12 @@ TList *GetListOfObjects(const char* filename, fHistP->FillParent(); fHistP->DeleteContainers(); if(kData == 0) - histoName = "fHistNV0M"; + histoName = "fHistN"; if(kData == 1) - histoName = "fHistN_shuffleV0M"; + histoName = "fHistN_shuffle"; if(kData == 2) - histoName = "fHistNV0M"; + histoName = "fHistN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistN = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistN) { Printf("fHistN %s not found!!!",histoName.Data()); @@ -134,11 +139,12 @@ TList *GetListOfObjects(const char* filename, fHistN->FillParent(); fHistN->DeleteContainers(); if(kData == 0) - histoName = "fHistPNV0M"; + histoName = "fHistPN"; if(kData == 1) - histoName = "fHistPN_shuffleV0M"; + histoName = "fHistPN_shuffle"; if(kData == 2) - histoName = "fHistPNV0M"; + histoName = "fHistPN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistPN = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistPN) { Printf("fHistPN %s not found!!!",histoName.Data()); @@ -147,11 +153,12 @@ TList *GetListOfObjects(const char* filename, fHistPN->FillParent(); fHistPN->DeleteContainers(); if(kData == 0) - histoName = "fHistNPV0M"; + histoName = "fHistNP"; if(kData == 1) - histoName = "fHistNP_shuffleV0M"; + histoName = "fHistNP_shuffle"; if(kData == 2) - histoName = "fHistNPV0M"; + histoName = "fHistNP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistNP = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistNP) { Printf("fHistNP %s not found!!!",histoName.Data()); @@ -160,11 +167,12 @@ TList *GetListOfObjects(const char* filename, fHistNP->FillParent(); fHistNP->DeleteContainers(); if(kData == 0) - histoName = "fHistPPV0M"; + histoName = "fHistPP"; if(kData == 1) - histoName = "fHistPP_shuffleV0M"; + histoName = "fHistPP_shuffle"; if(kData == 2) - histoName = "fHistPPV0M"; + histoName = "fHistPP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistPP = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistPP) { Printf("fHistPP %s not found!!!",histoName.Data()); @@ -173,11 +181,12 @@ TList *GetListOfObjects(const char* filename, fHistPP->FillParent(); fHistPP->DeleteContainers(); if(kData == 0) - histoName = "fHistNNV0M"; + histoName = "fHistNN"; if(kData == 1) - histoName = "fHistNN_shuffleV0M"; + histoName = "fHistNN_shuffle"; if(kData == 2) - histoName = "fHistNNV0M"; + histoName = "fHistNN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; AliTHn *fHistNN = dynamic_cast(listBF->FindObject(histoName.Data())); if(!fHistNN) { Printf("fHistNN %s not found!!!",histoName.Data()); @@ -197,7 +206,10 @@ TList *GetListOfObjects(const char* filename, //______________________________________________________// void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, - Int_t gCentrality, Double_t psiMin, Double_t psiMax, + Int_t gCentrality, const char* gCentralityEstimator, + Double_t psiMin, Double_t psiMax, + Double_t vertexZMin, + Double_t vertexZMax, Double_t ptTriggerMin, Double_t ptTriggerMax, Double_t ptAssociatedMin, Double_t ptAssociatedMax, Bool_t k2pMethod = kFALSE, TString eventClass) { @@ -210,17 +222,29 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, AliTHn *hNN = NULL; //listBF->ls(); //Printf("================="); - hP = (AliTHn*) listBF->FindObject("fHistPV0M"); + TString histoName = "fHistP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hP = (AliTHn*) listBF->FindObject(histoName.Data()); hP->SetName("gHistP"); - hN = (AliTHn*) listBF->FindObject("fHistNV0M"); + histoName = "fHistN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hN = (AliTHn*) listBF->FindObject(histoName.Data()); hN->SetName("gHistN"); - hPN = (AliTHn*) listBF->FindObject("fHistPNV0M"); + histoName = "fHistPN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPN = (AliTHn*) listBF->FindObject(histoName.Data()); hPN->SetName("gHistPN"); - hNP = (AliTHn*) listBF->FindObject("fHistNPV0M"); + histoName = "fHistNP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNP = (AliTHn*) listBF->FindObject(histoName.Data()); hNP->SetName("gHistNP"); - hPP = (AliTHn*) listBF->FindObject("fHistPPV0M"); + histoName = "fHistPP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPP = (AliTHn*) listBF->FindObject(histoName.Data()); hPP->SetName("gHistPP"); - hNN = (AliTHn*) listBF->FindObject("fHistNNV0M"); + histoName = "fHistNN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNN = (AliTHn*) listBF->FindObject(histoName.Data()); hNN->SetName("gHistNN"); AliBalancePsi *b = new AliBalancePsi(); @@ -241,18 +265,29 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, AliTHn *hNNShuffled = NULL; if(listBFShuffled) { //listBFShuffled->ls(); - - hPShuffled = (AliTHn*) listBFShuffled->FindObject("fHistP_shuffleV0M"); + histoName = "fHistP_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hPShuffled->SetName("gHistPShuffled"); - hNShuffled = (AliTHn*) listBFShuffled->FindObject("fHistN_shuffleV0M"); + histoName = "fHistN_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hNShuffled->SetName("gHistNShuffled"); - hPNShuffled = (AliTHn*) listBFShuffled->FindObject("fHistPN_shuffleV0M"); + histoName = "fHistPN_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPNShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hPNShuffled->SetName("gHistPNShuffled"); - hNPShuffled = (AliTHn*) listBFShuffled->FindObject("fHistNP_shuffleV0M"); + histoName = "fHistNP_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNPShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hNPShuffled->SetName("gHistNPShuffled"); - hPPShuffled = (AliTHn*) listBFShuffled->FindObject("fHistPP_shuffleV0M"); + histoName = "fHistPP_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPPShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hPPShuffled->SetName("gHistPPShuffled"); - hNNShuffled = (AliTHn*) listBFShuffled->FindObject("fHistNN_shuffleV0M"); + histoName = "fHistNN_shuffle"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNNShuffled = (AliTHn*) listBFShuffled->FindObject(histoName.Data()); hNNShuffled->SetName("gHistNNShuffled"); AliBalancePsi *bShuffled = new AliBalancePsi(); @@ -275,18 +310,31 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, if(listBFMixed) { //listBFMixed->ls(); - - hPMixed = (AliTHn*) listBFMixed->FindObject("fHistPV0M"); + histoName = "fHistP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); hPMixed->SetName("gHistPMixed"); - hNMixed = (AliTHn*) listBFMixed->FindObject("fHistNV0M"); + histoName = "fHistN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); hNMixed->SetName("gHistNMixed"); - hPNMixed = (AliTHn*) listBFMixed->FindObject("fHistPNV0M"); + histoName = "fHistPN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPNMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); hPNMixed->SetName("gHistPNMixed"); - hNPMixed = (AliTHn*) listBFMixed->FindObject("fHistNPV0M"); + histoName = "fHistNP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNPMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); + histoName = "fHistNP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; hNPMixed->SetName("gHistNPMixed"); - hPPMixed = (AliTHn*) listBFMixed->FindObject("fHistPPV0M"); + histoName = "fHistPP"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hPPMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); hPPMixed->SetName("gHistPPMixed"); - hNNMixed = (AliTHn*) listBFMixed->FindObject("fHistNNV0M"); + histoName = "fHistNN"; + if(gCentralityEstimator) histoName += gCentralityEstimator; + hNNMixed = (AliTHn*) listBFMixed->FindObject(histoName.Data()); hNNMixed->SetName("gHistNNMixed"); AliBalancePsi *bMixed = new AliBalancePsi(); @@ -337,13 +385,13 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, if(k2pMethod) if(bMixed) - gHistBalanceFunction = b->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); + gHistBalanceFunction = b->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); else{ cerr<<"NO MIXED BF BUT REQUESTED CORRECTING WITH IT! --> FAIL"<GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); + gHistBalanceFunction = b->GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); gHistBalanceFunction->SetTitle(histoTitle.Data()); gHistBalanceFunction->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunction->SetName("gHistBalanceFunction"); @@ -352,13 +400,13 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, if(k2pMethod) if(bMixed) - gHistBalanceFunctionShuffled = bShuffled->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); + gHistBalanceFunctionShuffled = bShuffled->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); else{ cerr<<"NO MIXED BF BUT REQUESTED CORRECTING WITH IT! --> FAIL"<GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); + gHistBalanceFunctionShuffled = bShuffled->GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); gHistBalanceFunctionShuffled->SetTitle(histoTitle.Data()); gHistBalanceFunctionShuffled->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunctionShuffled->SetName("gHistBalanceFunctionShuffled"); @@ -367,13 +415,13 @@ void draw(TList *listBF, TList *listBFShuffled, TList *listBFMixed, if(listBFMixed) { if(k2pMethod) if(bMixed) - gHistBalanceFunctionMixed = bMixed->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); + gHistBalanceFunctionMixed = bMixed->GetBalanceFunctionDeltaEtaDeltaPhi2pMethod(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax,bMixed); else{ cerr<<"NO MIXED BF BUT REQUESTED CORRECTING WITH IT! --> FAIL"<GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); + gHistBalanceFunctionMixed = bMixed->GetBalanceFunctionDeltaEtaDeltaPhi(psiMin,psiMax,vertexZMin,vertexZMax,ptTriggerMin,ptTriggerMax,ptAssociatedMin,ptAssociatedMax); gHistBalanceFunctionMixed->SetTitle(histoTitle.Data()); gHistBalanceFunctionMixed->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunctionMixed->SetName("gHistBalanceFunctionMixed"); @@ -506,66 +554,69 @@ void fitbalanceFunction(Int_t gCentrality = 1, TH2D *gHist, Bool_t k2pMethod = kFALSE, TString eventClass="EventPlane") { - + //balancing charges: [1]*TMath::Exp(-0.5*TMath::Power(((x - [3])/[2]),2)-0.5*TMath::Power(((y - [5])/[4]),2)) + //short range correlations: [6]*TMath::Exp(-0.5*TMath::Power(((x - [8])/[7]),2)-0.5*TMath::Power(((y - [10])/[9]),2)) cout<<"FITTING FUNCTION"<SetName("gFitFunction"); - //Normalization gFitFunction->SetParName(0,"N1"); - //near side peak - gFitFunction->SetParName(1,"N_{near side}");gFitFunction->FixParameter(1,0.0); - gFitFunction->SetParName(2,"Sigma_{near side}(delta eta)"); gFitFunction->FixParameter(2,0.0); - gFitFunction->SetParName(3,"Sigma_{near side}(delta phi)"); gFitFunction->FixParameter(3,0.0); - gFitFunction->SetParName(4,"Exponent_{near side}"); gFitFunction->FixParameter(4,1.0); - //away side ridge - gFitFunction->SetParName(5,"N_{away side}"); gFitFunction->FixParameter(5,0.0); - gFitFunction->SetParName(6,"Sigma_{away side}(delta phi)"); gFitFunction->FixParameter(6,0.0); - gFitFunction->SetParName(7,"Exponent_{away side}"); gFitFunction->FixParameter(7,1.0); - //longitudinal ridge - gFitFunction->SetParName(8,"N_{long. ridge}"); gFitFunction->SetParameter(8,0.05);// - gFitFunction->FixParameter(8,0.0); - gFitFunction->SetParName(9,"Sigma_{long. ridge}(delta eta)"); gFitFunction->FixParameter(9,0.0); - gFitFunction->SetParName(10,"Exponent_{long. ridge}"); gFitFunction->FixParameter(10,1.0); - //wing structures - gFitFunction->SetParName(11,"N_{wing}"); gFitFunction->FixParameter(11,0.0); - //flow contribution - gFitFunction->SetParName(12,"N_{flow}"); gFitFunction->FixParameter(12,0.0); - gFitFunction->SetParName(13,"V1"); gFitFunction->FixParameter(13,0.0); - gFitFunction->SetParName(14,"V2"); gFitFunction->FixParameter(14,0.0); - gFitFunction->SetParName(15,"V3"); gFitFunction->FixParameter(15,0.0); - gFitFunction->SetParName(16,"V4"); gFitFunction->FixParameter(16,0.0); - gFitFunction->SetParName(17,"Offset"); gFitFunction->FixParameter(17,0.0); - - // just release the near side peak - gFitFunction->ReleaseParameter(0);gFitFunction->SetParameter(0,1.0); - gFitFunction->ReleaseParameter(1);gFitFunction->SetParameter(1,0.3);gFitFunction->SetParLimits(1,0.0,100); - gFitFunction->ReleaseParameter(2);gFitFunction->SetParameter(2,0.3);gFitFunction->SetParLimits(2,0.05,0.7); - gFitFunction->ReleaseParameter(3);gFitFunction->SetParameter(3,0.3);gFitFunction->SetParLimits(3,0.05,1.7); - - gHist->Fit("gFitFunction","nm"); + gFitFunction->SetParameter(0,1.0); + + //2D balance function + gFitFunction->SetParName(1,"N_{BF}"); + gFitFunction->SetParameter(1,1.0); + gFitFunction->SetParLimits(1, 0., 100.); + gFitFunction->SetParName(2,"Sigma_{BF}(delta eta)"); + gFitFunction->SetParameter(2,0.6); + gFitFunction->SetParLimits(2, 0., 1.); + gFitFunction->SetParName(3,"Mean_{BF}(delta eta)"); + gFitFunction->SetParameter(3,0.0); + gFitFunction->SetParLimits(3, -0.2, 0.2); + gFitFunction->SetParName(4,"Sigma_{BF}(delta phi)"); + gFitFunction->SetParameter(4,0.6); + gFitFunction->SetParLimits(4, 0., 1.); + gFitFunction->SetParName(5,"Mean_{BF}(delta phi)"); + gFitFunction->SetParameter(5,0.0); + gFitFunction->SetParLimits(5, -0.2, 0.2); + + //short range structure + gFitFunction->SetParName(6,"N_{SR}"); + gFitFunction->SetParameter(6,5.0); + gFitFunction->SetParLimits(6, 0., 100.); + gFitFunction->SetParName(7,"Sigma_{SR}(delta eta)"); + gFitFunction->SetParameter(7,0.01); + gFitFunction->SetParLimits(7, 0.0, 0.1); + gFitFunction->SetParName(8,"Mean_{SR}(delta eta)"); + gFitFunction->SetParameter(8,0.0); + gFitFunction->SetParLimits(8, -0.01, 0.01); + gFitFunction->SetParName(9,"Sigma_{SR}(delta phi)"); + gFitFunction->SetParameter(9,0.01); + gFitFunction->SetParLimits(9, 0.0, 0.1); + gFitFunction->SetParName(10,"Mean_{SR}(delta phi)"); + gFitFunction->SetParameter(10,0.0); + gFitFunction->SetParLimits(10, -0.01, 0.01); //Cloning the histogram - TString histoName = gHist->GetName(); histoName += "Fit"; - TH2D *gHistFit = new TH2D(histoName.Data(),";#Delta#eta;#Delta#varphi (rad);C(#Delta#eta,#Delta#varphi)",gHist->GetNbinsX(),gHist->GetXaxis()->GetXmin(),gHist->GetXaxis()->GetXmax(),gHist->GetNbinsY(),gHist->GetYaxis()->GetXmin(),gHist->GetYaxis()->GetXmax()); TH2D *gHistResidual = dynamic_cast(gHist->Clone()); gHistResidual->SetName("gHistResidual"); gHistResidual->Sumw2(); - for(Int_t iBinDeltaEta = 1; iBinDeltaEta <= gHist->GetNbinsX(); iBinDeltaEta++) { - for(Int_t iBinDeltaPhi = 1; iBinDeltaPhi <= gHist->GetNbinsY(); iBinDeltaPhi++) { - gHistFit->SetBinContent(iBinDeltaEta,iBinDeltaPhi,gFitFunction->Eval(gHist->GetXaxis()->GetBinCenter(iBinDeltaEta),gHist->GetYaxis()->GetBinCenter(iBinDeltaPhi))); - } + //Fitting the 2D bf + for(Int_t iAttempt = 0; iAttempt < 10; iAttempt++) { + gHist->Fit("gFitFunction","nm"); + for(Int_t iParam = 0; iParam < 11; iParam++) + gFitFunction->SetParameter(iParam,gFitFunction->GetParameter(iParam)); } - gHistResidual->Add(gHistFit,-1); + cout<<"======================================================"<GetChisquare()/gFitFunction->GetNDF()<<" - chi2: "<GetChisquare()<<" - ndf: "<GetNDF()<Add(gFitFunction,-1); //Write to output file TString newFileName = "balanceFunctionFit2D."; @@ -594,16 +645,11 @@ void fitbalanceFunction(Int_t gCentrality = 1, newFileName += ".root"; TFile *newFile = TFile::Open(newFileName.Data(),"recreate"); gHist->Write(); - gHistFit->Write(); gHistResidual->Write(); gFitFunction->Write(); newFile->Close(); - - } - - //____________________________________________________________// void drawBFPsi2D(const char* lhcPeriod = "LHC11h", const char* gCentralityEstimator = "V0M", @@ -665,7 +711,7 @@ void drawBFPsi2D(const char* lhcPeriod = "LHC11h", gHistBalanceFunction->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunction->GetZaxis()->SetTitleOffset(1.3); gHistBalanceFunction->GetXaxis()->SetTitle("#Delta #eta"); - gHistBalanceFunction->GetYaxis()->SetTitle("#Delta #varphi (deg.)"); + gHistBalanceFunction->GetYaxis()->SetTitle("#Delta #varphi (rad)"); gHistBalanceFunction->GetZaxis()->SetTitle("B(#Delta #eta, #Delta #varphi)"); //Shuffled balance function @@ -679,7 +725,7 @@ void drawBFPsi2D(const char* lhcPeriod = "LHC11h", gHistBalanceFunctionShuffled->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunctionShuffled->GetZaxis()->SetTitleOffset(1.3); gHistBalanceFunctionShuffled->GetXaxis()->SetTitle("#Delta #eta"); - gHistBalanceFunctionShuffled->GetYaxis()->SetTitle("#Delta #varphi (deg.)"); + gHistBalanceFunctionShuffled->GetYaxis()->SetTitle("#Delta #varphi (rad)"); gHistBalanceFunctionShuffled->GetZaxis()->SetTitle("B(#Delta #eta, #Delta #varphi)"); } @@ -694,7 +740,7 @@ void drawBFPsi2D(const char* lhcPeriod = "LHC11h", gHistBalanceFunctionMixed->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunctionMixed->GetZaxis()->SetTitleOffset(1.3); gHistBalanceFunctionMixed->GetXaxis()->SetTitle("#Delta #eta"); - gHistBalanceFunctionMixed->GetYaxis()->SetTitle("#Delta #varphi (deg.)"); + gHistBalanceFunctionMixed->GetYaxis()->SetTitle("#Delta #varphi (rad)"); gHistBalanceFunctionMixed->GetZaxis()->SetTitle("B(#Delta #eta, #Delta #varphi)"); } @@ -709,7 +755,7 @@ void drawBFPsi2D(const char* lhcPeriod = "LHC11h", gHistBalanceFunctionSubtracted->GetYaxis()->SetTitleOffset(1.3); gHistBalanceFunctionSubtracted->GetZaxis()->SetTitleOffset(1.3); gHistBalanceFunctionSubtracted->GetXaxis()->SetTitle("#Delta #eta"); - gHistBalanceFunctionSubtracted->GetYaxis()->SetTitle("#Delta #varphi (deg.)"); + gHistBalanceFunctionSubtracted->GetYaxis()->SetTitle("#Delta #varphi (rad)"); gHistBalanceFunctionSubtracted->GetZaxis()->SetTitle("B(#Delta #eta, #Delta #varphi)"); } @@ -749,7 +795,9 @@ void drawBFPsi2D(const char* lhcPeriod = "LHC11h", gHistBalanceFunction->SetTitle(""); gHistBalanceFunction->GetYaxis()->SetTitleOffset(1.4); gHistBalanceFunction->GetYaxis()->SetNdivisions(10); + gHistBalanceFunction->GetXaxis()->SetRangeUser(-1.4,1.4); gHistBalanceFunction->GetXaxis()->SetNdivisions(10); + gHistBalanceFunction->GetYaxis()->SetTitle("#Delta #varphi (rad)"); gHistBalanceFunction->DrawCopy("lego2"); gPad->SetTheta(30); // default is 30 gPad->SetPhi(-60); // default is 30