Commit 7fee811b authored by Agnieszka Dziurda's avatar Agnieszka Dziurda
Browse files

Merge branch 'dev_B2DXFitters_run2' into 'master'

Update for DsPi Run 2 analysis

See merge request lhcb/Urania!222
parents 90b6be7d 499cc421
......@@ -43,6 +43,8 @@ namespace BasicMDFitPdf {
// "Double" shapes //
RooAbsPdf* buildDoubleCrystalBallPDF( RooAbsReal& mass, RooWorkspace* workInt, TString samplemode, TString typemode,
bool widthRatio = false, bool sharedMean = false, bool debug = false);
RooAbsPdf* buildDoubleCrystalBallGaussianPDF( RooAbsReal& mass, RooWorkspace* workInt, TString samplemode, TString typemode,
bool widthRatio = false, bool sharedMean = false, bool debug = false);
RooAbsPdf* buildDoubleGaussPDF( RooAbsReal& mass, RooWorkspace* workInt, TString samplemode, TString typemode,
bool widthRatio = false, bool sharedMean =false, bool separeteMean=false, bool shiftMean=false, bool debug = false);
RooAbsPdf* buildDoubleExponentialPDF(RooAbsReal& mass, RooWorkspace* workInt, TString samplemode, TString typemode, bool debug = false);
......
......@@ -129,6 +129,8 @@ namespace Bd2DhModels {
TString typemode,
bool shiftMean = false,
bool scaleTails = false,
bool widthRatio = false,
bool scaleWidths = false,
bool debug = true);
RooAbsPdf* buildIpatiaGaussConvPDF(RooRealVar& obs,
......
......@@ -19,6 +19,7 @@ namespace Bs2Dsh2011TDAnaModels {
RooAbsPdf* buildShiftedDoubleCrystalBallPDF(RooAbsReal& mass, RooWorkspace* workInt,
TString samplemode, TString typemode, bool debug = false);
RooAbsPdf* buildGeneralPdfMDFit(RooWorkspace* workInt, RooWorkspace* work,
std::vector <TString> bkg,
std::vector <RooAbsReal*> obs,
......
......@@ -47,15 +47,14 @@ namespace SFitUtils {
RooWorkspace* ReadDataFromSWeights(TString& pathFile,
TString& treeName,
MDFitterSettings* mdSet,
TString pol,
TString mode,
TString year,
TString hypo,
TString merge,
std::vector<TString> sm,
TString hypo,
bool weighted = true,
bool toys = false,
bool applykfactor = false,
bool sWeightsCorr = false,
RooWorkspace* workspace = NULL,
TString label = "",
bool debug = false
);
......@@ -74,6 +73,7 @@ namespace SFitUtils {
RooArgList* CreateDifferentMistagTemplates(RooDataSet* data, MDFitterSettings* mdSet,
Int_t bins,
bool save = false,
TString label = "",
bool debug = false);
......
def getconfig() :
from Bs2DsPiConfigForNominalMassFit import getconfig as getconfig_nominal
configdict = getconfig_nominal()
from math import pi
# PHYSICAL PARAMETERS
configdict["Gammas"] = 0.6643 #0.0020 # in ps^{-1}
configdict["DeltaGammas"] = -0.083 #-0.006
configdict["DeltaMs"] = 17.757 # in ps^{-1}
configdict["TagEffSig"] = 0.403
configdict["TagOmegaSig"] = 0.391
configdict["StrongPhase"] = 20. / 180. * pi
configdict["WeakPhase"] = 70./180.*pi
configdict["ModLf"] = 0.372
configdict["CPlimit"] = {"upper":4.0, "lower":-4.0}
configdict["Asymmetries"] = {"Detection":1.0/100.0,
"Production":1.1/100.0}
# configdict["Asymmetries"] = {"Detection":0.0,
# "Production":0.0}
configdict["FixAcceptance"] = False
configdict["ConstrainsForTaggingCalib"] = False
configdict["Resolution"] = {"scaleFactor":{"p0":0.0144612, "p1":0.9686, "p2":0.0},
"meanBias":0.0}
configdict["TaggingCalibration"] = {}
configdict["TaggingCalibration"]["SS"] = {"p0": 0.44119, "dp0": 0.0, "p1": 1.0868, "dp1": 0.0,
"cov": [ [2.903e-05, 0.0, 0.0001613, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0001613, 0.0, 0.006101, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.4005, "tagEff":0.6896, "aTagEff":0.0, "use":True}
configdict["TaggingCalibration"]["OS"] = {"p0": 0.37718, "dp0": 0.0, "p1": 1.1244, "dp1": 0.0,
"cov": [ [5.212e-05, 0.0, 0.0002286, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0002286, 0.0, 0.006685, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.3287, "tagEff":0.3817, "aTagEff":0.0, "use":True}
configdict["Acceptance"] = {"knots": [0.50, 1.0, 1.5, 2.0, 3.0, 12.0],
"values": [3.774e-01,5.793e-01,7.752e-01,1.0043e+00,1.0937e+00,1.1872e+00] }
configdict["constParams"] = []
configdict["constParams"].append('Gammas_Bs2DsPi')
configdict["constParams"].append('deltaGammas_Bs2DsPi')
configdict["constParams"].append('C_Bs2DsPi')
configdict["constParams"].append('Cbar_Bs2DsPi')
configdict["constParams"].append('S_Bs2DsPi')
configdict["constParams"].append('Sbar_Bs2DsPi')
configdict["constParams"].append('D_Bs2DsPi')
configdict["constParams"].append('Dbar_Bs2DsPi')
configdict["constParams"].append('tagEff_OS')
configdict["constParams"].append('tagEff_SS')
configdict["constParams"].append('tagEff_Both')
configdict["constParams"].append('aTagEff_OS')
configdict["constParams"].append('aTagEff_SS')
configdict["constParams"].append('aTagEff_Both')
if configdict["FixAcceptance"] == True:
configdict["constParams"].append('var1')
configdict["constParams"].append('var2')
configdict["constParams"].append('var3')
configdict["constParams"].append('var4')
configdict["constParams"].append('var5')
configdict["constParams"].append('var6')
configdict["constParams"].append('var7')
#if configdict["ConstrainsForTaggingCalib"] == False:
# configdict["constParams"].append('p0_OS')
# configdict["constParams"].append('p0_SS')
# configdict["constParams"].append('p1_OS')
# configdict["constParams"].append('p1_SS')
configdict["constParams"].append('dp0_OS')
configdict["constParams"].append('dp0_SS')
configdict["constParams"].append('dp1_OS')
configdict["constParams"].append('dp1_SS')
configdict["constParams"].append('p0_mean_OS')
configdict["constParams"].append('p0_mean_SS')
configdict["constParams"].append('p1_mean_OS')
configdict["constParams"].append('p1_mean_SS')
configdict["constParams"].append('dp0_mean_OS')
configdict["constParams"].append('dp0_mean_SS')
configdict["constParams"].append('dp1_mean_OS')
configdict["constParams"].append('dp1_mean_SS')
configdict["constParams"].append('average_OS')
configdict["constParams"].append('average_SS')
# configdict["constParams"].append('DeltaMs_Bs2DsPi')
return configdict
def getconfig() :
from Bs2DsPiConfigForNominalMassFit import getconfig as getconfig_nominal
configdict = getconfig_nominal()
from math import pi
# PHYSICAL PARAMETERS
configdict["Gammas"] = 0.6643 #0.0020 # in ps^{-1}
configdict["DeltaGammas"] = -0.083 #-0.006
configdict["DeltaMs"] = 17.757 # in ps^{-1}
configdict["TagEffSig"] = 0.403
configdict["TagOmegaSig"] = 0.391
configdict["StrongPhase"] = 20. / 180. * pi
configdict["WeakPhase"] = 70./180.*pi
configdict["ModLf"] = 0.372
configdict["CPlimit"] = {"upper":4.0, "lower":-4.0}
configdict["Asymmetries"] = {"Detection":1.0/100.0,
"Production":1.1/100.0}
# configdict["Asymmetries"] = {"Detection":0.0,
# "Production":0.0}
configdict["FixAcceptance"] = False
configdict["ConstrainsForTaggingCalib"] = False
configdict["Resolution"] = {"scaleFactor":{"p0":0.01197, "p1":0.9794, "p2":0.0},
"meanBias":0.0}
configdict["TaggingCalibration"] = {}
configdict["TaggingCalibration"]["SS"] = {"p0": 0.44119, "dp0": 0.0, "p1": 1.0868, "dp1": 0.0,
"cov": [ [2.903e-05, 0.0, 0.0001613, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0001613, 0.0, 0.006101, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.4043, "tagEff":0.6973, "aTagEff":0.0, "use":True}
configdict["TaggingCalibration"]["OS"] = {"p0": 0.37718, "dp0": 0.0, "p1": 1.1244, "dp1": 0.0,
"cov": [ [5.212e-05, 0.0, 0.0002286, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0002286, 0.0, 0.006685, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.3318, "tagEff":0.4038, "aTagEff":0.0, "use":True}
configdict["Acceptance"] = {"knots": [0.50, 1.0, 1.5, 2.0, 3.0, 12.0],
"values": [3.774e-01,5.793e-01,7.752e-01,1.0043e+00,1.0937e+00,1.1872e+00] }
configdict["constParams"] = []
configdict["constParams"].append('Gammas_Bs2DsPi')
configdict["constParams"].append('deltaGammas_Bs2DsPi')
configdict["constParams"].append('C_Bs2DsPi')
configdict["constParams"].append('Cbar_Bs2DsPi')
configdict["constParams"].append('S_Bs2DsPi')
configdict["constParams"].append('Sbar_Bs2DsPi')
configdict["constParams"].append('D_Bs2DsPi')
configdict["constParams"].append('Dbar_Bs2DsPi')
configdict["constParams"].append('tagEff_OS')
configdict["constParams"].append('tagEff_SS')
configdict["constParams"].append('tagEff_Both')
configdict["constParams"].append('aTagEff_OS')
configdict["constParams"].append('aTagEff_SS')
configdict["constParams"].append('aTagEff_Both')
if configdict["FixAcceptance"] == True:
configdict["constParams"].append('var1')
configdict["constParams"].append('var2')
configdict["constParams"].append('var3')
configdict["constParams"].append('var4')
configdict["constParams"].append('var5')
configdict["constParams"].append('var6')
configdict["constParams"].append('var7')
#if configdict["ConstrainsForTaggingCalib"] == False:
# configdict["constParams"].append('p0_OS')
# configdict["constParams"].append('p0_SS')
# configdict["constParams"].append('p1_OS')
# configdict["constParams"].append('p1_SS')
configdict["constParams"].append('dp0_OS')
configdict["constParams"].append('dp0_SS')
configdict["constParams"].append('dp1_OS')
configdict["constParams"].append('dp1_SS')
configdict["constParams"].append('p0_mean_OS')
configdict["constParams"].append('p0_mean_SS')
configdict["constParams"].append('p1_mean_OS')
configdict["constParams"].append('p1_mean_SS')
configdict["constParams"].append('dp0_mean_OS')
configdict["constParams"].append('dp0_mean_SS')
configdict["constParams"].append('dp1_mean_OS')
configdict["constParams"].append('dp1_mean_SS')
configdict["constParams"].append('average_OS')
configdict["constParams"].append('average_SS')
# configdict["constParams"].append('DeltaMs_Bs2DsPi')
return configdict
def getconfig() :
from Bs2DsPiConfigForNominalMassFit import getconfig as getconfig_nominal
configdict = getconfig_nominal()
from math import pi
# PHYSICAL PARAMETERS
configdict["Gammas"] = 0.6643 #0.0020 # in ps^{-1}
configdict["DeltaGammas"] = -0.083 #-0.006
configdict["DeltaMs"] = 17.757 # in ps^{-1}
configdict["TagEffSig"] = 0.403
configdict["TagOmegaSig"] = 0.391
configdict["StrongPhase"] = 20. / 180. * pi
configdict["WeakPhase"] = 70./180.*pi
configdict["ModLf"] = 0.372
configdict["CPlimit"] = {"upper":4.0, "lower":-4.0}
configdict["Labels"] = ["20152016","2017"]
configdict["Asymmetries"] = {"Detection":1.0/100.0,
"Production":1.1/100.0}
# configdict["Asymmetries"] = {"Detection":0.0,
# "Production":0.0}
configdict["FixAcceptance"] = False
configdict["ConstrainsForTaggingCalib"] = False
configdict["Resolution"] = { "20152016": {"scaleFactor":{"p0":0.0144612, "p1":0.9686, "p2":0.0},
"meanBias":0.0},
"2017": {"scaleFactor":{"p0":0.01197, "p1":0.9794, "p2":0.0},
"meanBias":0.0}
}
configdict["TaggingCalibration"] = {}
configdict["TaggingCalibration"]["SS"] = {"20152016":
{"p0": 0.44119, "dp0": 0.0, "p1": 1.0868, "dp1": 0.0,
"cov": [ [2.903e-05, 0.0, 0.0001613, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0001613, 0.0, 0.006101, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.4005, "tagEff":0.6896, "aTagEff":0.0, "use":True},
"2017":
{"p0": 0.44119, "dp0": 0.0, "p1": 1.0868, "dp1": 0.0,
"cov": [ [2.903e-05, 0.0, 0.0001613, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0001613, 0.0, 0.006101, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.4043, "tagEff":0.6973, "aTagEff":0.0, "use":True}}
configdict["TaggingCalibration"]["OS"] = {"20152016":
{"p0": 0.37718, "dp0": 0.0, "p1": 1.1244, "dp1": 0.0,
"cov": [ [5.212e-05, 0.0, 0.0002286, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0002286, 0.0, 0.006685, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.3287, "tagEff":0.3817, "aTagEff":0.0, "use":True},
"2017":
{"p0": 0.37718, "dp0": 0.0, "p1": 1.1244, "dp1": 0.0,
"cov": [ [5.212e-05, 0.0, 0.0002286, 0.0],
[0.0, 1.0, 0.0, 0.0],
[0.0002286, 0.0, 0.006685, 0.0],
[0.0, 0.0, 0.0, 1.0]],
"average": 0.3318, "tagEff":0.4038, "aTagEff":0.0, "use":True}}
configdict["Acceptance"] = { "knots": [0.50, 1.0, 1.5, 2.0, 3.0, 12.0],
"20152016": { "values": [3.774e-01, 5.793e-01, 7.752e-01, 1.0043e+00, 1.0937e+00, 1.1872e+00] },
"2017": { "values": [3.774e-01, 5.793e-01, 7.752e-01, 1.0043e+00, 1.0937e+00, 1.1872e+00] }
}
#configdict["Acceptance"] = {"knots": [0.50, 1.0, 1.5, 2.0, 3.0, 12.0],
# "values": [3.774e-01,5.793e-01,7.752e-01,1.0043e+00,1.0937e+00,1.1872e+00] }
configdict["constParams"] = []
configdict["constParams"].append('Gammas_Bs2DsPi')
configdict["constParams"].append('deltaGammas_Bs2DsPi')
configdict["constParams"].append('C_Bs2DsPi')
configdict["constParams"].append('Cbar_Bs2DsPi')
configdict["constParams"].append('S_Bs2DsPi')
configdict["constParams"].append('Sbar_Bs2DsPi')
configdict["constParams"].append('D_Bs2DsPi')
configdict["constParams"].append('Dbar_Bs2DsPi')
configdict["constParams"].append('tagEff_OS')
configdict["constParams"].append('tagEff_SS')
configdict["constParams"].append('aTagEff_OS')
configdict["constParams"].append('aTagEff_SS')
if configdict["FixAcceptance"] == True:
configdict["constParams"].append('var1')
configdict["constParams"].append('var2')
configdict["constParams"].append('var3')
configdict["constParams"].append('var4')
configdict["constParams"].append('var5')
configdict["constParams"].append('var6')
configdict["constParams"].append('var7')
#if configdict["ConstrainsForTaggingCalib"] == False:
# configdict["constParams"].append('p0_OS')
# configdict["constParams"].append('p0_SS')
# configdict["constParams"].append('p1_OS')
# configdict["constParams"].append('p1_SS')
configdict["constParams"].append('dp0_OS')
configdict["constParams"].append('dp0_SS')
configdict["constParams"].append('dp1_OS')
configdict["constParams"].append('dp1_SS')
configdict["constParams"].append('p0_mean_OS')
configdict["constParams"].append('p0_mean_SS')
configdict["constParams"].append('p1_mean_OS')
configdict["constParams"].append('p1_mean_SS')
configdict["constParams"].append('dp0_mean_OS')
configdict["constParams"].append('dp0_mean_SS')
configdict["constParams"].append('dp1_mean_OS')
configdict["constParams"].append('dp1_mean_SS')
configdict["constParams"].append('average_OS')
configdict["constParams"].append('average_SS')
constPar = configdict["constParams"]
configdict["addConstParams"] = []
for const in constPar:
for lab in configdict["Labels"]:
nameVar = const + "_"+lab
configdict["addConstParams"].append(nameVar)
configdict["constParams"] = configdict["constParams"] + configdict["addConstParams"]
return configdict
#Bs2DsPi NonRes 2015
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2015_Down_Bs2DsPi_OFFLINE_NonRes.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_NonRes.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2015_Down_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PhiPi 2015
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2015_Down_Bs2DsPi_OFFLINE_PhiPi.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_PhiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2015_Down_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KstK 2015
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2015_Down_Bs2DsPi_OFFLINE_KstK.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_KstK.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2015_Down_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KPiPi 2015
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2015_Down_Bs2DsPi_OFFLINE_KPiPi.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_KPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2015_Down_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PiPiPi 2015
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2015_Down_Bs2DsPi_OFFLINE_PiPiPi.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_PiPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2015_Down_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
B2DX_2015_Up_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi NonRes 2016
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2016_Down_Bs2DsPi_OFFLINE_NonRes.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_NonRes.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2016_Down_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PhiPi 2016
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2016_Down_Bs2DsPi_OFFLINE_PhiPi.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_PhiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2016_Down_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KstK 2016
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2016_Down_Bs2DsPi_OFFLINE_KstK.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_KstK.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2016_Down_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KPiPi 2016
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2016_Down_Bs2DsPi_OFFLINE_KPiPi.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_KPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2016_Down_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PiPiPi 2016
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2016_Down_Bs2DsPi_OFFLINE_PiPiPi.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_PiPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2016_Down_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
B2DX_2016_Up_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi NonRes 2017
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2017_Down_Bs2DsPi_OFFLINE_NonRes.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_NonRes.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2017_Down_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_NonRes_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PhiPi 2017
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2017_Down_Bs2DsPi_OFFLINE_PhiPi.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_PhiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2017_Down_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_PhiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KstK 2017
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2017_Down_Bs2DsPi_OFFLINE_KstK.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_KstK.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2017_Down_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_KstK_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi KPiPi 2017
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2017_Down_Bs2DsPi_OFFLINE_KPiPi.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_KPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2017_Down_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_KPiPi_withOSCombination.root
DecayTree
DecayTree
###
#Bs2DsPi PiPiPi 2017
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2/FINAL/
B2DX_2017_Down_Bs2DsPi_OFFLINE_PiPiPi.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_PiPiPi.root
/eos/lhcb/wg/b2oc/DsK_Run2/Data_FT_2017_v4_Run2_withMomentumScale/FINAL_withOSCombination/
B2DX_2017_Down_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
B2DX_2017_Up_Bs2DsPi_OFFLINE_PiPiPi_withOSCombination.root
DecayTree
DecayTree
###
#MC FileName KKPi MD 2015
{"Mode":"Bd2DPi",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MERGED_BDTG_noCNAF/Bd_D-pi_2015_Down/Bd_D-pi_2015_Down_Bs.root",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MC_TISTOS_fixed/FINAL/B2DX_MC_Bd_D-pi_2015_dw_Bs_BDT.root",
"TreeName":"DecayTree"}
{"Mode":"Bs2DsRho",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MERGED_BDTG_noCNAF/Bs_Dsrho_KKpi_2015_Down/Bs_Dsrho_KKpi_2015_Down_Bs.root",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MC_TISTOS_fixed/FINAL/B2DX_MC_Bs_Dsrho_KKpi_2015_dw_Bs_BDT.root",
"TreeName":"DecayTree"}
{"Mode":"Bs2DsstPi",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MERGED_BDTG_noCNAF/Bs_Dsstpi_KKpi_2015_Down/Bs_Dsstpi_KKpi_2015_Down_Bs.root",
"FileName":"/eos/lhcb/wg/b2oc/DsK_Run2/MC_TISTOS_fixed/FINAL/B2DX_MC_Bs_Dsstpi_KKpi_2015_dw_Bs_BDT.root",
"TreeName":"DecayTree"}