Skip to content

Commit 427d558

Browse files
author
jokonig
committed
[PWGEM] Revert using ccdb column to get magnetic field
- This makes it impossible to run everything in one train (with photon conversion builder) but requires that it has to be run over derived data - Now simply get magnetic field from ccdb directly in each task
1 parent 5f871bf commit 427d558

3 files changed

Lines changed: 31 additions & 13 deletions

File tree

‎PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h‎

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -471,10 +471,17 @@ struct Pi0EtaToGammaGamma {
471471
return;
472472
}
473473

474-
o2::base::Propagator::initFieldFromGRP(&collision.grpMagField());
474+
// o2::base::Propagator::initFieldFromGRP(&collision.grpMagField());
475475
// Fetch magnetic field from ccdb for current collision
476-
d_bz = collision.grpMagField().getNominalL3Field();
476+
// d_bz = collision.grpMagField().getNominalL3Field();
477+
478+
auto* grpmag = ccdb->getForRun<o2::parameters::GRPMagField>("GLO/Config/GRPMagField", collision.runNumber());
479+
if (grpmag == nullptr) {
480+
LOGF(fatal, "Could not retrieve GRPMagField for run %d", collision.runNumber());
481+
}
482+
d_bz = grpmag->getNominalL3Field();
477483
LOG(info) << "Retrieved GRP for timestamp " << collision.timestamp() << " with magnetic field of " << d_bz << " kZG";
484+
478485
fV0PhotonCut.SetD_Bz(d_bz);
479486
}
480487

