Skip to content

[PWGCF] Lambda cascade correlation#16869

Draft
Oveissheibani wants to merge 13 commits into
AliceO2Group:masterfrom
Oveissheibani:lambda-cascade-correlation-phase16c
Draft

[PWGCF] Lambda cascade correlation#16869
Oveissheibani wants to merge 13 commits into
AliceO2Group:masterfrom
Oveissheibani:lambda-cascade-correlation-phase16c

Conversation

@Oveissheibani

Copy link
Copy Markdown
Contributor

Lambda-Cascade correlation refactors:

Old: LambdaTableProducer + CascadeSelector + LambdaR2Correlation + CascadeCorrelations
New: LambdaCascadeProducer + LambdaXiCorrelation (LambdaTracksExtProducer kept)

Added:

  • Combined Lambda + Cascade producer -> single event loop
  • IsTrueCascade column -> MC truth filter
  • processMCGenXi / processMCGenOmega -> gen-level R2 closure
  • Eff/Gen + Eff/Reco maps -> 3D (cent x pt x y) efficiency
  • OutputObj -> per-candidate topology + truth tags
  • EventCuts struct -> centralized event selection
  • ITS strangeness tracking switches
  • processAllPairs, processYields

Removed:

  • CascadeSelector, CascadeCorrelations

Main Advantage:
One event loop -> Lambda and cascade share identical event sample

@github-actions github-actions Bot added the pwgcf label Jun 29, 2026
@github-actions github-actions Bot changed the title Lambda cascade correlation [PWGCF] Lambda cascade correlation Jun 29, 2026
@github-actions

github-actions Bot commented Jun 29, 2026

Copy link
Copy Markdown

O2 linter results: ❌ 0 errors, ⚠️ 49 warnings, 🔕 10 disabled

@vkucera

vkucera commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

You are supposed to check your formatting before you open a PR for review.

@Oveissheibani Oveissheibani force-pushed the lambda-cascade-correlation-phase16c branch from 21c8f1d to 48c435f Compare June 30, 2026 17:25
@Oveissheibani

Copy link
Copy Markdown
Contributor Author

You are supposed to check your formatting before you open a PR for review.

I apologize. I rechecked the standards agains but it failed again on O2 linter again. I need a day or two to fix it.
shall i close and reopen again or keep this one ?

@vkucera

vkucera commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

You are supposed to check your formatting before you open a PR for review.

I apologize. I rechecked the standards agains but it failed again on O2 linter again. I need a day or two to fix it. shall i close and reopen again or keep this one ?

No need to close the PR. You can keep it as draft until you are done with the fixes. Please note that you can enable automatic local formatting and run O2 linter locally as well. See the documentation.

Comment thread PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx Outdated
@vkucera

vkucera commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

@Oveissheibani Why are you trying to disable the O2 linter errors?

@Oveissheibani

Oveissheibani commented Jul 1, 2026

Copy link
Copy Markdown
Contributor Author

@Oveissheibani Why are you trying to disable the O2 linter errors?

I ran
python3 Scripts/o2_linter.py PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx
O2 linter result: Issues have been found.
Exceptionally, you can disable a test for a line by adding a comment with "o2-linter: disable=" followed by the name of the test and parentheses with a reason for the exception.
To tolerate certain issues in a directory, add a line with the test name in "o2linter_config".
So I tried to rename the file and the structs inside so this test can pass.

@vkucera

vkucera commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

@Oveissheibani

  • Please do not paste (distorted) logs here.
  • I am referring to the disable directives.

…xx and rename main struct to match (fixes o2-linter name/workflow-file)
@Oveissheibani

Copy link
Copy Markdown
Contributor Author

@Oveissheibani

  • Please do not paste (distorted) logs here.
  • I am referring to the disable directives.
  1. Sure. Apology again. Fixed the comment and removed the distorted log.
  2. I realized my original O2 linter was pointing to the mismatch of struct names and the filename. I changed the whole name of the files (Lambdacascade->LambdaCascade), but again the CMAKELIST gave me an error for the name of the task that does not belong to me( r2p24id / lambdacorr / nuclei-balance;). Then I returned the names to normal to avoid CMAKELIST file to be compared. The reason I added that line was a mistake to avoid the failing (wrong strategy).

I am currently working to resolved my confusion since I don't have that much experience in GitHub. Sorry if you get ping anytime it fails, and thanks for your patience.

@Oveissheibani Oveissheibani marked this pull request as ready for review July 5, 2026 16:44
@Oveissheibani Oveissheibani marked this pull request as draft July 5, 2026 16:44
@Oveissheibani Oveissheibani marked this pull request as ready for review July 5, 2026 19:00
@alibuild

alibuild commented Jul 5, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/code-check for d24351b at 2026-07-05 21:22:

## sw/BUILD/O2Physics-code-check-latest/log
--
========== List of issues found ==========
++ echo 'Found 35 errors and 177 warnings.'
Found 35 errors and 177 warnings.
++ [[ 35 -gt 0 ]]
++ cat /sw/BUILD/7a5bc2ae2e112ca4424333835552f95d4a9f9b8d/O2Physics-code-check/errors.txt
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:31:1: error: included header ASoAHelpers.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:35:1: error: included header BinningPolicy.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:37:1: error: included header GroupedCombinations.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:60:1: error: included header utility is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:645:8: error: constructor does not initialize these fields: ccdb, pdgDB [cppcoreguidelines-pro-type-member-init,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1277:14: error: redundant boolean literal in conditional return statement [readability-simplify-boolean-expr,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1427:7: error: do not use 'else' after 'return' [readability-else-after-return,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1657:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1657:25: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1657:25: error: redundant explicit casting to the same type 'TObject *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1662:25: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1683:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1683:25: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1683:25: error: redundant explicit casting to the same type 'TObject *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1688:25: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1739:22: error: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1789:22: error: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1790:22: error: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1933:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1934:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1936:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1937:7: error: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2178:52: error: the parameter 'rec' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2178:78: error: the parameter 'collision' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2217:7: error: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2349:5: error: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2708:7: error: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2747:7: error: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2842:22: error: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:2922:29: error: repeated branch body in conditional chain [bugprone-branch-clone,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:3217:79: error: no header providing "M_PI" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:3467:16: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:3825:20: error: local copy 'effCent' of the variable 'cent' is never modified; consider avoiding the copy [performance-unnecessary-copy-initialization,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:4931:16: error: use designated initializer list to initialize 'LamLite' [modernize-use-designated-initializers,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:5063:16: error: use designated initializer list to initialize 'LamLite' [modernize-use-designated-initializers,-warnings-as-errors]
++ [[ 177 -gt 0 ]]
++ cat /sw/BUILD/7a5bc2ae2e112ca4424333835552f95d4a9f9b8d/O2Physics-code-check/warnings.txt
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1492:48: warning: statement should be inside braces [readability-braces-around-statements]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1501:15: warning: statement should be inside braces [readability-braces-around-statements]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1505:50: warning: statement should be inside braces [readability-braces-around-statements]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1511:70: warning: statement should be inside braces [readability-braces-around-statements]
PWGCF/TwoParticleCorrelations/Tasks/Lambdacascadecorrelation.cxx:1516:73: warning: statement should be inside braces [readability-braces-around-statements]
[0 more errors; see full log]

Full log here.

@Oveissheibani Oveissheibani marked this pull request as draft July 5, 2026 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants