@@ -69,8 +69,8 @@ struct FemtoUniverseDebugV0 {
6969
7070 // / Histogramming
7171 FemtoUniverseEventHisto eventHisto;
72- FemtoUniverseParticleHisto<aod::femtouniverseparticle::ParticleType::kV0Child , 3 > posChildHistos ;
73- FemtoUniverseParticleHisto<aod::femtouniverseparticle::ParticleType::kV0Child , 4 > negChildHistos ;
72+ FemtoUniverseParticleHisto<aod::femtouniverseparticle::ParticleType::kV0Child , 3 > positiveChildHistos ;
73+ FemtoUniverseParticleHisto<aod::femtouniverseparticle::ParticleType::kV0Child , 4 > negativeChildHistos ;
7474 FemtoUniverseParticleHisto<aod::femtouniverseparticle::ParticleType::kV0 > V0Histos;
7575
7676 // / Histogram output
@@ -81,8 +81,13 @@ struct FemtoUniverseDebugV0 {
8181 void init (InitContext&)
8282 {
8383 eventHisto.init (&EventRegistry);
84+ <<<<<<< Updated upstream
8485 posChildHistos.init (&V0Registry, confChildTempFitVarpTBins, confChildTempFitVarBins, false , confPDGCodePositiveChild.value , true );
8586 negChildHistos.init (&V0Registry, confChildTempFitVarpTBins, confChildTempFitVarBins, false , confPDGCodeNegativeChild, true );
87+ =======
88+ positiveChildHistos.init (&V0Registry, confChildTempFitVarpTBins, confChildTempFitVarBins, false , confPDGCodePositiveChild.value , true );
89+ negativeChildHistos.init (&V0Registry, confChildTempFitVarpTBins, confChildTempFitVarBins, false , confPDGCodeNegativeChild, true );
90+ >>>>>>> Stashed changes
8691 V0Histos.init (&V0Registry, confV0TempFitVarpTBins, confV0TempFitVarBins, false , confPDGCodeV0.value , true );
8792
8893 thetaRegistry.add (" Theta/hTheta" , " ; p (GeV/#it{c}); cos(#theta)" , kTH2F , {{100 , 0 , 10 }, {50 , -5 , 5 }});
@@ -97,14 +102,15 @@ struct FemtoUniverseDebugV0 {
97102 if (!part.has_children ()) {
98103 continue ;
99104 }
100- const auto & posChild = parts.iteratorAt (part.index () - 2 );
101- const auto & negChild = parts.iteratorAt (part.index () - 1 );
102- if (posChild .globalIndex () != part.childrenIds ()[0 ] || negChild .globalIndex () != part.childrenIds ()[1 ]) {
105+ const auto & positiveChild = parts.iteratorAt (part.index () - 2 );
106+ const auto & negativeChild = parts.iteratorAt (part.index () - 1 );
107+ if (positiveChild .globalIndex () != part.childrenIds ()[0 ] || negativeChild .globalIndex () != part.childrenIds ()[1 ]) {
103108 LOG (warn) << " Indices of V0 children do not match" ;
104109 continue ;
105110 }
106111
107112 // Check cuts on V0 children
113+ <<<<<<< Updated upstream
108114 if (posChild.partType () == uint8_t (aod::femtouniverseparticle::ParticleType::kV0Child ) &&
109115 negChild.partType () == uint8_t (aod::femtouniverseparticle::ParticleType::kV0Child ) &&
110116 isFullPIDSelected (posChild.pidCut (), posChild.p (), 999 .f , confPositiveChildIndex.value , confChildnSpecies.value , confChildPIDnSigmaMax.value , confPositiveChildPIDnSigmaMax.value , 1 .f ) &&
@@ -118,6 +124,20 @@ struct FemtoUniverseDebugV0 {
118124 V0Histos.fillQA <false , true >(part);
119125 posChildHistos.fillQA <false , true >(posChild);
120126 negChildHistos.fillQA <false , true >(negChild);
127+ =======
128+ if (positiveChild.partType () == uint8_t (aod::femtouniverseparticle::ParticleType::kV0Child ) &&
129+ negativeChild.partType () == uint8_t (aod::femtouniverseparticle::ParticleType::kV0Child ) &&
130+ isFullPIDSelected (positiveChild.pidCut (), positiveChild.p (), 999 .f , confPositiveChildIndex.value , confChildnSpecies.value , confChildPIDnSigmaMax.value , confPositiveChildPIDnSigmaMax.value , 1 .f ) &&
131+ isFullPIDSelected (negativeChild.pidCut (), negativeChild.p (), 999 .f , confNegativeChildIndex.value , confChildnSpecies.value , confChildPIDnSigmaMax.value , confNegativeChildPIDnSigmaMax.value , 1 .f )) {
132+ auto positiveChildMass = pdg->Mass (confPDGCodePositiveChild);
133+ auto negativeChildMass = pdg->Mass (confPDGCodeNegativeChild);
134+ auto positiveChildBoosted = FemtoUniverseMath::boostPRF<decltype (positiveChild)>(positiveChild, positiveChildMass, negativeChild, negativeChildMass);
135+ auto cosineTheta = (positiveChildBoosted.Px () * part.px () + positiveChildBoosted.Py () * part.py () + positiveChildBoosted.Pz () * part.pz ()) / (positiveChildBoosted.P () * part.p ());
136+
137+ V0Histos.fillQA <false , true >(part);
138+ positiveChildHistos.fillQA <false , true >(positiveChild);
139+ negativeChildHistos.fillQA <false , true >(negativeChild);
140+ >>>>>>> Stashed changes
121141 thetaRegistry.fill (HIST (" Theta/hTheta" ), part.p (), cosineTheta);
122142 }
123143 }
0 commit comments