Skip to content

Commit 6bc7933

Browse files
Yunfan-Liurootalibuildvkucerafgrosa
authored
PWGHF: Add OmegaC0 workflows that use KFParticle (#6327)
* add OmegaC0 table and kf table * add Tasks of reconstructing OmegaC0 with the KFParticle * add header file for OmegaC0 ML\ * Please consider the following formatting changes * Update CMakeLists.txt * Update HfMlResponseOmegaCToOmegaPi.h * Update candidateCreatorOmegacToOmegaPiWithKFP.cxx * Update treeCreatorOmegacToOmegaPiWithKFP.cxx * Please consider the following formatting changes * Update CMakeLists.txt * Update and rename HfMlResponseOmegaCToOmegaPi.h to HfMlResponseOmegacToOmegaPi.h complete the documentation and change the file name. * Update candidateSelectorOmegacToOmegaPiWithKFP.cxx complete the documentation, remove useless lines, and use the "registry" * Update HfMlResponseOmegacToOmegaPi.h * Update PWGHF/DataModel/CandidateReconstructionTables.h Co-authored-by: Vít Kučera <vit.kucera@cern.ch> * Update PWGHF/TableProducer/treeCreatorOmegacToOmegaPiWithKFP.cxx Co-authored-by: Vít Kučera <vit.kucera@cern.ch> * change CMakeLists.txt as requested. respect alphabetic ordering as requested. * change to use existing columns * Please consider the following formatting changes * Update candidateCreatorOmegacToOmegaPiWithKFP.cxx fill the documentation. * fixing some errors * Update CandidateReconstructionTables.h * Update CandidateReconstructionTables.h * Update CandidateReconstructionTables.h * changing some things as comment reqeust and fixing bugs * Delete unused tables * Please consider the following formatting changes * Update candidateCreatorOmegacToOmegaPiWithKFP.cxx using "static_cast<int>(..)" instead of "int(..)" * Update candidateCreatorOmegacToOmegaPiWithKFP.cxx * Please consider the following formatting changes * using exist table instead of duplication one * using exist table * deleting the DCAfitter * deleting the DCAfitter, unused header and fixing * Please consider the following formatting changes * Update candidateCreatorOmegacToOmegaPiWithKFP.cxx * Update treeCreatorOmegacToOmegaPiWithKFP.cxx * adding KFParticle for omegac in existing omegac0 to omega pi workflow(candidateCreatorXic0Omegac0, treeCreatorOmegacToOmegaPi.cxx) * adding KFParticle table for Omegac0 to Omega Pi and deleting duplication table added before * Delete PWGHF/TableProducer/treeCreatorOmegacToOmegaPiWithKFP.cxx now use existing workflow instead of duplication. * Delete PWGHF/TableProducer/candidateSelectorOmegacToOmegaPiWithKFP.cxx now use existing workflow instead of duplication. * Delete PWGHF/TableProducer/candidateCreatorXic0Omegac0.cxx now use existing workflow instead of duplication. * Delete PWGHF/TableProducer/candidateCreatorOmegacToOmegaPiWithKFP.cxx now use existing workflow instead of duplication. * Revert "Delete PWGHF/TableProducer/candidateCreatorXic0Omegac0.cxx" This reverts commit 8ac8b28. * Please consider the following formatting changes * Update candidateCreatorXic0Omegac0.cxx * Update CandidateSelectionTables.h * Please consider the following formatting changes * Update CandidateSelectionTables.h * Update PWGHF/Core/HfMlResponseOmegacToOmegaPi.h Co-authored-by: Fabrizio <fabrizio.grosa@cern.ch> * Update PWGHF/Core/HfMlResponseOmegacToOmegaPi.h Co-authored-by: Fabrizio <fabrizio.grosa@cern.ch> * Update PWGHF/Core/HfMlResponseOmegacToOmegaPi.h Co-authored-by: Fabrizio <fabrizio.grosa@cern.ch> * deleting duplication table * Delete PWGHF/Core/HfMlResponseOmegacToOmegaPi.h * Update candidateCreatorXic0Omegac0.cxx fixing bug: Incorrectly filling a variable into a table twice * Update candidateCreatorXic0Omegac0.cxx * Please consider the following formatting changes * Update candidateCreatorXic0Omegac0.cxx fixing errors * Update candidateCreatorXic0Omegac0.cxx keep all the cospa in the non-KF tables are referred to the PV. * Update CandidateReconstructionTables.h * Please consider the following formatting changes * Update treeCreatorOmegacToOmegaPi.cxx * no longer filling nSigma into KF-table in candidateCreator * Update candidateCreatorXic0Omegac0.cxx deleting unused variables * Update candidateCreatorXic0Omegac0.cxx deleting unused variables * Update treeCreatorOmegacToOmegaPi.cxx fixing bugs * Update treeCreatorOmegacToOmegaPi.cxx * Update candidateCreatorXic0Omegac0.cxx * Update candidateCreatorXic0Omegac0.cxx * Update treeCreatorOmegacToOmegaPi.cxx * Update candidateCreatorXic0Omegac0.cxx fixing the errors: error: 'SetField' is not a member of 'KFParticle' error: unused parameter 'bcWithTimeStamps' [-Werror=unused-parameter] * Update candidateCreatorXic0Omegac0.cxx --------- Co-authored-by: root <root@USER-20161104VR.localdomain> Co-authored-by: ALICE Action Bot <alibuild@cern.ch> Co-authored-by: Vít Kučera <vit.kucera@cern.ch> Co-authored-by: Fabrizio <fabrizio.grosa@cern.ch>
1 parent b0d5a8f commit 6bc7933

File tree

5 files changed

+743
-5
lines changed

5 files changed

+743
-5
lines changed

PWGHF/DataModel/CandidateReconstructionTables.h

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1164,6 +1164,48 @@ DECLARE_SOA_COLUMN(DecLenV0, decLenV0, float);
11641164
DECLARE_SOA_COLUMN(ErrorDecayLengthCharmBaryon, errorDecayLengthCharmBaryon, float);
11651165
DECLARE_SOA_COLUMN(ErrorDecayLengthXYCharmBaryon, errorDecayLengthXYCharmBaryon, float);
11661166

1167+
// KFParticle results
1168+
DECLARE_SOA_COLUMN(KfDcaXYPiFromOmegac, kfDcaXYPiFromOmegac, float);
1169+
DECLARE_SOA_COLUMN(KfDcaXYCascToPv, kfDcaXYCascToPv, float);
1170+
DECLARE_SOA_COLUMN(Chi2GeoV0, chi2GeoV0, float);
1171+
DECLARE_SOA_COLUMN(Chi2GeoCasc, chi2GeoCasc, float);
1172+
DECLARE_SOA_COLUMN(Chi2GeoOmegac, chi2GeoOmegac, float);
1173+
DECLARE_SOA_COLUMN(Chi2MassV0, chi2MassV0, float);
1174+
DECLARE_SOA_COLUMN(Chi2MassCasc, chi2MassCasc, float);
1175+
DECLARE_SOA_COLUMN(V0ldl, v0ldl, float);
1176+
DECLARE_SOA_COLUMN(Cascldl, cascldl, float);
1177+
DECLARE_SOA_COLUMN(Omegacldl, omegacldl, float);
1178+
DECLARE_SOA_COLUMN(Chi2TopoV0ToPv, chi2TopoV0ToPv, float);
1179+
DECLARE_SOA_COLUMN(Chi2TopoCascToPv, chi2TopoCascToPv, float);
1180+
DECLARE_SOA_COLUMN(Chi2TopoPiFromOmegacToPv, chi2TopoPiFromOmegacToPv, float);
1181+
DECLARE_SOA_COLUMN(Chi2TopoOmegacToPv, chi2TopoOmegacToPv, float);
1182+
DECLARE_SOA_COLUMN(Chi2TopoV0ToCasc, chi2TopoV0ToCasc, float);
1183+
DECLARE_SOA_COLUMN(Chi2TopoCascToOmegac, chi2TopoCascToOmegac, float);
1184+
DECLARE_SOA_COLUMN(DecayLenXYLambda, decayLenXYLambda, float);
1185+
DECLARE_SOA_COLUMN(DecayLenXYCasc, decayLenXYCasc, float);
1186+
DECLARE_SOA_COLUMN(DecayLenXYOmegac, decayLenXYOmegac, float);
1187+
DECLARE_SOA_COLUMN(CosPaV0ToCasc, cosPaV0ToCasc, float);
1188+
DECLARE_SOA_COLUMN(CosPaCascToOmegac, cosPaCascToOmegac, float);
1189+
DECLARE_SOA_COLUMN(CosPaXYV0ToCasc, cosPaXYV0ToCasc, float);
1190+
DECLARE_SOA_COLUMN(CosPaXYCascToOmegac, cosPaXYCascToOmegac, float);
1191+
DECLARE_SOA_COLUMN(KfMassV0, kfMassV0, float);
1192+
DECLARE_SOA_COLUMN(KfMassCasc, kfMassCasc, float);
1193+
DECLARE_SOA_COLUMN(KfMassOmegac, kfMassOmegac, float);
1194+
DECLARE_SOA_COLUMN(KfRapOmegac, kfRapOmegac, float);
1195+
DECLARE_SOA_COLUMN(KfptPiFromOmegac, kfptPiFromOmegac, float);
1196+
DECLARE_SOA_COLUMN(KfptOmegac, kfptOmegac, float);
1197+
DECLARE_SOA_COLUMN(CosThetaStarPiFromOmegac, cosThetaStarPiFromOmegac, float);
1198+
DECLARE_SOA_COLUMN(V0Ndf, v0Ndf, float);
1199+
DECLARE_SOA_COLUMN(CascNdf, cascNdf, float);
1200+
DECLARE_SOA_COLUMN(OmegacNdf, omegacNdf, float);
1201+
DECLARE_SOA_COLUMN(MassV0Ndf, massV0Ndf, float);
1202+
DECLARE_SOA_COLUMN(MassCascNdf, massCascNdf, float);
1203+
DECLARE_SOA_COLUMN(V0Chi2OverNdf, v0Chi2OverNdf, float);
1204+
DECLARE_SOA_COLUMN(CascChi2OverNdf, cascChi2OverNdf, float);
1205+
DECLARE_SOA_COLUMN(OmegacChi2OverNdf, omegacChi2OverNdf, float);
1206+
DECLARE_SOA_COLUMN(MassV0Chi2OverNdf, massV0Chi2OverNdf, float);
1207+
DECLARE_SOA_COLUMN(MassCascChi2OverNdf, massCascChi2OverNdf, float);
1208+
11671209
// MC matching result:
11681210
DECLARE_SOA_COLUMN(FlagMcMatchRec, flagMcMatchRec, int8_t); // reconstruction level
11691211
DECLARE_SOA_COLUMN(DebugMcRec, debugMcRec, int8_t); // debug flag for mis-association reconstruction level
@@ -1177,6 +1219,18 @@ DECLARE_SOA_COLUMN(OriginGen, originGen, int8_t);
11771219
DECLARE_SOA_COLUMN(PtCharmBaryonGen, ptCharmBaryonGen, float);
11781220
DECLARE_SOA_COLUMN(RapidityCharmBaryonGen, rapidityCharmBaryonGen, float);
11791221

1222+
// dynamic columns
1223+
DECLARE_SOA_DYNAMIC_COLUMN(PtCharmBaryon, ptCharmBaryon,
1224+
[](float px, float py) -> float { return RecoDecay::pt(px, py); });
1225+
DECLARE_SOA_DYNAMIC_COLUMN(PtCasc, ptCasc,
1226+
[](float px, float py) -> float { return RecoDecay::pt(px, py); });
1227+
DECLARE_SOA_DYNAMIC_COLUMN(PtLambda, ptLambda,
1228+
[](float px, float py) -> float { return RecoDecay::pt(px, py); });
1229+
DECLARE_SOA_DYNAMIC_COLUMN(PtPiFromCharmBaryon, ptPiFromCharmBaryon,
1230+
[](float px, float py) -> float { return RecoDecay::pt(px, py); });
1231+
DECLARE_SOA_DYNAMIC_COLUMN(PtKaFromCasc, ptKaFromCasc,
1232+
[](float px, float py) -> float { return RecoDecay::pt(px, py); });
1233+
11801234
// mapping of decay types
11811235
enum DecayType { XiczeroToXiPi = 0,
11821236
OmegaczeroToXiPi,
@@ -1229,6 +1283,13 @@ DECLARE_SOA_TABLE(HfCandToOmegaPi, "AOD", "HFCANDTOOMEGAPI",
12291283
hf_cand_xic0_omegac0::PxBachFromCasc, hf_cand_xic0_omegac0::PyBachFromCasc, hf_cand_xic0_omegac0::PzBachFromCasc,
12301284
hf_cand_xic0_omegac0::PxPosV0Dau, hf_cand_xic0_omegac0::PyPosV0Dau, hf_cand_xic0_omegac0::PzPosV0Dau,
12311285
hf_cand_xic0_omegac0::PxNegV0Dau, hf_cand_xic0_omegac0::PyNegV0Dau, hf_cand_xic0_omegac0::PzNegV0Dau,
1286+
// dynamic
1287+
hf_cand_xic0_omegac0::PtCharmBaryon<hf_cand_xic0_omegac0::PxCharmBaryon, hf_cand_xic0_omegac0::PyCharmBaryon>,
1288+
hf_cand_xic0_omegac0::PtCasc<hf_cand_xic0_omegac0::PxCasc, hf_cand_xic0_omegac0::PyCasc>,
1289+
hf_cand_xic0_omegac0::PtPiFromCharmBaryon<hf_cand_xic0_omegac0::PxBachFromCharmBaryon, hf_cand_xic0_omegac0::PyBachFromCharmBaryon>,
1290+
hf_cand_xic0_omegac0::PtLambda<hf_cand_xic0_omegac0::PxLambda, hf_cand_xic0_omegac0::PyLambda>,
1291+
hf_cand_xic0_omegac0::PtKaFromCasc<hf_cand_xic0_omegac0::PxBachFromCasc, hf_cand_xic0_omegac0::PyBachFromCasc>,
1292+
12321293
hf_cand_xic0_omegac0::ImpactParCascXY, hf_cand_xic0_omegac0::ImpactParBachFromCharmBaryonXY, hf_cand_xic0_omegac0::ImpactParCascZ, hf_cand_xic0_omegac0::ImpactParBachFromCharmBaryonZ,
12331294
hf_cand_xic0_omegac0::ErrImpactParCascXY, hf_cand_xic0_omegac0::ErrImpactParBachFromCharmBaryonXY,
12341295
hf_cand_xic0_omegac0::V0Id, v0data::PosTrackId, v0data::NegTrackId, hf_cand_xic0_omegac0::CascadeId, hf_cand_xic0_omegac0::BachelorFromCharmBaryonId, cascdata::BachelorId,
@@ -1272,6 +1333,24 @@ DECLARE_SOA_TABLE(HfCandToOmegaK, "AOD", "HFCANDTOOMEGAK",
12721333
hf_cand_xic0_omegac0::DecLenCharmBaryon, hf_cand_xic0_omegac0::DecLenCascade, hf_cand_xic0_omegac0::DecLenV0, hf_cand_xic0_omegac0::ErrorDecayLengthCharmBaryon, hf_cand_xic0_omegac0::ErrorDecayLengthXYCharmBaryon,
12731334
o2::soa::Marker<2>);
12741335

1336+
// table with results of KFParticle
1337+
DECLARE_SOA_TABLE(HfOmegacKf, "AOD", "HFOMEGACKF", //!
1338+
hf_cand_xic0_omegac0::KfDcaXYPiFromOmegac, hf_cand_xic0_omegac0::KfDcaXYCascToPv,
1339+
hf_cand_xic0_omegac0::Chi2GeoV0, hf_cand_xic0_omegac0::Chi2GeoCasc, hf_cand_xic0_omegac0::Chi2GeoOmegac,
1340+
hf_cand_xic0_omegac0::Chi2MassV0, hf_cand_xic0_omegac0::Chi2MassCasc,
1341+
hf_cand_xic0_omegac0::V0ldl, hf_cand_xic0_omegac0::Cascldl, hf_cand_xic0_omegac0::Omegacldl,
1342+
hf_cand_xic0_omegac0::Chi2TopoV0ToPv, hf_cand_xic0_omegac0::Chi2TopoCascToPv, hf_cand_xic0_omegac0::Chi2TopoPiFromOmegacToPv, hf_cand_xic0_omegac0::Chi2TopoOmegacToPv,
1343+
hf_cand_xic0_omegac0::Chi2TopoV0ToCasc, hf_cand_xic0_omegac0::Chi2TopoCascToOmegac,
1344+
hf_cand_xic0_omegac0::DecayLenXYLambda, hf_cand_xic0_omegac0::DecayLenXYCasc, hf_cand_xic0_omegac0::DecayLenXYOmegac,
1345+
hf_cand_xic0_omegac0::CosPaV0ToCasc, hf_cand_xic0_omegac0::CosPaCascToOmegac, hf_cand_xic0_omegac0::CosPaXYV0ToCasc, hf_cand_xic0_omegac0::CosPaXYCascToOmegac,
1346+
hf_cand_xic0_omegac0::KfRapOmegac,
1347+
hf_cand_xic0_omegac0::KfptPiFromOmegac, hf_cand_xic0_omegac0::KfptOmegac,
1348+
hf_cand_xic0_omegac0::CosThetaStarPiFromOmegac,
1349+
hf_cand_xic0_omegac0::V0Ndf, hf_cand_xic0_omegac0::CascNdf, hf_cand_xic0_omegac0::OmegacNdf,
1350+
hf_cand_xic0_omegac0::MassV0Ndf, hf_cand_xic0_omegac0::MassCascNdf,
1351+
hf_cand_xic0_omegac0::V0Chi2OverNdf, hf_cand_xic0_omegac0::CascChi2OverNdf, hf_cand_xic0_omegac0::OmegacChi2OverNdf,
1352+
hf_cand_xic0_omegac0::MassV0Chi2OverNdf, hf_cand_xic0_omegac0::MassCascChi2OverNdf);
1353+
12751354
// table with results of reconstruction level MC matching
12761355
DECLARE_SOA_TABLE(HfXicToXiPiMCRec, "AOD", "HFXICXIPIMCREC", //!
12771356
hf_cand_xic0_omegac0::FlagMcMatchRec,

PWGHF/DataModel/CandidateSelectionTables.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,9 @@ DECLARE_SOA_COLUMN(TofNSigmaPiFromLambda, tofNSigmaPiFromLambda, float);
375375
DECLARE_SOA_COLUMN(TofNSigmaPrFromLambda, tofNSigmaPrFromLambda, float);
376376
DECLARE_SOA_COLUMN(PidTpcInfoStored, pidTpcInfoStored, int);
377377
DECLARE_SOA_COLUMN(PidTofInfoStored, pidTofInfoStored, int);
378+
// Machine learning column for omegac0 to omega pi
379+
DECLARE_SOA_COLUMN(MlProbOmegac, mlProbOmegac, std::vector<float>);
380+
DECLARE_SOA_COLUMN(MlProbOmegacBar, mlProbOmegacBar, std::vector<float>);
378381
} // namespace hf_sel_toomegapi
379382

380383
DECLARE_SOA_TABLE(HfSelToOmegaPi, "AOD", "HFSELTOOMEPI",
@@ -384,6 +387,8 @@ DECLARE_SOA_TABLE(HfSelToOmegaPi, "AOD", "HFSELTOOMEPI",
384387
hf_sel_toomegapi::TpcNSigmaPiFromCharmBaryon, hf_sel_toomegapi::TpcNSigmaKaFromCasc, hf_sel_toomegapi::TpcNSigmaPiFromLambda, hf_sel_toomegapi::TpcNSigmaPrFromLambda,
385388
hf_sel_toomegapi::TofNSigmaPiFromCharmBaryon, hf_sel_toomegapi::TofNSigmaKaFromCasc, hf_sel_toomegapi::TofNSigmaPiFromLambda, hf_sel_toomegapi::TofNSigmaPrFromLambda);
386389

390+
DECLARE_SOA_TABLE(HfMlSelOmegacToOmegaPi, "AOD", "HFMLOMEGAC", //!
391+
hf_sel_toomegapi::MlProbOmegac, hf_sel_toomegapi::MlProbOmegacBar);
387392
namespace hf_sel_toomegaka
388393
{
389394
DECLARE_SOA_COLUMN(StatusPidLambda, statusPidLambda, bool);

PWGHF/TableProducer/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ o2physics_add_dpl_workflow(candidate-creator-sigmac0plusplus-cascade
8282

8383
o2physics_add_dpl_workflow(candidate-creator-xic0-omegac0
8484
SOURCES candidateCreatorXic0Omegac0.cxx
85-
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore O2::DCAFitter O2Physics::EventFilteringUtils
85+
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore O2::DCAFitter O2Physics::EventFilteringUtils KFParticle::KFParticle
8686
COMPONENT_NAME Analysis)
8787

8888
o2physics_add_dpl_workflow(candidate-creator-xic-to-xi-pi-pi

0 commit comments

Comments
 (0)