const Float_t centmin_0_10 = 0.;
const Float_t centmax_0_10 = 10.;
-const Float_t centmin_10_100 = 10.;
-const Float_t centmax_10_100 = 100.;
+const Float_t centmin_10_60 = 10.;
+const Float_t centmax_10_60 = 60.;
+const Float_t centmin_60_100 = 60.;
+const Float_t centmax_60_100 = 100.;
const Float_t centmax = 100.;
const Float_t fakemin = -0.5;
const Float_t fakemax = 2.5.;
//----------------------------------------------------
-AliCFTaskVertexingHF *AddTaskCFVertexingHF3ProngDs(Int_t decayOption=AliCFVertexingHF3Prong::kCountResonant, const char* cutFile = "./DstoKKpiCuts.root", Int_t configuration = AliCFTaskVertexingHF::kSnail, Bool_t isKeepDfromB=kFALSE, Bool_t isKeepDfromBOnly=kFALSE, Int_t pdgCode = 431, Char_t isSign = 2)
+AliCFTaskVertexingHF *AddTaskCFVertexingHF3ProngDs(TString suffixName="", Int_t decayOption=AliCFVertexingHF3Prong::kCountResonant, const char* cutFile = "./DstoKKpiCuts.root", Int_t configuration = AliCFTaskVertexingHF::kSnail, Bool_t isKeepDfromB=kFALSE, Bool_t isKeepDfromBOnly=kFALSE, Int_t pdgCode = 431, Char_t isSign = 2)
//AliCFContainer *AddTaskCFVertexingHF3ProngDs(const char* cutFile = "./DstoKKpiCuts.root", Int_t configuration = AliCFTaskVertexingHF::kSnail, Bool_t isKeepDfromB=kFALSE, Bool_t isKeepDfromBOnly=kFALSE, Int_t pdgCode = 431, Char_t isSign = 2)
{
printf("Addig CF task using cuts from file %s\n",cutFile);
const Int_t nbinpT3_4_8 = 4 ; //bins in pt3 from 4 to 8 GeV
const Int_t nbinpT3_8_10 = 1 ; //bins in pt3 from 8 to 10 GeV
const Int_t nbinzvtx = 30 ; //bins in z vertex
- const Int_t nbincent = 11; //bins in centrality
- const Int_t nbincent_0_10 = 2; //bins in centrality between 0 and 10
- const Int_t nbincent_10_100 = 9; //bins in centrality between 10 and 100
+ const Int_t nbincent = 18; //bins in centrality
+ const Int_t nbincent_0_10 = 4; //bins in centrality between 0 and 10
+ const Int_t nbincent_10_60 = 10; //bins in centrality between 10 and 60
+ const Int_t nbincent_60_100 = 4; //bins in centrality between 60 and 100
const Int_t nbinfake = 3; //bins in fake
const Int_t nbinpointingXY = 50; //bins in cosPointingAngleXY
const Int_t nbinnormDecayLXY = 20; //bins in NormDecayLengthXY
binLimzvtx[i]=(Double_t)zvtxmin + (zvtxmax-zvtxmin) /nbinzvtx*(Double_t)i ;
}
- // centrality
+ // centrality
for(Int_t i=0; i<=nbincent_0_10; i++) binLimcent[i]=(Double_t)centmin_0_10 + (centmax_0_10-centmin_0_10)/nbincent_0_10*(Double_t)i ;
- if (binLimcent[nbincent_0_10] != centmin_10_100) {
- Error("AliCFHeavyFlavourTaskMultiVarMultiStep","Calculated bin lim for cent - 1st range - differs from expected!\n");
+ if (binLimcent[nbincent_0_10] != centmin_10_60) {
+ Error("AliCFHeavyFlavourTaskMultiVarMultiStep","Calculated bin lim for cent - 1st range - differs from expected!\n");
}
- for(Int_t i=0; i<=nbincent_10_100; i++) binLimcent[i+nbincent_0_10]=(Double_t)centmin_10_100 + (centmax_10_100-centmin_10_100)/nbincent_10_100*(Double_t)i ;
+ for(Int_t i=0; i<=nbincent_10_60; i++) binLimcent[i+nbincent_0_10]=(Double_t)centmin_10_60 + (centmax_10_60-centmin_10_60)/nbincent_10_60*(Double_t)i ;
+ if (binLimcent[nbincent_0_10+nbincent_10_60] != centmin_60_100) {
+ Error("AliCFHeavyFlavourTaskMultiVarMultiStep","Calculated bin lim for cent - 2st range - differs from expected!\n");
+ }
+ for(Int_t i=0; i<=nbincent_60_100; i++) binLimcent[i+nbincent_0_10+nbincent_10_60]=(Double_t)centmin_60_100 + (centmax_60_100-centmin_60_100)/nbincent_60_100*(Double_t)i ;
// fake
for(Int_t i=0; i<=nbinfake; i++) {
//one "container" for MC
TString nameContainer="";
if(!isKeepDfromB) {
- nameContainer="CFHFccontainer0_3Prong_CommonFramework";
+ nameContainer="CFHFccontainer0_3ProngDstoKKpi_CommonFramework";
}
else if(isKeepDfromBOnly){
- nameContainer="CFHFccontainer0DfromB_3Prong_CommonFramework";
+ nameContainer="CFHFccontainer0DfromB_3ProngDstoKKpi_CommonFramework";
}
else {
- nameContainer="CFHFccontainer0allD_3Prong_CommonFramework";
+ nameContainer="CFHFccontainer0allD_3ProngDstoKKpi_CommonFramework";
}
nameContainer+=suffixDecayType.Data();
+ nameContainer+=suffixName.Data();
AliCFContainer* container;
if (configuration == AliCFTaskVertexingHF::kSnail){
TString nameCorr="";
if(!isKeepDfromB) {
- nameCorr="CFHFcorr0_3Prong_CommonFramework";
+ nameCorr="CFHFcorr0_3ProngDstoKKpi_CommonFramework";
}
else if(isKeepDfromBOnly){
- nameCorr= "CFHFcorr0KeepDfromBOnly_3Prong_CommonFramework";
+ nameCorr= "CFHFcorr0KeepDfromBOnly_3ProngDstoKKpi_CommonFramework";
}
else {
- nameCorr="CFHFcorr0allD_3Prong_CommonFramework";
+ nameCorr="CFHFcorr0allD_3ProngDstoKKpi_CommonFramework";
}
nameCorr+=suffixDecayType.Data();
+ nameCorr+=suffixName.Data();
THnSparseD* correlation = new THnSparseD(nameCorr,"THnSparse with correlations",4,thnDim);
Double_t** binEdges = new Double_t[2];
output3name=nameCorr;
if(!isKeepDfromB) {
outputfile += ":PWG3_D2H_CFtaskDstoKKpi_CommonFramework";
- output1name="CFHFchist0_3Prong_CommonFramework";
+ output1name="CFHFchist0_3ProngDstoKKpi_CommonFramework";
+ output3name+="_cOnly";
+ output4name= "CutsDdirect_3ProngDs_CommonFramework";
}
else if(isKeepDfromBOnly){
outputfile += ":PWG3_D2H_CFtaskDstoKKpiKeepDfromBOnly_CommonFramework";
- output1name="CFHFchist0DfromB_3Prong_CommonFramework";
+ output1name="CFHFchist0DfromB_3ProngDstoKKpi_CommonFramework";
+ output3name+="_bOnly";
+ output4name= "CutsDfromB_3ProngDs_CommonFramework";
}
else{
outputfile += ":PWG3_D2H_CFtaskDstoKKpiKeepDfromB_CommonFramework";
- output1name="CFHFchist0allD_3Prong_CommonFramework";
+ output1name="CFHFchist0allD_3ProngDstoKKpi_CommonFramework";
+ output3name+="_all";
+ output4name= "CutsallD_3ProngDs_CommonFramework";
}
- output4name= "Cuts_3Prong_CommonFramework";
outputfile += suffixDecayType.Data();
output1name+= suffixDecayType.Data();
output4name+= suffixDecayType.Data();
+
+ outputfile += suffixName.Data();
+ output1name+= suffixName.Data();
+ output4name+= suffixName.Data();
//now comes user's output objects :
// output TH1I for event counting
return task;
}
-