Skip to content

Commit 823590e

Browse files
committed
Merge branch 'master' into fixes-PWGEM
2 parents f393615 + c07b422 commit 823590e

File tree

55 files changed

+5044
-2320
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+5044
-2320
lines changed

ALICE3/DataModel/OTFMCParticle.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
#include <Framework/AnalysisDataModel.h>
2323

24+
#include <cstdint>
25+
2426
namespace o2::aod
2527
{
2628

ALICE3/Macros/drawFastTracker.C

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,25 @@
1414

1515
#include <DataFormatsParameters/GRPMagField.h>
1616
#include <DetectorsBase/Propagator.h>
17+
#include <Framework/Logger.h>
18+
#include <ReconstructionDataFormats/Track.h>
1719
#include <ReconstructionDataFormats/Vertex.h>
1820

1921
#include <TAxis.h>
2022
#include <TCanvas.h>
2123
#include <TDatabasePDG.h>
2224
#include <TEfficiency.h>
2325
#include <TGraph.h>
24-
#include <TH1F.h>
26+
#include <TH1.h>
2527
#include <TLatex.h>
2628
#include <TLorentzVector.h>
29+
#include <TParticlePDG.h>
30+
#include <TString.h>
31+
32+
#include <RtypesCore.h>
33+
34+
#include <cstddef>
35+
#include <vector>
2736

2837
void drawFastTracker(float magneticField = 5.f, // in units of kGauss
2938
const int nch = 100, // number of charged particles per unit rapidity

ALICE3/Macros/testFastTracker.C

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@
1515

1616
#include "ALICE3/Core/FastTracker.h"
1717

18-
#include <CCDB/BasicCCDBManager.h>
19-
#include <DataFormatsParameters/GRPLHCIFData.h>
2018
#include <Framework/Logger.h>
2119

20+
#include <string>
21+
2222
void testFastTracker(std::string geometryFile = "a3geo.ini")
2323
{
2424

DPG/Tasks/AOTTrack/PID/TOF/qaPIDTOFDynamic.cxx

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,30 @@
1616
///
1717

1818
#include "Common/DataModel/EventSelection.h"
19-
#include "Common/DataModel/FT0Corrected.h"
2019
#include "Common/DataModel/PIDResponseTOF.h"
2120
#include "Common/DataModel/TrackSelectionTables.h"
22-
#include "Common/TableProducer/PID/pidTOFBase.h"
2321

22+
#include <CCDB/BasicCCDBManager.h>
23+
#include <Framework/ASoA.h>
24+
#include <Framework/AnalysisDataModel.h>
25+
#include <Framework/AnalysisHelpers.h>
2426
#include <Framework/AnalysisTask.h>
27+
#include <Framework/Configurable.h>
28+
#include <Framework/Expressions.h>
2529
#include <Framework/HistogramRegistry.h>
30+
#include <Framework/HistogramSpec.h>
31+
#include <Framework/InitContext.h>
32+
#include <Framework/OutputObjHeader.h>
2633
#include <Framework/StaticFor.h>
2734
#include <Framework/runDataProcessing.h>
35+
#include <PID/PIDTOFParamService.h>
36+
#include <ReconstructionDataFormats/PID.h>
37+
38+
#include <TH1.h>
39+
#include <TMath.h>
40+
#include <TString.h>
41+
42+
#include <string_view>
2843

2944
using namespace o2;
3045
using namespace o2::framework;

DPG/Tasks/AOTTrack/qaEfficiency.cxx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ struct QaEfficiency {
201201
Configurable<bool> numSameCollision{"numSameCollision", false, "Flag to ask that the numerator is in the same collision as the denominator"};
202202
Configurable<bool> noFakesHits{"noFakesHits", false, "Flag to reject tracks that have fake hits"};
203203
Configurable<bool> skipEventsWithoutTPCTracks{"skipEventsWithoutTPCTracks", false, "Flag to reject events that have no tracks reconstructed in the TPC"};
204+
Configurable<bool> skipParticlesFromBackgroundEvents{"skipParticlesFromBackgroundEvents", false, "Flag to reject particles from background events (for embedded MC)"};
204205
Configurable<float> maxProdRadius{"maxProdRadius", 9999.f, "Maximum production radius of the particle under study"};
205206
Configurable<float> nsigmaTPCDe{"nsigmaTPCDe", 3.f, "Value of the Nsigma TPC cut for deuterons PID"};
206207
// Charge selection
@@ -1548,6 +1549,9 @@ struct QaEfficiency {
15481549
histos.fill(countingHisto, trkCutIdxHasMcPart); // Tracks with particles (i.e. no fakes)
15491550
}
15501551
const auto mcParticle = track.mcParticle();
1552+
if (skipParticlesFromBackgroundEvents && mcParticle.fromBackgroundEvent()) {
1553+
return false;
1554+
}
15511555
if (!isInAcceptance<true, doFillHisto>(mcParticle, countingHisto, trkCutIdxHasMcPart)) {
15521556
// 3: pt cut 4: eta cut 5: phi cut 6: y cut
15531557
return false;
@@ -1913,6 +1917,9 @@ struct QaEfficiency {
19131917

19141918
/// only to fill denominator of ITS-TPC matched primary tracks only in MC events with at least 1 reco. vtx
19151919
for (const auto& particle : groupedMcParticles) { // Particle loop
1920+
if (skipParticlesFromBackgroundEvents && particle.fromBackgroundEvent()) {
1921+
continue;
1922+
}
19161923

19171924
/// require generated particle in acceptance
19181925
if (!isInAcceptance<true, false>(particle, nullptr)) {
@@ -1968,6 +1975,9 @@ struct QaEfficiency {
19681975
// Loop on particles to fill the denominator
19691976
float dNdEta = 0; // Multiplicity
19701977
for (const auto& mcParticle : groupedMcParticles) {
1978+
if (skipParticlesFromBackgroundEvents && mcParticle.fromBackgroundEvent()) {
1979+
continue;
1980+
}
19711981
if (TMath::Abs(mcParticle.eta()) <= 2.f && !mcParticle.has_daughters()) {
19721982
dNdEta += 1.f;
19731983
}

PWGCF/DataModel/CorrelationsDerived.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,14 @@ DECLARE_SOA_TABLE(CFMcParticles, "AOD", "CFMCPARTICLE", //! Reduced MC particle
4646
mcparticle::IsPhysicalPrimary<mcparticle::Flags>);
4747
using CFMcParticle = CFMcParticles::iterator;
4848

49+
namespace cfmultiplicity
50+
{
51+
DECLARE_SOA_COLUMN(Multiplicity, multiplicity, float);
52+
}
53+
DECLARE_SOA_TABLE(CFMultiplicities, "AOD", "CFMULTIPLICITY", cfmultiplicity::Multiplicity);
54+
55+
using CFMultiplicity = CFMultiplicities::iterator;
56+
4957
namespace cfcollision
5058
{
5159
DECLARE_SOA_INDEX_COLUMN(CFMcCollision, cfMcCollision); //! Index to reduced MC collision
@@ -157,7 +165,8 @@ enum ParticleDecay {
157165
LambdaToPPiTight,
158166
AntiLambdaToPiPLoose,
159167
AntiLambdaToPiPTight,
160-
D0barToKPiExclusive
168+
D0barToKPiExclusive,
169+
PhiToKKPID3Mixed
161170
};
162171
} // namespace cf2prongtrack
163172
DECLARE_SOA_TABLE(CF2ProngTracks, "AOD", "CF2PRONGTRACK", //! Reduced track table

PWGCF/EbyEFluctuations/Tasks/netprotcumulants.cxx

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ struct NetProtCumulants {
101101
Configurable<bool> cfgIfRejectElectron{"cfgIfRejectElectron", true, "Remove electrons"};
102102
Configurable<bool> cfgIfMandatoryTOF{"cfgIfMandatoryTOF", true, "Mandatory TOF requirement to remove pileup"};
103103
Configurable<bool> cfgEvSelkIsVertexTOFmatched{"cfgEvSelkIsVertexTOFmatched", true, "If matched with TOF, for pileup"};
104+
Configurable<bool> cfgEvSelkIsGoodZvtxFT0vsPV{"cfgEvSelkIsGoodZvtxFT0vsPV", false, "Apply kIsGoodZvtxFT0vsPV event selection"};
104105
ConfigurableAxis cfgCentralityBins{"cfgCentralityBins", {90, 0., 90.}, "Centrality/Multiplicity percentile bining"};
105106

106107
// Connect to ccdb
@@ -1078,7 +1079,7 @@ struct NetProtCumulants {
10781079
}
10791080
//-------------------------------------------------------------------------------------------
10801081
}
1081-
PROCESS_SWITCH(NetProtCumulants, processMCGen, "Process Generated", false);
1082+
PROCESS_SWITCH(NetProtCumulants, processMCGen, "Process Generated", true);
10821083

10831084
void processMCRec(MyMCRecCollision const& collision, MyMCTracks const& tracks, aod::McCollisions const&, aod::McParticles const&)
10841085
{
@@ -1097,7 +1098,9 @@ struct NetProtCumulants {
10971098
}
10981099
if (cfgEvSelkIsVertexTOFmatched && !(collision.selection_bit(o2::aod::evsel::kIsVertexTOFmatched))) {
10991100
return;
1100-
;
1101+
}
1102+
if (cfgEvSelkIsGoodZvtxFT0vsPV && !(collision.selection_bit(o2::aod::evsel::kIsGoodZvtxFT0vsPV))) {
1103+
return;
11011104
}
11021105

11031106
auto cent = collision.centFT0C();
@@ -2026,7 +2029,7 @@ struct NetProtCumulants {
20262029
histos.get<TProfile2D>(HIST("Prof2D_Q112221_111"))->Fill(cent, sampleIndex, fQ112221_111);
20272030
}
20282031
}
2029-
PROCESS_SWITCH(NetProtCumulants, processMCRec, "Process Generated", false);
2032+
PROCESS_SWITCH(NetProtCumulants, processMCRec, "Process Generated", true);
20302033

20312034
void processDataRec(AodCollisions::iterator const& coll, aod::BCsWithTimestamps const&, AodTracks const& inputTracks)
20322035
{
@@ -2044,7 +2047,10 @@ struct NetProtCumulants {
20442047

20452048
if (cfgEvSelkIsVertexTOFmatched && !(coll.selection_bit(o2::aod::evsel::kIsVertexTOFmatched))) {
20462049
return;
2047-
;
2050+
}
2051+
2052+
if (cfgEvSelkIsGoodZvtxFT0vsPV && !(coll.selection_bit(o2::aod::evsel::kIsGoodZvtxFT0vsPV))) {
2053+
return;
20482054
}
20492055

20502056
histos.fill(HIST("hZvtx_after"), coll.posZ());
@@ -2978,7 +2984,7 @@ struct NetProtCumulants {
29782984
histos.get<TProfile2D>(HIST("Prof2D_Q112221_111"))->Fill(cent, sampleIndex, fQ112221_111);
29792985
}
29802986
}
2981-
PROCESS_SWITCH(NetProtCumulants, processDataRec, "Process real data", true);
2987+
PROCESS_SWITCH(NetProtCumulants, processDataRec, "Process real data", false);
29822988
};
29832989

29842990
WorkflowSpec defineDataProcessing(ConfigContext const& cfgc)

0 commit comments

Comments
 (0)