@@ -1139,7 +1146,7 @@ struct Pi0EtaToGammaGamma {
11391146
o2::framework::expressions::Filter prefilter_primaryelectron = ifnode(dileptoncuts.cfg_apply_cuts_from_prefilter_derived.node(), o2::aod::emprimaryelectron::pfbderived == static_cast<uint16_t>(0), true);
11401147

11411148
int ndf = 0;
1142-
void processAnalysis(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMEventsQvec_001, o2::aod::EmMagFields>> const& collisions, Types const&... args)
1149+
void processAnalysis(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMEventsQvec_001>> const& collisions, Types const&... args)
11431150
{
11441151
// LOGF(info, "ndf = %d", ndf);
11451152
if constexpr (pairtype == o2::aod::pwgem::photonmeson::photonpair::PairType::kPCMPCM) {
@@ -1176,7 +1183,7 @@ struct Pi0EtaToGammaGamma {
11761183
PROCESS_SWITCH(Pi0EtaToGammaGamma, processAnalysis, "process pair analysis", true);
11771184

11781185
// using FilteredMyCollisionsWithJJMC = o2::soa::Filtered<o2::soa::Join<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMEventsQvec_001>, o2::aod::EMEventsWeight>>;
1179-
void processAnalysisJJMC(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMEventsQvec_001, o2::aod::EMEventsWeight, o2::aod::EmMagFields>> const& collisions, Types const&... args)
1186+
void processAnalysisJJMC(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMEventsQvec_001, o2::aod::EMEventsWeight>> const& collisions, Types const&... args)
11801187
{
11811188
// LOGF(info, "ndf = %d", ndf);
11821189
if constexpr (pairtype == o2::aod::pwgem::photonmeson::photonpair::PairType::kPCMPCM) {

‎PWGEM/PhotonMeson/Core/Pi0EtaToGammaGammaMC.h‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -326,9 +326,14 @@ struct Pi0EtaToGammaGammaMC {
326326
return;
327327
}
328328

329-
o2::base::Propagator::initFieldFromGRP(&collision.grpMagField());
330-
// Fetch magnetic field from ccdb for current collision
331-
d_bz = collision.grpMagField().getNominalL3Field();
329+
// o2::base::Propagator::initFieldFromGRP(&collision.grpMagField());
330+
// // Fetch magnetic field from ccdb for current collision
331+
// d_bz = collision.grpMagField().getNominalL3Field();
332+
auto* grpmag = ccdb->getForRun<o2::parameters::GRPMagField>("GLO/Config/GRPMagField", collision.runNumber());
333+
if (grpmag == nullptr) {
334+
LOGF(fatal, "Could not retrieve GRPMagField for run %d", collision.runNumber());
335+
}
336+
d_bz = grpmag->getNominalL3Field();
332337
LOG(info) << "Retrieved GRP for timestamp " << collision.timestamp() << " with magnetic field of " << d_bz << " kZG";
333338
fV0PhotonCut.SetD_Bz(d_bz);
334339
}
@@ -1005,7 +1010,7 @@ struct Pi0EtaToGammaGammaMC {
10051010
o2::framework::expressions::Filter prefilter_pcm = ifnode(pcmcuts.cfg_apply_cuts_from_prefilter_derived.node(), o2::aod::v0photonkf::pfbderived == static_cast<uint16_t>(0), true);
10061011
o2::framework::expressions::Filter prefilter_primaryelectron = ifnode(dileptoncuts.cfg_apply_cuts_from_prefilter_derived.node(), o2::aod::emprimaryelectron::pfbderived == static_cast<uint16_t>(0), true);
10071012

1008-
void processAnalysis(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMMCEventLabels, o2::aod::EmMagFields>> const& collisions, o2::soa::Join<o2::aod::EMMCEvents, o2::aod::BinnedGenPts> const& mccollisions, o2::aod::EMMCParticles const& mcparticles, Types const&... args)
1013+
void processAnalysis(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMMCEventLabels>> const& collisions, o2::soa::Join<o2::aod::EMMCEvents, o2::aod::BinnedGenPts> const& mccollisions, o2::aod::EMMCParticles const& mcparticles, Types const&... args)
10091014
{
10101015
if constexpr (pairtype == o2::aod::pwgem::photonmeson::photonpair::PairType::kPCMPCM) {
10111016
auto&& [v0photons, v0legs] = std::forward_as_tuple(args...);
@@ -1041,7 +1046,7 @@ struct Pi0EtaToGammaGammaMC {
10411046
PROCESS_SWITCH(Pi0EtaToGammaGammaMC, processAnalysis, "process pair analysis", true);
10421047

10431048
// using FilteredMyCollisionsWithJJMC = o2::soa::Filtered<o2::soa::Join<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMMCEventLabels>, o2::aod::EMEventsWeight>>;
1044-
void processAnalysisJJMC(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMMCEventLabels, o2::aod::EMEventsWeight, o2::aod::EmMagFields>> const& collisions, o2::soa::Join<o2::aod::EMMCEvents, o2::aod::BinnedGenPts> const& mccollisions, o2::aod::EMMCParticles const& mcparticles, Types const&... args)
1049+
void processAnalysisJJMC(o2::soa::Filtered<o2::soa::Join<o2::aod::PMEvents, o2::aod::EMEventsAlias, o2::aod::EMEventsMult_000, o2::aod::EMEventsCent_000, o2::aod::EMMCEventLabels, o2::aod::EMEventsWeight>> const& collisions, o2::soa::Join<o2::aod::EMMCEvents, o2::aod::BinnedGenPts> const& mccollisions, o2::aod::EMMCParticles const& mcparticles, Types const&... args)
10451050
{
10461051
if constexpr (pairtype == o2::aod::pwgem::photonmeson::photonpair::PairType::kPCMPCM) {
10471052
auto&& [v0photons, v0legs] = std::forward_as_tuple(args...);

‎PWGEM/PhotonMeson/Tasks/pcmQC.cxx‎

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ using namespace o2::aod::pwgem::photon;
8585
using namespace o2::aod::pwgem::photonmeson::utils::mcutil;
8686
using namespace o2::aod::pwgem::dilepton::utils::mcutil;
8787

88-
using MyCollisions = soa::Join<aod::PMEvents, aod::EMEventsAlias, aod::EMEventsMult_000, aod::EMEventsCent_000, o2::aod::EmMagFields>;
88+
using MyCollisions = soa::Join<aod::PMEvents, aod::EMEventsAlias, aod::EMEventsMult_000, aod::EMEventsCent_000>;
8989
using MyCollision = MyCollisions::iterator;
9090

9191
using MyV0Photons = soa::Join<aod::V0PhotonsKF, aod::V0KFEMEventIds>;
@@ -95,7 +95,7 @@ using MyV0PhotonsML = soa::Join<MyV0Photons, aod::V0PhotonsPhiVPsi>;
9595
using MyV0PhotonML = MyV0PhotonsML::iterator;
9696

9797
// MC Joins
98-
using MyCollisionsMC = soa::Join<aod::PMEvents, aod::EMEventsAlias, aod::EMEventsMult_000, aod::EMEventsCent_000, aod::EMMCEventLabels, o2::aod::EmMagFields>;
98+
using MyCollisionsMC = soa::Join<aod::PMEvents, aod::EMEventsAlias, aod::EMEventsMult_000, aod::EMEventsCent_000, aod::EMMCEventLabels>;
9999
using MyCollisionMC = MyCollisionsMC::iterator;
100100

101101
using MyMCCollisions = soa::Join<aod::EMMCEvents, aod::BinnedGenPts>;
@@ -276,8 +276,14 @@ struct PCMQC {
276276
}
277277

278278
// Fetch magnetic field from ccdb for current collision
279-
d_bz = collision.grpMagField().getNominalL3Field();
280-
LOG(info) << "Retrieved GRP for timestamp " << collision.timestamp() << " with magnetic field of " << d_bz << " kZG";
279+
// d_bz = collision.grpMagField().getNominalL3Field();
280+
// LOG(info) << "Retrieved GRP for timestamp " << collision.timestamp() << " with magnetic field of " << d_bz << " kZG";
281+
auto* grpmag = ccdb->getForRun<o2::parameters::GRPMagField>("GLO/Config/GRPMagField", collision.runNumber());
282+
if (grpmag == nullptr) {
283+
LOGF(fatal, "Could not retrieve GRPMagField for run %d", collision.runNumber());
284+
}
285+
d_bz = grpmag->getNominalL3Field();
286+
LOG(info) << "Retrieved GRP for run " << collision.runNumber() << " with magnetic field of " << d_bz << " kZG";
281287
fV0PhotonCut.SetD_Bz(d_bz);
282288
}
283289

0 commit comments

Comments
 (0)