Skip to content

[PWGCF] Add MFT-MFT correlation task - #18485

Merged
lauraser merged 11 commits into
AliceO2Group:masterfrom
mintu1999:mftcorrelation
Nov 2, 2026
Merged

lauraser merged 11 commits into
AliceO2Group:masterfrom
mintu1999:mftcorrelation

Conversation

@mintu1999

Copy link
Copy Markdown
Contributor

Summary

This PR adds a new task, mftcorrelations, to PWGCF/TwoParticleCorrelations/Tasks. It studies two-particle azimuthal correlations built from MFT tracks. It constructs the same-event and mixed-event distributions, using CorrelationContainer for the correlation histograms.

Changes

  • New task: PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx, registered in CMakeLists.txt as mft-correlations.
  • Core change: PWGCF/Core/CorrelationContainer.cxx now has an extra efficiency axis, used to correct the φ distribution of MFT tracks.

Testing

  • Data: pp, LHC24ap_apass1
  • MC: LHC25b4a6
  • clang-format applied and the O2-linter passes locally.

@github-actions

github-actions Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

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

mintu1999 added a commit to mintu1999/O2Physics that referenced this pull request Oct 28, 2026
Please consider the following formatting changes to AliceO2Group#18485
Please consider the following formatting changes to AliceO2Group#18485
@mintu1999

Copy link
Copy Markdown
Contributor Author

All required tests are successful. Kindly approve for further checks.

@vkucera

vkucera commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator

You need to resolve the conflicts first.

Please consider the following formatting changes to AliceO2Group#18485
@mintu1999

Copy link
Copy Markdown
Contributor Author

Dear @vkucera,

I have now resolved the conflicts. All the required tests are successful. kindly approve for further checks.

@vkucera

vkucera commented Oct 29, 2026

Copy link
Copy Markdown
Collaborator

Dear @vkucera,

I have now resolved the conflicts. All the required tests are successful. kindly approve for further checks.

Why did you not fix issues reported by the non-required tests as well?

@mintu1999

Copy link
Copy Markdown
Contributor Author

Dear @vkucera,
I have now also fixed the issues reported by the non-required tests. Kindly approve for further checks.

wenyaCern
wenyaCern previously approved these changes Oct 30, 2026
@wenyaCern
wenyaCern enabled auto-merge (squash) October 30, 2026 18:24
@alibuild

alibuild commented Oct 30, 2026 •

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/code-check for aeaf83e at 2026-10-31 12:26:

