2525#include " PWGCF/Femto/DataModel/FemtoTables.h"
2626
2727#include " Common/Core/RecoDecay.h"
28- #include " CommonConstants/PhysicsConstants.h"
2928
3029#include " CommonConstants/MathConstants.h"
30+ #include " CommonConstants/PhysicsConstants.h"
3131#include " Framework/AnalysisHelpers.h"
3232#include " Framework/Configurable.h"
3333
@@ -82,16 +82,16 @@ struct ConfSigmaBits : o2::framework::ConfigurableGroup {
8282#undef KINK_DEFAULT_BITS
8383
8484// base selection for analysis task for kinks
85- #define KINK_DEFAULT_SELECTIONS (defaultMassMin, defaultMassMax, defaultPdgCode ) \
86- o2::framework::Configurable<int > pdgCode{" pdgCode" , defaultPdgCode, " Kink PDG code" }; \
87- o2::framework::Configurable<float > ptMin{" ptMin" , 0 .f , " Minimum pT" }; \
88- o2::framework::Configurable<float > ptMax{" ptMax" , 999 .f , " Maximum pT" }; \
89- o2::framework::Configurable<float > etaMin{" etaMin" , -10 .f , " Minimum eta" }; \
90- o2::framework::Configurable<float > etaMax{" etaMax" , 10 .f , " Maximum eta" }; \
91- o2::framework::Configurable<float > phiMin{" phiMin" , 0 .f , " Minimum phi" }; \
92- o2::framework::Configurable<float > phiMax{" phiMax" , 1 .f * o2::constants::math::TwoPI, " Maximum phi" }; \
93- o2::framework::Configurable<float > massMin{" massMin" , defaultMassMin, " Minimum invariant mass for Sigma" }; \
94- o2::framework::Configurable<float > massMax{" massMax" , defaultMassMax, " Maximum invariant mass for Sigma" }; \
85+ #define KINK_DEFAULT_SELECTIONS (defaultMassMin, defaultMassMax, defaultPdgCode ) \
86+ o2::framework::Configurable<int > pdgCode{" pdgCode" , defaultPdgCode, " Kink PDG code" }; \
87+ o2::framework::Configurable<float > ptMin{" ptMin" , 0 .f , " Minimum pT" }; \
88+ o2::framework::Configurable<float > ptMax{" ptMax" , 999 .f , " Maximum pT" }; \
89+ o2::framework::Configurable<float > etaMin{" etaMin" , -10 .f , " Minimum eta" }; \
90+ o2::framework::Configurable<float > etaMax{" etaMax" , 10 .f , " Maximum eta" }; \
91+ o2::framework::Configurable<float > phiMin{" phiMin" , 0 .f , " Minimum phi" }; \
92+ o2::framework::Configurable<float > phiMax{" phiMax" , 1 .f * o2::constants::math::TwoPI, " Maximum phi" }; \
93+ o2::framework::Configurable<float > massMin{" massMin" , defaultMassMin, " Minimum invariant mass for Sigma" }; \
94+ o2::framework::Configurable<float > massMax{" massMax" , defaultMassMax, " Maximum invariant mass for Sigma" }; \
9595 o2::framework::Configurable<o2::aod::femtodatatypes::KinkMaskType> mask{" mask" , 0 , " Bitmask for kink selection" };
9696
9797// base selection for analysis task for sigmas
@@ -139,8 +139,7 @@ const std::unordered_map<KinkSeles, std::string> kinkSelsToStrings = {
139139 {kAlphaAPMax , " alphaAPMax" },
140140 {kQtAPMin , " qtAPMin" },
141141 {kQtAPMax , " qtAPMax" },
142- {kCosPointingAngleMin , " cosPointingAngleMin" }
143- };
142+ {kCosPointingAngleMin , " cosPointingAngleMin" }};
144143
145144// / \class KinkCuts
146145// / \brief Cut class to contain and execute all cuts applied to kinks
@@ -155,12 +154,12 @@ class KinkSelection : public BaseSelection<float, o2::aod::femtodatatypes::KinkM
155154 void configure (T1& config, T2& filter)
156155 {
157156 mPtMin = filter.ptMin .value ;
158- mPtMax = filter.ptMax .value ;
157+ mPtMax = filter.ptMax .value ;
159158 mEtaMin = filter.etaMin .value ;
160159 mEtaMax = filter.etaMax .value ;
161160 mPhiMin = filter.phiMin .value ;
162161 mPhiMax = filter.phiMax .value ;
163-
162+
164163 if constexpr (modes::isEqual (kinkType, modes::Kink::kSigma )) {
165164 mMassSigmaLowerLimit = filter.massMinSigma .value ;
166165 mMassSigmaUpperLimit = filter.massMaxSigma .value ;
@@ -206,12 +205,11 @@ class KinkSelection : public BaseSelection<float, o2::aod::femtodatatypes::KinkM
206205 std::array<float , 3 > vMother = {kinkCand.xDecVtx (), kinkCand.yDecVtx (), kinkCand.zDecVtx ()};
207206 float pMother = std::sqrt (std::inner_product (momMother.begin (), momMother.end (), momMother.begin (), 0 .f ));
208207 float vMotherNorm = std::sqrt (std::inner_product (vMother.begin (), vMother.end (), vMother.begin (), 0 .f ));
209- float cosPointingAngle = (vMotherNorm > 0 .f && pMother > 0 .f ) ?
210- (std::inner_product (momMother.begin (), momMother.end (), vMother.begin (), 0 .f )) / (pMother * vMotherNorm) : 0 .f ;
208+ float cosPointingAngle = (vMotherNorm > 0 .f && pMother > 0 .f ) ? (std::inner_product (momMother.begin (), momMother.end (), vMother.begin (), 0 .f )) / (pMother * vMotherNorm) : 0 .f ;
211209 this ->evaluateObservable (kCosPointingAngleMin , cosPointingAngle);
212210
213211 this ->evaluateObservable (kKinkTopoDcaMax , kinkCand.dcaKinkTopo ());
214-
212+
215213 // Compute transRadius
216214 float transRadius = std::hypot (kinkCand.xDecVtx (), kinkCand.yDecVtx ());
217215 this ->evaluateObservable (kTransRadMin , transRadius);
@@ -221,7 +219,7 @@ class KinkSelection : public BaseSelection<float, o2::aod::femtodatatypes::KinkM
221219 float px_daug = kinkCand.pxDaug ();
222220 float py_daug = kinkCand.pyDaug ();
223221 float pz_daug = kinkCand.pzDaug ();
224- float p_daug = std::sqrt (px_daug* px_daug + py_daug* py_daug + pz_daug* pz_daug);
222+ float p_daug = std::sqrt (px_daug * px_daug + py_daug * py_daug + pz_daug * pz_daug);
225223 float eta_daug = (p_daug > 0 .f ) ? 0 .5f * std::log ((p_daug + pz_daug) / (p_daug - pz_daug)) : 0 .f ;
226224 this ->evaluateObservable (kDauAbsEtaMax , std::fabs (eta_daug));
227225
@@ -242,10 +240,10 @@ class KinkSelection : public BaseSelection<float, o2::aod::femtodatatypes::KinkM
242240 float py = kink.pyMoth ();
243241 float pz = kink.pzMoth ();
244242 float pt = std::hypot (px, py);
245- float p = std::sqrt (px* px + py* py + pz* pz);
243+ float p = std::sqrt (px * px + py * py + pz * pz);
246244 float eta = (p > 0 .f ) ? 0 .5f * std::log ((p + pz) / (p - pz)) : 0 .f ;
247245 float phi = std::atan2 (py, px);
248-
246+
249247 return ((pt > mPtMin && pt < mPtMax ) &&
250248 (eta > mEtaMin && eta < mEtaMax ) &&
251249 (phi > mPhiMin && phi < mPhiMax ));
@@ -265,17 +263,16 @@ class KinkSelection : public BaseSelection<float, o2::aod::femtodatatypes::KinkM
265263 float pxneut = pxmoth - pxch;
266264 float pyneut = pymoth - pych;
267265 float pzneut = pzmoth - pzch;
268-
266+
269267 float sigmaMass = RecoDecay::m (
270- std::array{std::array{pxch, pych, pzch}, std::array{pxneut, pyneut, pzneut}},
271- std::array{o2::constants::physics::MassPionCharged, o2::constants::physics::MassNeutron}
272- );
273-
268+ std::array{std::array{pxch, pych, pzch}, std::array{pxneut, pyneut, pzneut}},
269+ std::array{o2::constants::physics::MassPionCharged, o2::constants::physics::MassNeutron});
270+
274271 return (sigmaMass > mMassSigmaLowerLimit && sigmaMass < mMassSigmaUpperLimit );
275272 }
276273 return false ;
277274 }
278-
275+
279276 protected:
280277 float mMassSigmaLowerLimit = 1 .15f ;
281278 float mMassSigmaUpperLimit = 1 .25f ;
@@ -361,46 +358,45 @@ class KinkBuilder
361358 float pxneut = pxmoth - pxch;
362359 float pyneut = pymoth - pych;
363360 float pzneut = pzmoth - pzch;
364-
361+
365362 float mass = RecoDecay::m (
366- std::array{std::array{pxch, pych, pzch}, std::array{pxneut, pyneut, pzneut}},
367- std::array{o2::constants::physics::MassPionCharged, o2::constants::physics::MassNeutron}
368- );
369-
363+ std::array{std::array{pxch, pych, pzch}, std::array{pxneut, pyneut, pzneut}},
364+ std::array{o2::constants::physics::MassPionCharged, o2::constants::physics::MassNeutron});
365+
370366 if (mProduceSigmas ) {
371367 // Compute mother eta and phi
372368 float px = kink.pxMoth ();
373369 float py = kink.pyMoth ();
374370 float pz = kink.pzMoth ();
375371 float pt = std::hypot (px, py);
376- float p = std::sqrt (px* px + py* py + pz* pz);
372+ float p = std::sqrt (px * px + py * py + pz * pz);
377373 float eta = (p > 0 .f ) ? 0 .5f * std::log ((p + pz) / (p - pz)) : 0 .f ;
378374 float phi = std::atan2 (py, px);
379-
375+
380376 kinkProducts.producedSigmas (collisionProducts.producedCollision .lastIndex (),
381- kink.mothSign () * pt,
382- eta,
383- phi,
384- mass,
385- daughterIndex);
377+ kink.mothSign () * pt,
378+ eta,
379+ phi,
380+ mass,
381+ daughterIndex);
386382 }
387383 if (mProduceSigmaMasks ) {
388384 kinkProducts.producedSigmaMasks (mKinkSelection .getBitmask ());
389385 }
390386 if (mProduceSigmaExtras ) {
391387 // Compute kink angle and transRadius
392- float pMoth = std::sqrt (pxmoth* pxmoth + pymoth* pymoth + pzmoth* pzmoth);
393- float pDaug = std::sqrt (pxch* pxch + pych* pych + pzch* pzch);
388+ float pMoth = std::sqrt (pxmoth * pxmoth + pymoth * pymoth + pzmoth * pzmoth);
389+ float pDaug = std::sqrt (pxch * pxch + pych * pych + pzch * pzch);
394390 float kinkAngle = 0 .f ;
395391 if (pMoth > 0 .f && pDaug > 0 .f ) {
396- float dotProduct = pxmoth* pxch + pymoth* pych + pzmoth* pzch;
392+ float dotProduct = pxmoth * pxch + pymoth * pych + pzmoth * pzch;
397393 float cosAngle = dotProduct / (pMoth * pDaug);
398394 cosAngle = std::max (-1 .0f , std::min (1 .0f , cosAngle)); // Clamp
399395 kinkAngle = std::acos (cosAngle);
400396 }
401-
397+
402398 float transRadius = std::hypot (kink.xDecVtx (), kink.yDecVtx ());
403-
399+
404400 kinkProducts.producedSigmaExtras (
405401 kinkAngle,
406402 kink.dcaDaugPv (),
0 commit comments