Skip to content

Commit b1cd5c3

Browse files
authored
Merge branch 'AliceO2Group:master' into master
2 parents 708b809 + c606845 commit b1cd5c3

File tree

170 files changed

+17688
-7030
lines changed

Some content is hidden

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

170 files changed

+17688
-7030
lines changed

ALICE3/Core/FastTracker.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -516,7 +516,7 @@ int FastTracker::FastTrack(o2::track::TrackParCov inputTrack, o2::track::TrackPa
516516
for (int ii = 0; ii < o2::track::kCovMatSize; ii++)
517517
covMat[ii] = outputTrack.getCov()[ii];
518518
TMatrixDSym m(5);
519-
float fcovm[5][5];
519+
double fcovm[5][5]; // double precision is needed for regularisation
520520

521521
for (int ii = 0, k = 0; ii < 5; ++ii) {
522522
for (int j = 0; j < ii + 1; ++j, ++k) {

ALICE3/DataModel/OTFMulticharm.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,24 +116,24 @@ DECLARE_SOA_TABLE(MCharmCores, "AOD", "MCharmCores",
116116
otfmulticharm::Eta,
117117

118118
otfmulticharm::XiDCAxy,
119-
otfmulticharm::XicDCAxy,
120-
otfmulticharm::XiccDCAxy,
121119
otfmulticharm::XiDCAz,
120+
otfmulticharm::XicDCAxy,
122121
otfmulticharm::XicDCAz,
122+
otfmulticharm::XiccDCAxy,
123123
otfmulticharm::XiccDCAz,
124124

125125
otfmulticharm::PiFromXiDCAxy,
126-
otfmulticharm::PiFromLaDCAxy,
127-
otfmulticharm::PrFromLaDCAxy,
128126
otfmulticharm::PiFromXiDCAz,
127+
otfmulticharm::PiFromLaDCAxy,
129128
otfmulticharm::PiFromLaDCAz,
129+
otfmulticharm::PrFromLaDCAxy,
130130
otfmulticharm::PrFromLaDCAz,
131131

132132
otfmulticharm::Pi1cDCAxy,
133-
otfmulticharm::Pi2cDCAxy,
134-
otfmulticharm::PiccDCAxy,
135133
otfmulticharm::Pi1cDCAz,
134+
otfmulticharm::Pi2cDCAxy,
136135
otfmulticharm::Pi2cDCAz,
136+
otfmulticharm::PiccDCAxy,
137137
otfmulticharm::PiccDCAz,
138138

139139
otfmulticharm::XicDecayRadius2D,

ALICE3/TableProducer/OTF/onTheFlyRichPid.cxx

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -745,10 +745,15 @@ struct OnTheFlyRichPid {
745745
}
746746

747747
for (const auto& track : tracks) {
748+
749+
float nSigmaBarrelRich[5] = {error_value, error_value, error_value, error_value, error_value};
750+
748751
// first step: find precise arrival time (if any)
749752
// --- convert track into perfect track
750-
if (!track.has_mcParticle()) // should always be OK but check please
753+
if (!track.has_mcParticle()) { // should always be OK but check please
754+
upgradeRich(nSigmaBarrelRich[0], nSigmaBarrelRich[1], nSigmaBarrelRich[2], nSigmaBarrelRich[3], nSigmaBarrelRich[4]);
751755
continue;
756+
}
752757

753758
auto mcParticle = track.mcParticle();
754759
o2::track::TrackParCov o2track = o2::upgrade::convertMCParticleToO2Track(mcParticle, pdg);
@@ -761,12 +766,14 @@ struct OnTheFlyRichPid {
761766
// get particle to calculate Cherenkov angle and resolution
762767
auto pdgInfo = pdg->GetParticle(mcParticle.pdgCode());
763768
if (pdgInfo == nullptr) {
769+
upgradeRich(nSigmaBarrelRich[0], nSigmaBarrelRich[1], nSigmaBarrelRich[2], nSigmaBarrelRich[3], nSigmaBarrelRich[4]);
764770
continue;
765771
}
766772

767773
// find track bRICH sector
768774
int i_sector = findSector(o2track.getEta());
769775
if (i_sector < 0) {
776+
upgradeRich(nSigmaBarrelRich[0], nSigmaBarrelRich[1], nSigmaBarrelRich[2], nSigmaBarrelRich[3], nSigmaBarrelRich[4]);
770777
continue;
771778
}
772779

@@ -794,12 +801,12 @@ struct OnTheFlyRichPid {
794801
}
795802

796803
// Straight to Nsigma
797-
float deltaThetaBarrelRich[5], nSigmaBarrelRich[5];
804+
float deltaThetaBarrelRich[5]; //, nSigmaBarrelRich[5];
798805
int lpdg_array[5] = {kElectron, kMuonMinus, kPiPlus, kKPlus, kProton};
799806
float masses[5];
800807

801808
for (int ii = 0; ii < 5; ii++) {
802-
nSigmaBarrelRich[ii] = error_value;
809+
// nSigmaBarrelRich[ii] = error_value;
803810

804811
auto pdgInfoThis = pdg->GetParticle(lpdg_array[ii]);
805812
masses[ii] = pdgInfoThis->Mass();

Common/Core/CollisionTypeHelper.cxx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,14 @@
1616
///
1717

1818
#include "Common/Core/CollisionTypeHelper.h"
19+
20+
#include "DataFormatsParameters/GRPLHCIFData.h"
21+
1922
#include <fairlogger/Logger.h>
23+
2024
#include <string>
21-
#include "DataFormatsParameters/GRPLHCIFData.h"
2225

23-
std::string CollisionSystemType::getCollisionSystemName(collType collSys)
26+
std::string o2::common::core::CollisionSystemType::getCollisionSystemName(collType collSys)
2427
{
2528
switch (collSys) {
2629
case kCollSyspp:
@@ -36,7 +39,7 @@ std::string CollisionSystemType::getCollisionSystemName(collType collSys)
3639
}
3740
}
3841

39-
int CollisionSystemType::getCollisionTypeFromGrp(o2::parameters::GRPLHCIFData* grplhcif)
42+
int o2::common::core::CollisionSystemType::getCollisionTypeFromGrp(o2::parameters::GRPLHCIFData* grplhcif)
4043
{
4144
const int ZBeamA = grplhcif->getBeamZ(o2::constants::lhc::BeamDirection::BeamA);
4245
const int ZBeamC = grplhcif->getBeamZ(o2::constants::lhc::BeamDirection::BeamC);

Common/Core/CollisionTypeHelper.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,12 @@
1818
#ifndef COMMON_CORE_COLLISIONTYPEHELPER_H_
1919
#define COMMON_CORE_COLLISIONTYPEHELPER_H_
2020

21-
#include <string>
2221
#include "DataFormatsParameters/GRPLHCIFData.h"
2322

23+
#include <string>
24+
25+
namespace o2::common::core
26+
{
2427
// Container for the collision system type
2528
struct CollisionSystemType {
2629
// Enum type for the collision system
@@ -38,4 +41,8 @@ struct CollisionSystemType {
3841
static int getCollisionTypeFromGrp(o2::parameters::GRPLHCIFData* grplhcif);
3942
};
4043

44+
} // namespace o2::common::core
45+
46+
using CollisionSystemType = o2::common::core::CollisionSystemType;
47+
4148
#endif // COMMON_CORE_COLLISIONTYPEHELPER_H_

Common/Core/MetadataHelper.cxx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,18 @@
2020
#include "Framework/InitContext.h"
2121
#include "Framework/RunningWorkflowInfo.h"
2222

23+
using namespace o2::common::core;
24+
2325
MetadataHelper::MetadataHelper()
2426
{
25-
const std::array<std::string, 5> keyList = {"DataType",
27+
const std::array<std::string, 8> keyList = {"DataType",
2628
"RecoPassName",
2729
"Run",
2830
"AnchorPassName",
29-
"AnchorProduction"};
31+
"AnchorProduction",
32+
"ROOTVersion",
33+
"LPMProductionTag",
34+
"O2Version"};
3035
for (const auto& key : keyList) {
3136
mMetadata[key] = "undefined";
3237
}

Common/Core/MetadataHelper.h

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,14 @@
1818
#ifndef COMMON_CORE_METADATAHELPER_H_
1919
#define COMMON_CORE_METADATAHELPER_H_
2020

21-
#include <string>
22-
#include <map>
2321
#include "Framework/ConfigContext.h"
2422

23+
#include <map>
24+
#include <string>
25+
26+
namespace o2::common::core
27+
{
28+
2529
struct MetadataHelper {
2630
/// @brief Constructor for the MetadataHelper. Defines the all the metadata keys that will be looked for and accessible
2731
MetadataHelper();
@@ -64,4 +68,8 @@ struct MetadataHelper {
6468
bool mIsInitialized = false; /// < Flag to check if the metadata has been initialized
6569
};
6670

71+
} // namespace o2::common::core
72+
73+
using MetadataHelper = o2::common::core::MetadataHelper; // Alias for the MetadataHelper
74+
6775
#endif // COMMON_CORE_METADATAHELPER_H_

Common/DataModel/OccupancyTables.h

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,8 @@ namespace trackmeanocc
209209
{
210210
DECLARE_SOA_INDEX_COLUMN(Track, track);
211211

212+
// DECLARE_SOA_INDEX_COLUMN(TracksQA, tracksQA);// this is not working
213+
212214
DECLARE_SOA_COLUMN(TmoPrimUnfm80, tmoPrimUnfm80, float);
213215
DECLARE_SOA_COLUMN(TmoFV0AUnfm80, tmoFV0AUnfm80, float);
214216
DECLARE_SOA_COLUMN(TmoFV0CUnfm80, tmoFV0CUnfm80, float);
@@ -281,7 +283,7 @@ DECLARE_SOA_COLUMN(TwmoRobustMultExtraTableUnfm80, twmoRobustMultExtraTableUnfm8
281283
// using Tracks = aod::Tracks;
282284
// DECLARE_SOA_INDEX_TABLE_USER(TrackMeanOccs0, Tracks, "TRACKMEANOCCS0", o2::aod::trackmeanocc::TrackId);
283285

284-
DECLARE_SOA_TABLE(TmoTrackId, "AOD", "TMOTRACKID", o2::aod::trackmeanocc::TrackId);
286+
DECLARE_SOA_TABLE(TmoTrackIds, "AOD", "TMOTRACKIDS", o2::aod::trackmeanocc::TrackId);
285287

286288
DECLARE_SOA_TABLE(TmoPrim, "AOD", "TMOPRIM", o2::soa::Index<>, // TrackMeanOccDet
287289
o2::aod::trackmeanocc::TmoPrimUnfm80);
@@ -377,5 +379,21 @@ DECLARE_SOA_TABLE(TwmoRNtrackDet, "AOD", "TWMORNTRACKDET", o2::soa::Index<>,
377379
DECLARE_SOA_TABLE(TwmoRMultExtra, "AOD", "TWMORMULTEXTRA", o2::soa::Index<>,
378380
o2::aod::trackmeanocc::TwmoRobustMultExtraTableUnfm80);
379381

382+
using Tmo = aod::TmoTrackIds::iterator;
383+
384+
using TrackQA = TracksQAVersion::iterator;
385+
386+
namespace trackmeanocc
387+
{
388+
DECLARE_SOA_INDEX_COLUMN_FULL(Tmo, tmo, int64_t, TmoTrackIds, "");
389+
DECLARE_SOA_INDEX_COLUMN_FULL(TrackQA, trackQA, int64_t, TracksQAVersion, "");
390+
} // namespace trackmeanocc
391+
392+
DECLARE_SOA_TABLE(TrackToTracksQA, "AOD", "TRACKTOTRACKSQA", o2::aod::trackmeanocc::TrackQAId);
393+
DECLARE_SOA_TABLE(TrackToTmo, "AOD", "TRACKTOTMO", o2::aod::trackmeanocc::TmoId);
394+
395+
DECLARE_SOA_TABLE(TrackQAToTmo, "AOD", "TRACKQATOTMO", o2::aod::trackmeanocc::TmoId);
396+
DECLARE_SOA_TABLE(TmoToTrackQA, "AOD", "TMOTOTRACKQA", o2::aod::trackmeanocc::TrackQAId);
397+
380398
} // namespace o2::aod
381399
#endif // COMMON_DATAMODEL_OCCUPANCYTABLES_H_
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2+
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3+
// All rights not expressly granted are reserved.
4+
//
5+
// This software is distributed under the terms of the GNU General Public
6+
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7+
//
8+
// In applying this license CERN does not waive the privileges and immunities
9+
// granted to it by virtue of its status as an Intergovernmental Organization
10+
// or submit itself to any jurisdiction.
11+
12+
/// \file SelectionStudyTables
13+
/// \brief tables meant to do event selection studies for O-O / light systems
14+
///
15+
/// \author ALICE
16+
17+
#include "Framework/ASoA.h"
18+
#include "Framework/AnalysisDataModel.h"
19+
20+
#include <vector>
21+
22+
#ifndef COMMON_DATAMODEL_SELECTIONSTUDYTABLES_H_
23+
#define COMMON_DATAMODEL_SELECTIONSTUDYTABLES_H_
24+
25+
namespace o2::aod
26+
{
27+
namespace selectionstudy
28+
{
29+
DECLARE_SOA_COLUMN(PtPions, ptPions, std::vector<float>);
30+
DECLARE_SOA_COLUMN(PtKaons, ptKaons, std::vector<float>);
31+
DECLARE_SOA_COLUMN(PtProtons, ptProtons, std::vector<float>);
32+
DECLARE_SOA_COLUMN(PtK0s, ptPK0s, std::vector<float>);
33+
DECLARE_SOA_COLUMN(PtLambdas, ptLambdas, std::vector<float>);
34+
DECLARE_SOA_COLUMN(PtXis, ptXis, std::vector<float>);
35+
DECLARE_SOA_COLUMN(PtOmegas, ptOmegas, std::vector<float>);
36+
DECLARE_SOA_COLUMN(PtPhis, ptPhis, std::vector<float>);
37+
DECLARE_SOA_COLUMN(PtKStars, ptKStars, std::vector<float>);
38+
DECLARE_SOA_COLUMN(PtDs, ptDs, std::vector<float>);
39+
DECLARE_SOA_COLUMN(PtLambdaCs, ptLambdaCs, std::vector<float>);
40+
DECLARE_SOA_COLUMN(PtJPsis, ptJPsis, std::vector<float>);
41+
} // namespace selectionstudy
42+
43+
DECLARE_SOA_TABLE(PIDPts, "AOD", "PIDPTS", o2::soa::Index<>,
44+
o2::aod::selectionstudy::PtPions,
45+
o2::aod::selectionstudy::PtKaons,
46+
o2::aod::selectionstudy::PtProtons,
47+
o2::aod::selectionstudy::PtK0s,
48+
o2::aod::selectionstudy::PtLambdas,
49+
o2::aod::selectionstudy::PtXis,
50+
o2::aod::selectionstudy::PtOmegas,
51+
o2::aod::selectionstudy::PtPhis,
52+
o2::aod::selectionstudy::PtKStars,
53+
o2::aod::selectionstudy::PtDs,
54+
o2::aod::selectionstudy::PtLambdaCs,
55+
o2::aod::selectionstudy::PtJPsis);
56+
} // namespace o2::aod
57+
#endif // COMMON_DATAMODEL_SELECTIONSTUDYTABLES_H_

Common/TableProducer/CMakeLists.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,13 @@ o2physics_add_dpl_workflow(trackselection
2525
o2physics_add_dpl_workflow(event-selection
2626
SOURCES eventSelection.cxx
2727
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCCDB
28+
O2::DataFormatsITSMFT
29+
COMPONENT_NAME Analysis)
30+
31+
o2physics_add_dpl_workflow(event-selection-service
32+
SOURCES eventSelectionService.cxx
33+
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCCDB
34+
O2::DataFormatsITSMFT
2835
COMPONENT_NAME Analysis)
2936

3037
o2physics_add_dpl_workflow(multiplicity-table
@@ -160,3 +167,7 @@ o2physics_add_dpl_workflow(muon-realignment
160167
PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::AnalysisCore O2::DetectorsBase O2::DetectorsCommonDataFormats O2::MathUtils O2::MCHTracking O2::DataFormatsMCH O2::GlobalTracking O2::MCHBase O2::MCHGeometryTransformer O2::CommonUtils
161168
COMPONENT_NAME Analysis)
162169

170+
o2physics_add_dpl_workflow(selectionstudytable
171+
SOURCES selectionStudyTable.cxx
172+
PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore
173+
COMPONENT_NAME Analysis)

0 commit comments

Comments
 (0)