## sw/BUILD/O2Physics-code-check-latest/log
--
========== List of issues found ==========
++ echo 'To reproduce the results below locally, run: '\''aliBuild build O2Physics-code-check -e ALIBUILD_BASE_HASH=upstream/master'\''.'
To reproduce the results below locally, run: 'aliBuild build O2Physics-code-check -e ALIBUILD_BASE_HASH=upstream/master'.
++ echo 'To apply all automatic fixes, add the '\''-e O2PHYSICS_CHECKER_FIX=1'\'' option.'
To apply all automatic fixes, add the '-e O2PHYSICS_CHECKER_FIX=1' option.
++ echo 'See the documentation for more details at: <https://aliceo2group.github.io/analysis-framework/docs/tools/#running-with-o2physics-code-check>.'
See the documentation for more details at: <https://aliceo2group.github.io/analysis-framework/docs/tools/#running-with-o2physics-code-check>.
++ echo 'Found 33 errors and 91 warnings.'
Found 33 errors and 91 warnings.
++ [[ 33 -gt 0 ]]
++ cat /sw/BUILD/9f5b87485788f61a43ed90f5a7f0d70e8e7b9c2e/O2Physics-code-check/errors.txt
PWGCF/Core/CorrelationContainer.cxx:27:1: error: included header TH1D.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:28:1: error: included header TH2D.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:29:1: error: included header TH3D.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:31:1: error: included header THnSparse.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:213:34: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:530:57: error: C-style casts are discouraged; use static_cast [google-readability-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:638:7: error: Value stored to 'mixedNormError' is never read [clang-analyzer-deadcode.DeadStores,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:735:25: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:773:18: error: C-style casts are discouraged; use static_cast [google-readability-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:843:20: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:943:32: error: C-style casts are discouraged; use static_cast [google-readability-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1017:13: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1027:13: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1177:19: error: redundant explicit casting to the same type 'TH1D *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1178:17: error: redundant explicit casting to the same type 'TH3D *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1183:19: error: redundant explicit casting to the same type 'TH1D *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1184:17: error: redundant explicit casting to the same type 'TH3D *' as the sub-expression, remove this casting [readability-redundant-casting,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1437:23: error: do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead [cppcoreguidelines-pro-type-static-cast-downcast,-warnings-as-errors]
PWGCF/Core/CorrelationContainer.cxx:1580:13: error: C-style casts are discouraged; use static_cast/const_cast/reinterpret_cast [google-readability-casting,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:18:1: error: included header PairCuts.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:20:1: error: included header TriggerAliases.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:31:1: error: included header ASoAHelpers.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:48:1: error: included header TMath.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:49:1: error: included header TVector2.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:283:39: error: no header providing "std::distance" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:389:34: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:401:37: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:414:33: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:450:7: error: no header providing "TAxis" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:528:22: error: do not use reinterpret_cast [cppcoreguidelines-pro-type-reinterpret-cast,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:810:28: error: no header providing "std::is_same" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:972:5: error: no header providing "o2::framework::SameKindPair" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/TwoParticleCorrelations/Tasks/mftcorrelations.cxx:1027:5: error: no header providing "o2::framework::Pair" is directly included [misc-include-cleaner,-warnings-as-errors]
++ [[ 91 -gt 0 ]]
++ cat /sw/BUILD/9f5b87485788f61a43ed90f5a7f0d70e8e7b9c2e/O2Physics-code-check/warnings.txt
PWGCF/Core/CorrelationContainer.cxx:55:48: warning: initializer for base class 'TNamed' is redundant [readability-redundant-member-init]
[0 more errors; see full log]

Full log here.

auto-merge was automatically disabled November 2, 2026 07:23

Head branch was pushed to by a user without write access

@mintu1999
mintu1999 requested a review from wenyaCern November 2, 2026 08:29
@wenyaCern
wenyaCern enabled auto-merge (squash) November 2, 2026 08:56
@vkucera

vkucera commented Nov 2, 2026 •

Copy link
Copy Markdown
Collaborator

@mintu1999 Since you are adding a new file, please fix all reported errors and warnings related to your file so that the CI reports only new issues in the future PRs.

@alibuild

alibuild commented Nov 2, 2026

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/code-check for cc5ba53 at 2026-11-02 12:45:

## sw/BUILD/O2Physics-code-check-latest/log
--
========== List of issues found ==========
++ echo 'To reproduce the results below locally, run: '\''aliBuild build O2Physics-code-check -e ALIBUILD_BASE_HASH=upstream/master'\''.'
To reproduce the results below locally, run: 'aliBuild build O2Physics-code-check -e ALIBUILD_BASE_HASH=upstream/master'.
++ echo 'To apply all automatic fixes, add the '\''-e O2PHYSICS_CHECKER_FIX=1'\'' option.'
To apply all automatic fixes, add the '-e O2PHYSICS_CHECKER_FIX=1' option.
++ echo 'See the documentation for more details at: <https://aliceo2group.github.io/analysis-framework/docs/tools/#running-with-o2physics-code-check>.'
See the documentation for more details at: <https://aliceo2group.github.io/analysis-framework/docs/tools/#running-with-o2physics-code-check>.
++ echo 'Found 1 errors and 88 warnings.'
Found 1 errors and 88 warnings.
++ [[ 1 -gt 0 ]]
++ cat /sw/BUILD/a844dcb21bdc51e783ba7f44d14fc10d209e9e5a/O2Physics-code-check/errors.txt
PWGCF/Core/CorrelationContainer.cxx:624:9: error: Value stored to 'mixedNormError' is never read [clang-analyzer-deadcode.DeadStores,-warnings-as-errors]
++ [[ 88 -gt 0 ]]
++ cat /sw/BUILD/a844dcb21bdc51e783ba7f44d14fc10d209e9e5a/O2Physics-code-check/warnings.txt
PWGCF/Core/CorrelationContainer.cxx:54:48: warning: initializer for base class 'TNamed' is redundant [readability-redundant-member-init]
PWGCF/Core/CorrelationContainer.cxx:69:64: warning: implicit conversion 'int' -> 'bool' [readability-implicit-bool-conversion]
PWGCF/Core/CorrelationContainer.cxx:96:116: warning: implicit conversion 'int' -> 'bool' [readability-implicit-bool-conversion]
PWGCF/Core/CorrelationContainer.cxx:137:1: warning: constructor does not initialize these fields: mEventCount [cppcoreguidelines-pro-type-member-init]
PWGCF/Core/CorrelationContainer.cxx:151:93: warning: implicit conversion 'int' -> 'bool' [readability-implicit-bool-conversion]
PWGCF/Core/CorrelationContainer.cxx:260:3: warning: use auto when initializing with new to avoid duplicating the type name [modernize-use-auto]
PWGCF/Core/CorrelationContainer.cxx:269:5: warning: use auto when initializing with a cast to avoid duplicating the type name [modernize-use-auto]
PWGCF/Core/CorrelationContainer.cxx:335:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:336:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:363:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:370:10: warning: implicit conversion 'int' -> 'bool' [readability-implicit-bool-conversion]
PWGCF/Core/CorrelationContainer.cxx:371:22: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:427:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:428:51: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:693:9: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:694:9: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:738:24: warning: narrowing conversion from 'Double_t' (aka 'double') to 'int64_t' (aka 'long') [bugprone-narrowing-conversions]
PWGCF/Core/CorrelationContainer.cxx:751:5: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:752:5: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:832:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:833:72: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:834:71: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:913:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:914:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:958:3: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:965:10: warning: implicit conversion 'int' -> 'bool' [readability-implicit-bool-conversion]
PWGCF/Core/CorrelationContainer.cxx:1054:7: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:1058:70: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:1072:71: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:1459:17: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:1460:17: warning: do not declare C-style arrays, use 'std::array' instead [modernize-avoid-c-arrays]
PWGCF/Core/CorrelationContainer.cxx:1462:54: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
PWGCF/Core/CorrelationContainer.cxx:1463:52: warning: do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead [cppcoreguidelines-pro-bounds-array-to-pointer-decay]
[0 more errors; see full log]

Full log here.

@lauraser
lauraser disabled auto-merge November 2, 2026 12:39
@lauraser
lauraser merged commit b533857 into AliceO2Group:master Nov 2, 2026
15 of 16 checks passed
@jgrosseo

jgrosseo commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

This breaks the correlation task nightly test. Reverting until it is fixed.

@jgrosseo

jgrosseo commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

@jgrosseo

jgrosseo commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Insteads of reverting @ktf proposes #18564
@mintu1999 @wenyaCern please comment

@jgrosseo

jgrosseo commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Could you test the fix and see if it works for you, and ideally also for the existing correlation task? You can take the config we run nightly as part of the Hyperloop integration test from here: https://alimonitor.cern.ch/hyperloop/wagon-test/795035/general

@jgrosseo

jgrosseo commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

In lack of a response I have merged #18564
In case it doesn't fix the problem I will need to revert this PR instead...

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.

6 participants