|
13 | 13 | /// \brief Analysis task for Lambda spin spin correlation |
14 | 14 | /// |
15 | 15 | |
| 16 | + |
16 | 17 |
|
17 | | -#include <fairlogger/Logger.h> |
18 | | -#include <tuple> |
19 | | -#include <string> |
20 | | -#include <vector> |
21 | | -#include "Math/Vector2D.h" |
22 | | -#include "Math/Vector3D.h" |
23 | | -#include "Math/Vector4D.h" |
24 | | -#include "Math/GenVector/Boost.h" |
| 18 | +#include "PWGLF/DataModel/LFStrangenessPIDTables.h" |
| 19 | +#include "PWGLF/DataModel/LFStrangenessTables.h" |
| 20 | +#include "PWGMM/Mult/DataModel/Index.h" // for Particles2Tracks table |
25 | 21 |
|
26 | | -#include "Framework/runDataProcessing.h" |
27 | | -#include "Framework/AnalysisTask.h" |
28 | | -#include "Framework/AnalysisDataModel.h" |
29 | | -#include "Framework/HistogramRegistry.h" |
30 | | -#include "Framework/StepTHn.h" |
31 | | -#include "Common/DataModel/PIDResponse.h" |
32 | | -#include "Common/DataModel/Multiplicity.h" |
| 22 | +#include "Common/Core/TrackSelection.h" |
| 23 | +#include "Common/Core/trackUtilities.h" |
33 | 24 | #include "Common/DataModel/Centrality.h" |
34 | | -#include "Common/DataModel/TrackSelectionTables.h" |
35 | 25 | #include "Common/DataModel/EventSelection.h" |
36 | | -#include "Common/Core/trackUtilities.h" |
| 26 | +#include "Common/DataModel/FT0Corrected.h" |
| 27 | +#include "Common/DataModel/Multiplicity.h" |
| 28 | +#include "Common/DataModel/PIDResponse.h" |
| 29 | +#include "Common/DataModel/TrackSelectionTables.h" |
| 30 | + |
| 31 | +#include "CCDB/BasicCCDBManager.h" |
37 | 32 | #include "CommonConstants/PhysicsConstants.h" |
38 | | -#include "Common/Core/TrackSelection.h" |
39 | 33 | #include "Framework/ASoAHelpers.h" |
| 34 | +#include "Framework/AnalysisDataModel.h" |
| 35 | +#include "Framework/AnalysisTask.h" |
| 36 | +#include "Framework/HistogramRegistry.h" |
| 37 | +#include "Framework/StepTHn.h" |
| 38 | +#include "Framework/runDataProcessing.h" |
40 | 39 | #include "ReconstructionDataFormats/Track.h" |
41 | | -#include "CCDB/BasicCCDBManager.h" |
42 | | -#include "PWGLF/DataModel/LFStrangenessTables.h" |
43 | | -#include "PWGLF/DataModel/LFStrangenessPIDTables.h" |
44 | | -#include "Common/DataModel/FT0Corrected.h" |
45 | | -#include "PWGMM/Mult/DataModel/Index.h" // for Particles2Tracks table |
| 40 | + |
| 41 | +#include "Math/GenVector/Boost.h" |
| 42 | +#include "Math/Vector2D.h" |
| 43 | +#include "Math/Vector3D.h" |
| 44 | +#include "Math/Vector4D.h" |
| 45 | + |
| 46 | +#include <fairlogger/Logger.h> |
| 47 | + |
| 48 | +#include <string> |
| 49 | +#include <tuple> |
| 50 | +#include <vector> |
46 | 51 |
|
47 | 52 | using namespace o2; |
48 | 53 | using namespace o2::framework; |
@@ -94,13 +99,13 @@ struct LfTaskLambdaSpinCorr { |
94 | 99 | Configurable<float> confV0PtMin{"confV0PtMin", 0.f, "Minimum transverse momentum of V0"}; |
95 | 100 | Configurable<float> confV0PtMax{"confV0PtMax", 0.f, "Maximum transverse momentum of V0"}; |
96 | 101 | Configurable<float> confV0Rap{"confV0Rap", 0.8f, "Rapidity range of V0"}; |
97 | | - Configurable<double> confV0DCADaughMax{"confV0DCADaughMax", 0.2f, "Maximum DCA between the V0 daughters"}; |
| 102 | + Configurable<float> confV0DCADaughMax{"confV0DCADaughMax", 0.2f, "Maximum DCA between the V0 daughters"}; |
98 | 103 | Configurable<double> confV0CPAMin{"confV0CPAMin", 0.9998f, "Minimum CPA of V0"}; |
99 | 104 | Configurable<float> confV0TranRadV0Min{"confV0TranRadV0Min", 1.5f, "Minimum transverse radius"}; |
100 | 105 | Configurable<float> confV0TranRadV0Max{"confV0TranRadV0Max", 100.f, "Maximum transverse radius"}; |
101 | 106 | Configurable<double> cMaxV0DCA{"cMaxV0DCA", 1.2, "Maximum V0 DCA to PV"}; |
102 | | - Configurable<double> cMinV0DCAPr{"cMinV0DCAPr", 0.05, "Minimum V0 daughters DCA to PV for Pr"}; |
103 | | - Configurable<double> cMinV0DCAPi{"cMinV0DCAPi", 0.05, "Minimum V0 daughters DCA to PV for Pi"}; |
| 107 | + Configurable<float> cMinV0DCAPr{"cMinV0DCAPr", 0.05, "Minimum V0 daughters DCA to PV for Pr"}; |
| 108 | + Configurable<float> cMinV0DCAPi{"cMinV0DCAPi", 0.05, "Minimum V0 daughters DCA to PV for Pi"}; |
104 | 109 | Configurable<float> cMaxV0LifeTime{"cMaxV0LifeTime", 20, "Maximum V0 life time"}; |
105 | 110 |
|
106 | 111 | // config for V0 daughters |
@@ -795,7 +800,10 @@ struct LfTaskLambdaSpinCorr { |
795 | 800 | } |
796 | 801 | PROCESS_SWITCH(LfTaskLambdaSpinCorr, processME, "Process data ME", true); |
797 | 802 |
|
798 | | - void processDerivedData(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps>::iterator const& collision, v0Candidates const& V0s, dauTracks const&) |
| 803 | + Filter v0der = (nabs(aod::v0data::dcapostopv) > cMinV0DCAPr && nabs(aod::v0data::dcanegtopv) > cMinV0DCAPi && nabs(aod::v0data::dcaV0daughters) < confV0DCADaughMax); |
| 804 | + using v0Cand = soa::Filtered<v0Candidates>; |
| 805 | + // void processDerivedData(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps>::iterator const& collision, v0Candidates const& V0s, dauTracks const&) |
| 806 | + void processDerivedData(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps>::iterator const& collision, v0Cand const& V0s, dauTracks const&) |
799 | 807 | { |
800 | 808 | histos.fill(HIST("hEvtSelInfo"), 0.5); |
801 | 809 | if (rctCut.requireRCTFlagChecker && !rctChecker(collision)) { |
@@ -914,13 +922,14 @@ struct LfTaskLambdaSpinCorr { |
914 | 922 | } |
915 | 923 | PROCESS_SWITCH(LfTaskLambdaSpinCorr, processDerivedData, "Process derived data", true); |
916 | 924 |
|
917 | | - Preslice<v0Candidates> tracksPerCollisionV0Mixed = o2::aod::v0data::straCollisionId; // for derived data only |
918 | | - void processDerivedDataMixed(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps> const& collisions, v0Candidates const& V0s, dauTracks const&) |
| 925 | + Preslice<v0Cand> tracksPerCollisionV0Mixed = o2::aod::v0data::straCollisionId; // for derived data only |
| 926 | + // Preslice<v0Candidates> tracksPerCollisionV0Mixed = o2::aod::v0data::straCollisionId; // for derived data only |
| 927 | + // void processDerivedDataMixed(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps> const& collisions, v0Candidates const& V0s, dauTracks const&) |
| 928 | + void processDerivedDataMixed(soa::Join<aod::StraCollisions, aod::StraCents, aod::StraEvSels, aod::StraStamps> const& collisions, v0Cand const& V0s, dauTracks const&) |
919 | 929 |
|
920 | 930 | { |
921 | 931 |
|
922 | 932 | for (auto& [collision1, collision2] : selfCombinations(colBinning, nMix, -1, collisions, collisions)) { |
923 | | - // LOGF(info, "Mixed event collisions: (%d, %d)", collision1.index(), collision2.index()); |
924 | 933 | if (rctCut.requireRCTFlagChecker && !rctChecker(collision1)) { |
925 | 934 | continue; |
926 | 935 | } |
|
0 commit comments