Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions PWGEM/Dilepton/Core/DileptonSVMC.h
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,9 @@
o2::framework::Configurable<std::string> ccdburl{"ccdb-url", "http://alice-ccdb.cern.ch", "url of the ccdb repository"};
o2::framework::Configurable<std::string> grpPath{"grpPath", "GLO/GRP/GRP", "Path of the grp file"};
o2::framework::Configurable<std::string> grpmagPath{"grpmagPath", "GLO/Config/GRPMagField", "CCDB path of the GRPMagField object"};
o2::framework::Configurable<std::string> lutPath{"lutPath", "GLO/Param/MatLUT", "Path of the Lut parametrization"};
o2::framework::Configurable<std::string> geoPath{"geoPath", "GLO/Config/GeometryAligned", "Path of the geometry file"};
o2::framework::Configurable<int> matCorrType{"matCorrType", 1, "0: none, 1: TGeo, 2: LUT, else: none"};

o2::framework::Configurable<int> cfgEventGeneratorType{"cfgEventGeneratorType", -1, "if positive, select event generator type. i.e. gap or signal"};
o2::framework::Configurable<int> cfgCentEstimator{"cfgCentEstimator", 2, "FT0M:0, FT0A:1, FT0C:2"};
Expand Down Expand Up @@ -649,12 +652,12 @@
DefineDielectronCut();
leptonM1 = o2::constants::physics::MassElectron;
leptonM2 = o2::constants::physics::MassElectron;
pdg_lepton = 11;

Check failure on line 655 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
} else if constexpr (pairtype == o2::aod::pwgem::dilepton::utils::pairutil::DileptonPairType::kDimuon) {
DefineDimuonCut();
leptonM1 = o2::constants::physics::MassMuon;
leptonM2 = o2::constants::physics::MassMuon;
pdg_lepton = 13;

Check failure on line 660 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
}
if (doprocessNorm) {
fRegistry.addClone("Event/before/hCollisionCounter", "Event/norm/hCollisionCounter");
Expand Down Expand Up @@ -683,6 +686,36 @@
mFwdDCAFitter.setMinParamChange(fdfGroup.minParamChange);
mFwdDCAFitter.setMinRelChi2Change(fdfGroup.minRelChi2Change);
mFwdDCAFitter.setUseAbsDCA(fdfGroup.useAbsDCA);

if constexpr (pairtype == o2::aod::pwgem::dilepton::utils::pairutil::DileptonPairType::kDimuon) {
switch (matCorrType.value) {
case static_cast<int>(o2::aod::pwgem::dilepton::utils::pairutil::MatCorrType::kNone):
mFwdDCAFitter.setTGeoMat(false);
break;
case static_cast<int>(o2::aod::pwgem::dilepton::utils::pairutil::MatCorrType::kTGeo):
LOGF(info, "TGeo correction requested, loading geometry");
if (!o2::base::GeometryManager::isGeometryLoaded()) {
ccdb->get<TGeoManager>(geoPath);
}
// matCorr = o2::base::Propagator::MatCorrType::USEMatCorrTGeo;
mFwdDCAFitter.setTGeoMat(true);
break;
case static_cast<int>(o2::aod::pwgem::dilepton::utils::pairutil::MatCorrType::kLUT): {
LOGF(info, "LUT correction requested, loading LUT");
o2::base::MatLayerCylSet* lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->get<o2::base::MatLayerCylSet>(lutPath));
// matCorr = o2::base::Propagator::MatCorrType::USEMatCorrLUT;
mFwdDCAFitter.setTGeoMat(false);
mFwdDCAFitter.setMatLUT(lut);
break;
}
default:
LOGF(info, "no correction requested, loading LUT by default!");
// lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->get<o2::base::MatLayerCylSet>(lutPath));
// matCorr = o2::base::Propagator::MatCorrType::USEMatCorrLUT;
mFwdDCAFitter.setTGeoMat(false);
break;
}
}
}

template <typename TCollision>
Expand Down Expand Up @@ -1074,7 +1107,7 @@
}

if (dilepton_source_types[sourceId].find("ccbar") != std::string_view::npos && cfgFillSeparateCharmHadronPairs) {
if (std::abs(pdgMotherC1) == 411 && std::abs(pdgMotherC2) == 411) {

Check failure on line 1110 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Dplus_Dminus/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1082,7 +1115,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/Dplus_Dminus/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if (std::abs(pdgMotherC1) == 421 && std::abs(pdgMotherC2) == 421) {

Check failure on line 1118 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/D0_D0bar/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1090,7 +1123,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/D0_D0bar/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if (std::abs(pdgMotherC1) == 431 && std::abs(pdgMotherC2) == 431) {

Check failure on line 1126 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Dsplus_Dsminus/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1098,7 +1131,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/Dsplus_Dsminus/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if ((std::abs(pdgMotherC1) == 411 && std::abs(pdgMotherC2) == 421) || (std::abs(pdgMotherC2) == 411 && std::abs(pdgMotherC1) == 421)) {

Check failure on line 1134 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Dpm_D0/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1106,7 +1139,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/Dpm_D0/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if ((std::abs(pdgMotherC1) == 411 && std::abs(pdgMotherC2) == 431) || (std::abs(pdgMotherC2) == 411 && std::abs(pdgMotherC1) == 431)) {

Check failure on line 1142 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Dpm_Dspm/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1114,7 +1147,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/Dpm_Dspm/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if ((std::abs(pdgMotherC1) == 421 && std::abs(pdgMotherC2) == 431) || (std::abs(pdgMotherC2) == 421 && std::abs(pdgMotherC1) == 431)) {

Check failure on line 1150 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/D0_Dspm/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1122,7 +1155,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/D0_Dspm/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if (std::abs(pdgMotherC1) == 4122 && std::abs(pdgMotherC2) == 4122) {

Check failure on line 1158 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Lcplus_Lcminus/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand All @@ -1130,7 +1163,7 @@
} else if (sign1 < 0 && sign2 < 0) { // LS--
fRegistry.fill(HIST("Generated/ccbar/Lcplus_Lcminus/lsmm/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
}
} else if (std::abs(pdgMotherC1) == 4232 && std::abs(pdgMotherC2) == 4232) {

Check failure on line 1166 in PWGEM/Dilepton/Core/DileptonSVMC.h

View workflow job for this annotation

GitHub Actions / O2 linter

[pdg/explicit-code]

Avoid hard-coded PDG codes. Use named values from PDG_t or o2::constants::physics::Pdg instead.
if (sign1 * sign2 < 0) { // ULS
fRegistry.fill(HIST("Generated/ccbar/Xicplus_Xicminus/uls/hs"), mass, pt, rapidity, dphi, deta, cos_thetaPol, phiPol, quadmom, aco, asym, dphi_e_ee, weight);
} else if (sign1 > 0 && sign2 > 0) { // LS++
Expand Down
Loading