diff --git a/CMakeLists.txt b/CMakeLists.txt index f11cc7a691623a2f234cd61a687ae61f4346b6c8..e055187fcd79e0d1046b7ff2580f4b5b46098b61 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -77,7 +77,7 @@ lhcb_add_subdirectories( Phys/DaVinciTypes Phys/DecayTreeFitter Phys/ExtraInfoTools - Phys/FunctionalFlavourTagging + Phys/FlavourTagging Phys/GenericVertexFinder Phys/JetAccessories Phys/KalmanFilter diff --git a/Phys/FunctionalFlavourTagging/CMakeLists.txt b/Phys/FlavourTagging/CMakeLists.txt similarity index 91% rename from Phys/FunctionalFlavourTagging/CMakeLists.txt rename to Phys/FlavourTagging/CMakeLists.txt index 2f9d4442f902ec7925b7b01f25f09692ad54139c..d730f13639fba1bdb5c28f8c4da716521741e630 100644 --- a/Phys/FunctionalFlavourTagging/CMakeLists.txt +++ b/Phys/FlavourTagging/CMakeLists.txt @@ -9,23 +9,23 @@ # or submit itself to any jurisdiction. # ############################################################################### #[=======================================================================[.rst: -Phys/FunctionalFlavourTagging +Phys/Run2FlavourTagging ------------------- #]=======================================================================] -gaudi_add_module(FunctionalFlavourTagging +gaudi_add_module(Run2FlavourTagging SOURCES src/AdvancedCloneKiller.cpp - src/FunctionalOSMuonTagger.cpp - src/FunctionalOSKaonTagger.cpp - src/FunctionalOSElectronTagger.cpp - src/FunctionalSSKaonTagger.cpp - src/FunctionalSSPionTagger.cpp - src/FunctionalSSProtonTagger.cpp - src/FunctionalOSVertexChargeTagger.cpp + src/Run2OSMuonTagger.cpp + src/Run2OSKaonTagger.cpp + src/Run2OSElectronTagger.cpp + src/Run2SSKaonTagger.cpp + src/Run2SSPionTagger.cpp + src/Run2SSProtonTagger.cpp + src/Run2OSVertexChargeTagger.cpp src/Utils/TaggingHelperTool.cpp - src/ParticleTaggerAlg.cpp + src/Utils/ParticleTaggerAlg.cpp src/GetFlavourTaggingParticles.cpp src/FlavourTagsMerger.cpp Classification/TaggingClassifierTMVA.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/ITaggingClassifier.h b/Phys/FlavourTagging/Classification/ITaggingClassifier.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/ITaggingClassifier.h rename to Phys/FlavourTagging/Classification/ITaggingClassifier.h diff --git a/Phys/FunctionalFlavourTagging/Classification/OSElectron/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h b/Phys/FlavourTagging/Classification/OSElectron/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSElectron/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h rename to Phys/FlavourTagging/Classification/OSElectron/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h diff --git a/Phys/FunctionalFlavourTagging/Classification/OSElectron/weights/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp b/Phys/FlavourTagging/Classification/OSElectron/weights/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSElectron/weights/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp rename to Phys/FlavourTagging/Classification/OSElectron/weights/OSElectron_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/OSKaon/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.h b/Phys/FlavourTagging/Classification/OSKaon/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSKaon/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.h rename to Phys/FlavourTagging/Classification/OSKaon/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.h diff --git a/Phys/FunctionalFlavourTagging/Classification/OSKaon/weights/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.cpp b/Phys/FlavourTagging/Classification/OSKaon/weights/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSKaon/weights/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.cpp rename to Phys/FlavourTagging/Classification/OSKaon/weights/OSKaon_Data_Run2_All_Bu2JpsiK_XGBoost_BDT_v2r0.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/OSMuon/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h b/Phys/FlavourTagging/Classification/OSMuon/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSMuon/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h rename to Phys/FlavourTagging/Classification/OSMuon/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.h diff --git a/Phys/FunctionalFlavourTagging/Classification/OSMuon/weights/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp b/Phys/FlavourTagging/Classification/OSMuon/weights/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSMuon/weights/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp rename to Phys/FlavourTagging/Classification/OSMuon/weights/OSMuon_Data_Run2_All_Bu2JpsiK_XGB_BDT_v2r0.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/OSVertexCharge/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.h b/Phys/FlavourTagging/Classification/OSVertexCharge/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSVertexCharge/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.h rename to Phys/FlavourTagging/Classification/OSVertexCharge/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.h diff --git a/Phys/FunctionalFlavourTagging/Classification/OSVertexCharge/weights/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.cpp b/Phys/FlavourTagging/Classification/OSVertexCharge/weights/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/OSVertexCharge/weights/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.cpp rename to Phys/FlavourTagging/Classification/OSVertexCharge/weights/OSVtxCh_Data_Run1_All_Bu2JpsiK_TMVA_MLP_v1r0.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.cpp b/Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.cpp rename to Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.h b/Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.h rename to Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTeta_dev.h diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.cpp b/Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.cpp rename to Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.h b/Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.h rename to Phys/FlavourTagging/Classification/SSKaon/SSKaon_BDTseltracks_dev.h diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.class.C diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/BDTeta_SSK_dev/TMVAClassification_BDTG_BsBsb_6vars_BDTGselTCut_0.72.weights.xml diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.class.C b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.class.C similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.class.C rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.class.C diff --git a/Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.weights.xml b/Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.weights.xml similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.weights.xml rename to Phys/FlavourTagging/Classification/SSKaon/weights/BDTseltracks_SSK_dev/TMVAClassification_BDTG_selBestTracks_14vars.weights.xml diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h b/Phys/FlavourTagging/Classification/SSPion/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h rename to Phys/FlavourTagging/Classification/SSPion/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp b/Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp rename to Phys/FlavourTagging/Classification/SSPion/weights/SSPion_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h b/Phys/FlavourTagging/Classification/SSProton/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h rename to Phys/FlavourTagging/Classification/SSProton/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1.h diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.class.C b/Phys/FlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.class.C similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.class.C rename to Phys/FlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.class.C diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.weights.xml b/Phys/FlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.weights.xml similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.weights.xml rename to Phys/FlavourTagging/Classification/SSProton/weights/BDT_SSproton_Reco14.weights.xml diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_0-299.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1200-1499.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1500-1799.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_1800-2099.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2100-2399.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2400-2699.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_2700-2999.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_300-599.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_600-899.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp b/Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp rename to Phys/FlavourTagging/Classification/SSProton/weights/SSProton_Data_Run1_All_Bd2Dpi_TMVA_BDT_v1r1_900-1199.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/TaggingClassifierTMVA.cpp b/Phys/FlavourTagging/Classification/TaggingClassifierTMVA.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/TaggingClassifierTMVA.cpp rename to Phys/FlavourTagging/Classification/TaggingClassifierTMVA.cpp diff --git a/Phys/FunctionalFlavourTagging/Classification/TaggingClassifierTMVA.h b/Phys/FlavourTagging/Classification/TaggingClassifierTMVA.h similarity index 100% rename from Phys/FunctionalFlavourTagging/Classification/TaggingClassifierTMVA.h rename to Phys/FlavourTagging/Classification/TaggingClassifierTMVA.h diff --git a/Phys/FunctionalFlavourTagging/src/AdvancedCloneKiller.cpp b/Phys/FlavourTagging/src/AdvancedCloneKiller.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/src/AdvancedCloneKiller.cpp rename to Phys/FlavourTagging/src/AdvancedCloneKiller.cpp diff --git a/Phys/FunctionalFlavourTagging/src/FlavourTagsMerger.cpp b/Phys/FlavourTagging/src/FlavourTagsMerger.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/src/FlavourTagsMerger.cpp rename to Phys/FlavourTagging/src/FlavourTagsMerger.cpp diff --git a/Phys/FunctionalFlavourTagging/src/GetFlavourTaggingParticles.cpp b/Phys/FlavourTagging/src/GetFlavourTaggingParticles.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/src/GetFlavourTaggingParticles.cpp rename to Phys/FlavourTagging/src/GetFlavourTaggingParticles.cpp diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalOSElectronTagger.cpp b/Phys/FlavourTagging/src/Run2OSElectronTagger.cpp similarity index 93% rename from Phys/FunctionalFlavourTagging/src/FunctionalOSElectronTagger.cpp rename to Phys/FlavourTagging/src/Run2OSElectronTagger.cpp index 6d107abb2ee9267d043e2e2bb10378e1b7d74773..fde5170874e8fd3e064a57b5854bdb15fcb98ca8 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalOSElectronTagger.cpp +++ b/Phys/FlavourTagging/src/Run2OSElectronTagger.cpp @@ -21,14 +21,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalOSElectronTagger +class Run2OSElectronTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalOSElectronTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2OSElectronTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingElectrons", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -93,12 +93,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalOSElectronTagger ) +DECLARE_COMPONENT( Run2OSElectronTagger ) -LHCb::FlavourTags FunctionalOSElectronTagger:: - operator()( const LHCb::Particle::Range& bCandidates, const LHCb::Particle::Range& taggingElectrons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2OSElectronTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingElectrons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate @@ -151,9 +151,9 @@ LHCb::FlavourTags FunctionalOSElectronTagger:: } std::optional -FunctionalOSElectronTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingElectrons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2OSElectronTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingElectrons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { Gaudi::LorentzVector b_mom = bCand.momentum(); // find PV that best fits the B candidate diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalOSKaonTagger.cpp b/Phys/FlavourTagging/src/Run2OSKaonTagger.cpp similarity index 92% rename from Phys/FunctionalFlavourTagging/src/FunctionalOSKaonTagger.cpp rename to Phys/FlavourTagging/src/Run2OSKaonTagger.cpp index 6a442eb18a989a410aa3b0390598245ce427d18f..f4836c654f194377f914b156e9372fd848c2e13d 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalOSKaonTagger.cpp +++ b/Phys/FlavourTagging/src/Run2OSKaonTagger.cpp @@ -19,14 +19,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalOSKaonTagger +class Run2OSKaonTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalOSKaonTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2OSKaonTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingKaons", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -82,12 +82,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalOSKaonTagger ) +DECLARE_COMPONENT( Run2OSKaonTagger ) -LHCb::FlavourTags FunctionalOSKaonTagger::operator()( const LHCb::Particle::Range& bCandidates, - const LHCb::Particle::Range& taggingKaons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2OSKaonTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingKaons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate @@ -140,9 +140,9 @@ LHCb::FlavourTags FunctionalOSKaonTagger::operator()( const LHCb::Particle::Rang } std::optional -FunctionalOSKaonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingKaons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2OSKaonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingKaons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { Gaudi::LorentzVector b_mom = bCand.momentum(); // find PV that best fits the B candidate diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalOSMuonTagger.cpp b/Phys/FlavourTagging/src/Run2OSMuonTagger.cpp similarity index 92% rename from Phys/FunctionalFlavourTagging/src/FunctionalOSMuonTagger.cpp rename to Phys/FlavourTagging/src/Run2OSMuonTagger.cpp index 7d7a773f01e6543e941bc9121eddfe3e9ce59647..3cdbd582b29a52246c9aa62c15880a96e3cc90a2 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalOSMuonTagger.cpp +++ b/Phys/FlavourTagging/src/Run2OSMuonTagger.cpp @@ -18,14 +18,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalOSMuonTagger +class Run2OSMuonTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalOSMuonTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2OSMuonTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingMuons", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -77,12 +77,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalOSMuonTagger ) +DECLARE_COMPONENT( Run2OSMuonTagger ) -LHCb::FlavourTags FunctionalOSMuonTagger::operator()( const LHCb::Particle::Range& bCandidates, - const LHCb::Particle::Range& taggingMuons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2OSMuonTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingMuons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate @@ -135,9 +135,9 @@ LHCb::FlavourTags FunctionalOSMuonTagger::operator()( const LHCb::Particle::Rang } std::optional -FunctionalOSMuonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingMuons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2OSMuonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingMuons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { Gaudi::LorentzVector b_mom = bCand.momentum(); // find PV that best fits the B candidate diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalOSVertexChargeTagger.cpp b/Phys/FlavourTagging/src/Run2OSVertexChargeTagger.cpp similarity index 93% rename from Phys/FunctionalFlavourTagging/src/FunctionalOSVertexChargeTagger.cpp rename to Phys/FlavourTagging/src/Run2OSVertexChargeTagger.cpp index fbe5d7420f115ef4326174f939caafdd7b25fce8..3d43b780020b35333b9fe90be9ebb0198d7e1acf 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalOSVertexChargeTagger.cpp +++ b/Phys/FlavourTagging/src/Run2OSVertexChargeTagger.cpp @@ -20,14 +20,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalOSVertexChargeTagger +class Run2OSVertexChargeTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalOSVertexChargeTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2OSVertexChargeTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingParticles", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -104,12 +104,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalOSVertexChargeTagger ) +DECLARE_COMPONENT( Run2OSVertexChargeTagger ) -LHCb::FlavourTags FunctionalOSVertexChargeTagger:: - operator()( const LHCb::Particle::Range& bCandidates, const LHCb::Particle::Range& taggingParticles, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2OSVertexChargeTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingParticles, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate @@ -161,9 +161,10 @@ LHCb::FlavourTags FunctionalOSVertexChargeTagger:: return flavourTags; } -std::optional FunctionalOSVertexChargeTagger::performTagging( - const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingParticles, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, const IGeometryInfo& geometry ) const { +std::optional +Run2OSVertexChargeTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingParticles, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { // find PV that best fits the B candidate const LHCb::VertexBase* bestPV = LHCb::bestPV( primaryVertices, bCand ); if ( bestPV == nullptr ) return std::nullopt; @@ -259,9 +260,9 @@ std::optional FunctionalOSVertexChargeTagger::performTagging( } std::optional -FunctionalOSVertexChargeTagger::buildSecondaryVertex( const LHCb::VertexBase& primaryVertex, - const LHCb::Particle::Range& taggingParticles, - const IGeometryInfo& geometry ) const { +Run2OSVertexChargeTagger::buildSecondaryVertex( const LHCb::VertexBase& primaryVertex, + const LHCb::Particle::Range& taggingParticles, + const IGeometryInfo& geometry ) const { // Ported from SVertexOneSeedTool.cpp const LHCb::Particle* seedA = nullptr; const LHCb::Particle* seedB = nullptr; @@ -450,7 +451,7 @@ FunctionalOSVertexChargeTagger::buildSecondaryVertex( const LHCb::VertexBase& return secondaryVertex; } -bool FunctionalOSVertexChargeTagger::passVertexSeedTrackCut( const LHCb::Particle* candidate ) const { +bool Run2OSVertexChargeTagger::passVertexSeedTrackCut( const LHCb::Particle* candidate ) const { if ( !( candidate->proto() ) ) return false; const LHCb::Track* track = candidate->proto()->track(); @@ -479,8 +480,7 @@ bool FunctionalOSVertexChargeTagger::passVertexSeedTrackCut( const LHCb::Particl return true; } -bool FunctionalOSVertexChargeTagger::passVertexSeedIpCut( const double absIp, const double ipErr, - const double ipSig ) const { +bool Run2OSVertexChargeTagger::passVertexSeedIpCut( const double absIp, const double ipErr, const double ipSig ) const { if ( LHCb::essentiallyZero( ipErr ) ) return false; // SVertexOneSeedTool.cpp::L368,L389 if ( ipErr > 1.0 ) return false; // SVertexOneSeedTool.cpp::L369,L390 if ( ipSig < 2.5 ) return false; // SVertexOneSeedTool.cpp::L370,L391 @@ -491,7 +491,7 @@ bool FunctionalOSVertexChargeTagger::passVertexSeedIpCut( const double absIp, co return true; } -double FunctionalOSVertexChargeTagger::polynomail( double x, std::vector coefficients ) const { +double Run2OSVertexChargeTagger::polynomail( double x, std::vector coefficients ) const { double accumulate = 0.; double exponent = 1.; @@ -503,8 +503,8 @@ double FunctionalOSVertexChargeTagger::polynomail( double x, std::vector return accumulate; } -double FunctionalOSVertexChargeTagger::combine( double p1, double p2, double p3, double p4, double p5, double p6, - double p7 ) const { +double Run2OSVertexChargeTagger::combine( double p1, double p2, double p3, double p4, double p5, double p6, + double p7 ) const { const double probs = p1 * p2 * p3 * p4 * p5 * p6 * p7; const double probb = ( 1 - p1 ) * ( 1 - p2 ) * ( 1 - p3 ) * ( 1 - p4 ) * ( 1 - p5 ) * ( 1 - p6 ) * ( 1 - p7 ); diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalSSKaonTagger.cpp b/Phys/FlavourTagging/src/Run2SSKaonTagger.cpp similarity index 93% rename from Phys/FunctionalFlavourTagging/src/FunctionalSSKaonTagger.cpp rename to Phys/FlavourTagging/src/Run2SSKaonTagger.cpp index d364485ca26b774f4b6118fc48063bd837a609a1..32afad8e7bceecd4c9b0220ffc2fafb3d0b6afb0 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalSSKaonTagger.cpp +++ b/Phys/FlavourTagging/src/Run2SSKaonTagger.cpp @@ -20,14 +20,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalSSKaonTagger +class Run2SSKaonTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalSSKaonTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2SSKaonTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingKaons", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -97,12 +97,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalSSKaonTagger ) +DECLARE_COMPONENT( Run2SSKaonTagger ) -LHCb::FlavourTags FunctionalSSKaonTagger::operator()( const LHCb::Particle::Range& bCandidates, - const LHCb::Particle::Range& taggingKaons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2SSKaonTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingKaons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate LHCb::FlavourTags flavourTags; @@ -158,9 +158,9 @@ LHCb::FlavourTags FunctionalSSKaonTagger::operator()( const LHCb::Particle::Rang } std::optional -FunctionalSSKaonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingKaons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2SSKaonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingKaons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { Gaudi::LorentzVector b_mom = bCand.momentum(); // find PV that best fits the B candidate diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalSSPionTagger.cpp b/Phys/FlavourTagging/src/Run2SSPionTagger.cpp similarity index 92% rename from Phys/FunctionalFlavourTagging/src/FunctionalSSPionTagger.cpp rename to Phys/FlavourTagging/src/Run2SSPionTagger.cpp index a8802dcf1344b5c2d4deef6c1392d5d00ca107de..0c30faee28ea67e3ba7765b4b65d5eee4fbc89ca 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalSSPionTagger.cpp +++ b/Phys/FlavourTagging/src/Run2SSPionTagger.cpp @@ -37,14 +37,14 @@ namespace { } } // namespace -class FunctionalSSPionTagger +class Run2SSPionTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalSSPionTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2SSPionTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingPions", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -88,12 +88,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalSSPionTagger ) +DECLARE_COMPONENT( Run2SSPionTagger ) -LHCb::FlavourTags FunctionalSSPionTagger::operator()( const LHCb::Particle::Range& bCandidates, - const LHCb::Particle::Range& taggingPions, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2SSPionTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingPions, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate @@ -145,9 +145,9 @@ LHCb::FlavourTags FunctionalSSPionTagger::operator()( const LHCb::Particle::Rang } std::optional -FunctionalSSPionTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingPions, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2SSPionTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingPions, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { const LHCb::Particle* bestTagCand = nullptr; double bestBDT = -99.0; diff --git a/Phys/FunctionalFlavourTagging/src/FunctionalSSProtonTagger.cpp b/Phys/FlavourTagging/src/Run2SSProtonTagger.cpp similarity index 91% rename from Phys/FunctionalFlavourTagging/src/FunctionalSSProtonTagger.cpp rename to Phys/FlavourTagging/src/Run2SSProtonTagger.cpp index 8c2d9a3b8534ec9f96ef4b7f3449789e4f1c58f2..f2a0fea047e61e4036f2bf2d659aca54aebba526 100644 --- a/Phys/FunctionalFlavourTagging/src/FunctionalSSProtonTagger.cpp +++ b/Phys/FlavourTagging/src/Run2SSProtonTagger.cpp @@ -19,14 +19,14 @@ #include "Utils/TaggingHelper.h" #include "Utils/TaggingHelperTool.h" -class FunctionalSSProtonTagger +class Run2SSProtonTagger : public LHCb::Algorithm::Transformer> { public: /// Standard constructor - FunctionalSSProtonTagger( const std::string& name, ISvcLocator* pSvcLocator ) + Run2SSProtonTagger( const std::string& name, ISvcLocator* pSvcLocator ) : Transformer( name, pSvcLocator, {KeyValue{"BCandidates", ""}, KeyValue{"TaggingProtons", ""}, KeyValue{"PrimaryVertices", ""}, KeyValue{"StandardGeometry", LHCb::standard_geometry_top}}, @@ -78,12 +78,12 @@ private: }; // Declaration of the Algorithm Factory -DECLARE_COMPONENT( FunctionalSSProtonTagger ) +DECLARE_COMPONENT( Run2SSProtonTagger ) -LHCb::FlavourTags FunctionalSSProtonTagger::operator()( const LHCb::Particle::Range& bCandidates, - const LHCb::Particle::Range& taggingProtons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const DetectorElement& lhcbDetector ) const { +LHCb::FlavourTags Run2SSProtonTagger::operator()( const LHCb::Particle::Range& bCandidates, + const LHCb::Particle::Range& taggingProtons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const DetectorElement& lhcbDetector ) const { auto& geometry = *lhcbDetector.geometry(); // keyed container of FlavourTag objects, one FlavourTag per B candidate LHCb::FlavourTags flavourTags; @@ -140,11 +140,11 @@ LHCb::FlavourTags FunctionalSSProtonTagger::operator()( const LHCb::Particle::Ra } /*std::optional> -FunctionalSSProtonTagger::searchForTaggingParticle( const LHCb::Particle& bCand,*/ +Run2SSProtonTagger::searchForTaggingParticle( const LHCb::Particle& bCand,*/ std::optional -FunctionalSSProtonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingProtons, - const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, - const IGeometryInfo& geometry ) const { +Run2SSProtonTagger::performTagging( const LHCb::Particle& bCand, const LHCb::Particle::Range& taggingProtons, + const LHCb::Event::PV::PrimaryVertexContainer& primaryVertices, + const IGeometryInfo& geometry ) const { const LHCb::Particle* bestTagCand = nullptr; double bestBDT = -99.0; diff --git a/Phys/FunctionalFlavourTagging/src/ParticleTaggerAlg.cpp b/Phys/FlavourTagging/src/Utils/ParticleTaggerAlg.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/src/ParticleTaggerAlg.cpp rename to Phys/FlavourTagging/src/Utils/ParticleTaggerAlg.cpp diff --git a/Phys/FunctionalFlavourTagging/src/Utils/TaggingHelper.h b/Phys/FlavourTagging/src/Utils/TaggingHelper.h similarity index 100% rename from Phys/FunctionalFlavourTagging/src/Utils/TaggingHelper.h rename to Phys/FlavourTagging/src/Utils/TaggingHelper.h diff --git a/Phys/FunctionalFlavourTagging/src/Utils/TaggingHelperTool.cpp b/Phys/FlavourTagging/src/Utils/TaggingHelperTool.cpp similarity index 100% rename from Phys/FunctionalFlavourTagging/src/Utils/TaggingHelperTool.cpp rename to Phys/FlavourTagging/src/Utils/TaggingHelperTool.cpp diff --git a/Phys/FunctionalFlavourTagging/src/Utils/TaggingHelperTool.h b/Phys/FlavourTagging/src/Utils/TaggingHelperTool.h similarity index 100% rename from Phys/FunctionalFlavourTagging/src/Utils/TaggingHelperTool.h rename to Phys/FlavourTagging/src/Utils/TaggingHelperTool.h diff --git a/Phys/FunctionalFlavourTagging/test/B2JpsiK.xml b/Phys/FunctionalFlavourTagging/test/B2JpsiK.xml deleted file mode 100644 index 90380051164622341a2d021af3c39c861a48d0e0..0000000000000000000000000000000000000000 --- a/Phys/FunctionalFlavourTagging/test/B2JpsiK.xml +++ /dev/null @@ -1,721 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Phys/FunctionalFlavourTagging/test/makeB2JpsiKTuple.py b/Phys/FunctionalFlavourTagging/test/makeB2JpsiKTuple.py deleted file mode 100644 index 75a2215728a8593d316fada2afb02907e358aa11..0000000000000000000000000000000000000000 --- a/Phys/FunctionalFlavourTagging/test/makeB2JpsiKTuple.py +++ /dev/null @@ -1,110 +0,0 @@ -############################################################################### -# (c) Copyright 2021 CERN for the benefit of the LHCb Collaboration # -# # -# This software is distributed under the terms of the GNU General Public # -# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". # -# # -# In applying this licence, CERN does not waive the privileges and immunities # -# granted to it by virtue of its status as an Intergovernmental Organization # -# or submit itself to any jurisdiction. # -############################################################################### -from Gaudi.Configuration import DEBUG, VERBOSE -from GaudiKernel.SystemOfUnits import GeV, MeV - -from Moore import options - -from RecoConf.hlt1_tracking import require_gec, default_ft_decoding_version -from RecoConf.reconstruction_objects import make_pvs, upfront_reconstruction, reconstruction -from RecoConf.protoparticles import make_charged_protoparticles - -from Hlt2Conf.standard_particles import make_has_rich_long_pions -from Hlt2Conf.lines.onia.builders import dimuon, charged_hadrons, b_hadrons -from Hlt2Conf.algorithms import require_all, ParticleFilterWithPVs - -from PyConf.Algorithms import FunctionalSSPionTagger -from PyConf.application import configure_input, configure -from PyConf.control_flow import CompositeNode, NodeLogic - -default_ft_decoding_version.global_bind(value=6) - - -def taggingPions(make_particles=make_has_rich_long_pions, - pvs=make_pvs, - p_min=2 * MeV, - p_max=200 * GeV, - pt_min=0.4 * GeV, - pt_max=10 * GeV, - eta_min=1.068, - pidp_max=5, - pidk_max=5, - ghostprob_max=0.5): - code = require_all('P > {p_min}', 'P < {p_max}', 'PT > {pt_min}', - 'PT < {pt_max}', 'PIDp < {pidp_max}', - 'PIDK < {pidk_max}', 'TRGHOSTPROB < {ghostprob_max}', - 'ETA > {eta_min}').format( - p_min=p_min, - p_max=p_max, - pt_min=pt_min, - pt_max=pt_max, - eta_min=eta_min, - pidp_max=pidp_max, - pidk_max=pidk_max, - ghostprob_max=ghostprob_max) - return ParticleFilterWithPVs(make_particles(), pvs(), Code=code) - - -def runFT(): - jpsi = dimuon.make_jpsi() - kaons = charged_hadrons.make_detached_kaons() - b2jpsik = b_hadrons.make_onia_Bu( - particles=[jpsi, kaons], descriptors=['[B+ -> J/psi(1S) K+]cc']) - - print("bCandidates", b2jpsik) - taggingParticles = taggingPions() - print("Tagging pions location", taggingParticles) - - pvs = make_pvs() - - sspionTagging = FunctionalSSPionTagger( - BCandidates=b2jpsik, - TaggingPions=taggingParticles, - PrimaryVertices=pvs) - - nodes = upfront_reconstruction() - nodes += [require_gec()] - nodes += [b2jpsik] - nodes += [sspionTagging] - - return CompositeNode( - 'flavourtagging', - children=nodes, - combine_logic=NodeLogic.LAZY_AND, - force_order=True) - - -from Gaudi.Configuration import FileCatalog -FileCatalog().Catalogs = ["xmlcatalog_file:B2JpsiK.xml"] - -options.input_files = [ - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000042_2.xdst', - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000007_2.xdst', - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000003_2.xdst', - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000023_2.xdst', - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000036_2.xdst', - 'LFN:/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000047_2.xdst' -] -options.input_type = 'ROOT' -options.evt_max = -1 -options.simulation = True -options.data_type = 'Upgrade' -options.dddb_tag = 'dddb-20190223' -options.conddb_tag = 'sim-20180530-vc-md100' -options.input_raw_format = 4.3 -options.output_file = 'myCuteDST.dst' -options.output_type = 'ROOT' - -with reconstruction.bind(from_file=True), make_charged_protoparticles.bind( - enable_muon_id=True): - config = configure_input(options) - top_cf_node = runFTuple() - config.update(configure(options, top_cf_node)) diff --git a/Phys/FunctionalFlavourTagging/test/makeFTTuple.py b/Phys/FunctionalFlavourTagging/test/makeFTTuple.py deleted file mode 100644 index dc914750dbddb84f3a8cd89adfdaa1a3bb28d64a..0000000000000000000000000000000000000000 --- a/Phys/FunctionalFlavourTagging/test/makeFTTuple.py +++ /dev/null @@ -1,144 +0,0 @@ -############################################################################### -# (c) Copyright 2021 CERN for the benefit of the LHCb Collaboration # -# # -# This software is distributed under the terms of the GNU General Public # -# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". # -# # -# In applying this licence, CERN does not waive the privileges and immunities # -# granted to it by virtue of its status as an Intergovernmental Organization # -# or submit itself to any jurisdiction. # -############################################################################### -from Gaudi.Configuration import DEBUG, VERBOSE -from GaudiKernel.SystemOfUnits import GeV, MeV - -from Moore import options - -from RecoConf.hlt1_tracking import require_gec, default_ft_decoding_version -from RecoConf.reconstruction_objects import make_pvs, upfront_reconstruction, reconstruction -from RecoConf.protoparticles import make_charged_protoparticles - -from Hlt2Conf.standard_particles import make_mass_constrained_jpsi2mumu, make_has_rich_long_pions -from Hlt2Conf.lines.b_to_charmonia.prefilters import b2cc_prefilters -from Hlt2Conf.lines.b_to_charmonia.builders import b_builder, basic_builder -from Hlt2Conf.algorithms import require_all, ParticleFilterWithPVs -from Hlt2Conf.data_from_file import mc_unpackers - -from PyConf.Algorithms import FunctionalSSPionTagger, FlavourTagTuple -from PyConf.Tools import BackgroundCategory, P2MCPFromProtoP, DaVinciSmartAssociator -from PyConf.application import configure_input, configure, make_odin -from PyConf.control_flow import CompositeNode, NodeLogic -from PyConf import configurable -from PyConf.components import force_location - -from Configurables import NTupleSvc, ApplicationMgr - -from Moore.persistence.truth_matching import truth_match_candidates, CHARGED_PP2MC_LOC, NEUTRAL_PP2MC_LOC - -default_ft_decoding_version.global_bind(value=6) - - -def taggingPions(make_particles=make_has_rich_long_pions, - pvs=make_pvs, - p_min=2 * MeV, - p_max=200 * GeV, - pt_min=0.4 * GeV, - pt_max=10 * GeV, - eta_min=1.068, - pidp_max=5, - pidk_max=5, - ghostprob_max=0.5): - code = require_all('P > {p_min}', 'P < {p_max}', 'PT > {pt_min}', - 'PT < {pt_max}', 'PIDp < {pidp_max}', - 'PIDK < {pidk_max}', 'TRGHOSTPROB < {ghostprob_max}', - 'ETA > {eta_min}').format( - p_min=p_min, - p_max=p_max, - pt_min=pt_min, - pt_max=pt_max, - eta_min=eta_min, - pidp_max=pidp_max, - pidk_max=pidk_max, - ghostprob_max=ghostprob_max) - return ParticleFilterWithPVs(make_particles(), pvs(), Code=code) - - -def runNTuple(): - phi = basic_builder.make_selected_phi() - jpsi = make_mass_constrained_jpsi2mumu() - b2jpsiphi = b_builder.make_B2JpsiX( - particles=[jpsi, phi], descriptors=['B_s0 -> J/psi(1S) phi(1020)']) - - taggingParticles = taggingPions() - - pvs = make_pvs() - - sspionTagging = FunctionalSSPionTagger( - BCandidates=b2jpsiphi, - TaggingPions=taggingParticles, - PrimaryVertices=pvs) - - truthMatching = truth_match_candidates([b2jpsiphi]) - - relationsTablesLocations = [CHARGED_PP2MC_LOC, NEUTRAL_PP2MC_LOC] - p2mcpTool = P2MCPFromProtoP(Locations=relationsTablesLocations) - bkgTool = BackgroundCategory(P2MCPFromProtoP=p2mcpTool) - smartAssTool = DaVinciSmartAssociator( - BackgroundCatTool=bkgTool, P2MCPFromProtoP=p2mcpTool) - - odin_loc = make_odin() - ftTuple = FlavourTagTuple( - OdinLocation=odin_loc, - FlavourTags=sspionTagging, - MCParticles=truthMatching[0].children[0], - DaVinciSmartAssociator=smartAssTool) - - nodes = upfront_reconstruction() - nodes += [require_gec()] - nodes += [b2jpsiphi] - nodes += truthMatching[1] - nodes += [sspionTagging] - nodes += [ftTuple] - - return CompositeNode( - 'flavourtaggingtuple', - children=nodes, - combine_logic=NodeLogic.LAZY_AND, - force_order=True) - - -input_files = [ - "root://tmpmmTC0l@eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000008_1.xdigi", - #"root://lhcb-sdpd7.t1.grid.kiae.ru:1094/t1.grid.kiae.ru/data/lhcb/lhcbdisk/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000006_1.xdigi" - #"root://x509up_u38339@xrootd.pic.es//pnfs/pic.es/data/lhcb/LHCb-Disk/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000003_1.xdigi", - #"root://x509up_u38339@lhcbxrootd-kit.gridka.de//pnfs/gridka.de/lhcb/LHCb-Disk/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000004_1.xdigi" - #"root://x509up_u38339@xrootd.pic.es//pnfs/pic.es/data/lhcb/LHCb-Disk/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000005_1.xdigi", - #"root://xrootd-lhcb.cr.cnaf.infn.it:1094//storage/gpfs_lhcb/lhcb/disk/MC/Upgrade/XDIGI/00122700/0000/00122700_00000001_1.xdigi", - #"root://xrootd.echo.stfc.ac.uk/lhcb:prod/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000002_1.xdigi", - #"root://xrootd-lhcb.cr.cnaf.infn.it:1094//storage/gpfs_lhcb/lhcb/disk/MC/Upgrade/XDIGI/00122700/0000/00122700_00000007_1.xdigi", - #"root://tmpmmTC0l@eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000008_1.xdigi", - #"root://x509up_u38339@ccxrootdlhcb.in2p3.fr//pnfs/in2p3.fr/data/lhcb/LHCb-Disk/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000011_1.xdigi", - #"root://xrootd.echo.stfc.ac.uk/lhcb:prod/lhcb/MC/Upgrade/XDIGI/00122700/0000/00122700_00000013_1.xdigi" -] -options.input_files = input_files -options.input_type = 'ROOT' -options.evt_max = -1 -options.simulation = True -options.data_type = 'Upgrade' -options.dddb_tag = 'dddb-20201211' -options.conddb_tag = 'sim-20201218-vc-md100' - -options.output_file = 'myCuteDST.dst' -options.output_type = 'ROOT' - -ApplicationMgr().HistogramPersistency = "ROOT" -ntSvc = NTupleSvc() -ntSvc.Output = [ - "FILE1 DATAFILE='Bs2JpsiPhi_FlavourTagTuple.root' OPT='NEW' TYP='ROOT'" -] -ApplicationMgr().ExtSvc += [ntSvc] - -with reconstruction.bind(from_file=False), make_charged_protoparticles.bind( - enable_muon_id=True): - config = configure_input(options) - top_cf_node = runNTuple() - config.update(configure(options, top_cf_node)) diff --git a/Phys/FunctionalFlavourTagging/test/test_ft_persistency.py b/Phys/FunctionalFlavourTagging/test/test_ft_persistency.py deleted file mode 100644 index 33c0ff5d23da99d0b4ccf5d6b5bb7f8af62f6f9f..0000000000000000000000000000000000000000 --- a/Phys/FunctionalFlavourTagging/test/test_ft_persistency.py +++ /dev/null @@ -1,103 +0,0 @@ -############################################################################### -# (c) Copyright 2021 CERN for the benefit of the LHCb Collaboration # -# # -# This software is distributed under the terms of the GNU General Public # -# Licence version 3 (GPL Version 3), copied verbatim in the file "COPYING". # -# # -# In applying this licence, CERN does not waive the privileges and immunities # -# granted to it by virtue of its status as an Intergovernmental Organization # -# or submit itself to any jurisdiction. # -############################################################################### -from GaudiKernel.SystemOfUnits import GeV - -from Moore import options, run_moore -from Moore.config import HltLine - -from RecoConf.global_tools import stateProvider_with_simplified_geom -from RecoConf.reconstruction_objects import upfront_reconstruction, make_pvs -from RecoConf.hlt1_tracking import require_pvs, default_ft_decoding_version - -from Hlt2Conf.standard_particles import make_has_rich_long_pions -from Hlt2Conf.lines.bandq.builders import dimuon, charged_hadrons, b_hadrons -from Hlt2Conf.algorithms import require_all, ParticleFilterWithPVs - -from PyConf.Algorithms import FunctionalSSPionTagger - -default_ft_decoding_version.global_bind(value=2) - - -def make_tagging_pions(make_particles=make_has_rich_long_pions, - pvs=make_pvs, - p_min=2 * GeV, - p_max=200 * GeV, - pt_min=0.4 * GeV, - pt_max=10 * GeV, - eta_min=1.068, - pidp_max=5, - pidk_max=5, - ghostprob_max=0.5): - code = require_all('P > {p_min}', 'P < {p_max}', 'PT > {pt_min}', - 'PT < {pt_max}', 'PIDp < {pidp_max}', - 'PIDK < {pidk_max}', 'TRGHOSTPROB < {ghostprob_max}', - 'ETA > {eta_min}').format( - p_min=p_min, - p_max=p_max, - pt_min=pt_min, - pt_max=pt_max, - eta_min=eta_min, - pidp_max=pidp_max, - pidk_max=pidk_max, - ghostprob_max=ghostprob_max) - return ParticleFilterWithPVs(make_particles(), pvs(), Code=code) - - -# make sure we passed GEC and have PV in event -def prefilters(): - return [require_pvs(make_pvs())] - - -def b2jpsik_line(name='Hlt2BToJpsiKLine', prescale=1): - jpsi = dimuon.make_jpsi() - kaons = charged_hadrons.make_detached_kaons() - b2jpsik = b_hadrons.make_b_hadron( - particles=[jpsi, kaons], descriptor='[B+ -> J/psi(1S) K+]cc') - - taggingParticles = make_tagging_pions() - - pvs = make_pvs() - - flavourTags = FunctionalSSPionTagger( - BCandidates=b2jpsik, - TaggingPions=taggingParticles, - PrimaryVertices=pvs) - - return [ - HltLine( - name=name, - algs=upfront_reconstruction() + prefilters() + [b2jpsik], - prescale=prescale, - extra_outputs=[("FlavourTags", flavourTags), - ('TaggingPions', taggingParticles)]) - ] - - -public_tools = [stateProvider_with_simplified_geom()] -options.input_files = [ - "root://eoslhcb.cern.ch//eos/lhcb/grid/prod/lhcb/MC/Upgrade/XDST/00109583/0000/00109583_00000024_2.xdst" -] -options.input_type = 'ROOT' -options.input_raw_format = 4.3 -options.evt_max = 100 -options.simulation = True -options.data_type = 'Upgrade' -options.dddb_tag = 'dddb-20201211' -options.conddb_tag = 'sim-20201218-vc-md100' - -# 5. Name of the dst that is going to be written -options.output_file = 'out_B2JpsiK_FT_new.dst' -options.output_type = 'ROOT' - -config = run_moore(options, b2jpsik_line, public_tools) - -from Moore.tcks import dump_hlt2_configuration -dump_hlt2_configuration(config, "B2JpsiK_FT_new.tck.json")