29 #include "CbmRichUtil.h"
33 #include "FairRootManager.h"
34 #include "KFParticle.h"
42 : fTrainPhotons(nullptr)
44 , fAnnPhotonsSelection(nullptr)
46 , fGammaCorrection(nullptr)
53 , fGlobalTracks(nullptr)
55 , fStsTrackMatches(nullptr)
56 , fRichProjections(nullptr)
58 , fRichRingMatches(nullptr)
60 , fArrayMvdHit(nullptr)
61 , fArrayStsHit(nullptr)
62 , fPrimVertex(nullptr)
65 , VStsTrack_minus_Outside()
66 , VMCtracks_minus_Outside()
67 , VRings_minus_Outside()
68 , VStsIndex_minus_Outside()
69 , VRichRing_minus_Outside()
70 , VStsTrack_plus_Outside()
71 , VMCtracks_plus_Outside()
72 , VRings_plus_Outside()
73 , VStsIndex_plus_Outside()
74 , VRichRing_plus_Outside()
75 , VMCtracks_minus_Target()
76 , VStsTrack_minus_Target()
77 , VMomenta_minus_Target()
78 , VRings_minus_Target()
79 , VStsIndex_minus_Target()
80 , VRichRing_minus_Target()
81 , VMCtracks_plus_Target()
82 , VStsTrack_plus_Target()
83 , VMomenta_plus_Target()
84 , VRings_plus_Target()
85 , VStsIndex_plus_Target()
86 , VRichRing_plus_Target()
87 , CDP_LK_EMT_momenta_minus_Target()
88 , CDP_LK_EMT_NofRings_minus_Target()
89 , CDP_LK_EMT_STS_minus_Target()
90 , CDP_LK_EMT_STS_minus_index_Target()
91 , CDP_LK_EMT_momenta_plus_Target()
92 , CDP_LK_EMT_NofRings_plus_Target()
93 , CDP_LK_EMT_STS_plus_Target()
94 , CDP_LK_EMT_STS_plus_index_Target()
95 , CDP_LK_EMT_NofRings_minus_Outside()
96 , CDP_LK_EMT_STS_minus_Outside()
97 , CDP_LK_EMT_STS_minus_index_Outside()
98 , CDP_LK_EMT_NofRings_plus_Outside()
99 , CDP_LK_EMT_STS_plus_Outside()
100 , CDP_LK_EMT_STS_plus_index_Outside()
101 , CDP_EMT_Event_minus_Target()
102 , CDP_EMT_momenta_minus_Target()
103 , CDP_EMT_NofRings_minus_Target()
104 , CDP_EMT_Hits_minus_Target()
105 , CDP_EMT_Event_plus_Target()
106 , CDP_EMT_momenta_plus_Target()
107 , CDP_EMT_NofRings_plus_Target()
108 , CDP_EMT_Hits_plus_Target()
109 , CDP_EMT_Event_minus_Outside()
110 , CDP_EMT_momenta_minus_Outside()
111 , CDP_EMT_KFTrack_minus_Outside()
112 , CDP_EMT_NofRings_minus_Outside()
113 , CDP_EMT_Hits_minus_Outside()
114 , CDP_EMT_Event_plus_Outside()
115 , CDP_EMT_momenta_plus_Outside()
116 , CDP_EMT_KFTrack_plus_Outside()
117 , CDP_EMT_NofRings_plus_Outside()
118 , CDP_EMT_Hits_plus_Outside()
119 , fHistoList_dp_Target()
120 , CMother_PDG_Target(nullptr)
121 , CGrandMother_PDG_Target(nullptr)
122 , fHistoList_dp_Outside()
123 , CMother_PDG_Outside(nullptr)
124 , CGrandMother_PDG_Outside(nullptr)
125 , fHistoList_dp_Both()
126 , CPdg_vs_Distance_for_dp(nullptr)
127 , CP_vs_Distance_for_dp(nullptr)
128 , CDP_AnnTruePairs(nullptr)
129 , CDP_AnnFalsePairs(nullptr)
130 , CDP_AnnTruePairs_AfterCuts(nullptr)
131 , CDP_AnnFalsePairs_AfterCuts(nullptr)
132 , fHistoList_dp_cuts_Both()
133 , CDP_candidates_InvMass_vs_OA_Both(nullptr)
134 , CDP_InvMass_vs_OA_Both(nullptr)
135 , CDP_candidates_InvMass_Both(nullptr)
136 , CDP_InvMass_Both(nullptr)
137 , CDP_candidates_OA_Both(nullptr)
138 , CDP_OA_Both(nullptr)
139 , CDP_candidates_PlaneAngles_last_Both(nullptr)
140 , CDP_PlaneAngles_last_Both(nullptr)
141 , CDP_candidates_PlaneAngles_first_Both(nullptr)
142 , CDP_PlaneAngles_first_Both(nullptr)
143 , fHistoList_dp_cuts_Target()
144 , CDP_candidates_InvMass_vs_OA_Target(nullptr)
145 , CDP_InvMass_vs_OA_Target(nullptr)
146 , CDP_candidates_InvMass_Target(nullptr)
147 , CDP_InvMass_Target(nullptr)
148 , CDP_candidates_OA_Target(nullptr)
149 , CDP_OA_Target(nullptr)
150 , CDP_candidates_PlaneAngles_last_Target(nullptr)
151 , CDP_PlaneAngles_last_Target(nullptr)
152 , CDP_candidates_PlaneAngles_first_Target(nullptr)
153 , CDP_PlaneAngles_first_Target(nullptr)
154 , fHistoList_dp_cuts_Outside()
155 , CDP_candidates_InvMass_vs_OA_Outside(nullptr)
156 , CDP_InvMass_vs_OA_Outside(nullptr)
157 , CDP_candidates_InvMass_Outside(nullptr)
158 , CDP_InvMass_Outside(nullptr)
159 , CDP_candidates_OA_Outside(nullptr)
160 , CDP_OA_Outside(nullptr)
161 , CDP_candidates_PlaneAngles_last_Outside(nullptr)
162 , CDP_PlaneAngles_last_Outside(nullptr)
163 , CDP_candidates_PlaneAngles_first_Outside(nullptr)
164 , CDP_PlaneAngles_first_Outside(nullptr)
165 , fHistoList_dp_all_Target()
166 , CDP_InvMassReco_all_Target(nullptr)
167 , CDP_OpeningAngleReco_all_Target(nullptr)
168 , CDP_Pdg_all_Target(nullptr)
169 , CDP_P_reco_all_Target(nullptr)
170 , CDP_Pt_reco_all_Target(nullptr)
171 , CPh_fromTarget_Pt_reco_all_Target(nullptr)
172 , CPh_fromPions_Pt_reco_all_Target(nullptr)
173 , CPh_fromEtas_Pt_reco_all_Target(nullptr)
174 , CPh_fromDalitz_Pt_reco_all_Target(nullptr)
175 , CPh_fromXi_Pt_reco_all_Target(nullptr)
176 , CPh_fromOther_Pt_reco_all_Target(nullptr)
177 , CPh_twoFromTarget_Pt_reco_all_Target(nullptr)
178 , CPh_fromCombinatorial_Pt_reco_all_Target(nullptr)
179 , CPh_fromConversion_Pt_reco_all_Target(nullptr)
180 , CPh_pt_vs_rap_est_all_Target(nullptr)
181 , CPh_pt_vs_rap_est_corr_all_Target(nullptr)
182 , fHistoList_dp_two_Target()
183 , CDP_InvMassReco_two_Target(nullptr)
184 , CDP_OpeningAngleReco_two_Target(nullptr)
185 , CDP_Pdg_two_Target(nullptr)
186 , CDP_P_reco_two_Target(nullptr)
187 , CDP_Pt_reco_two_Target(nullptr)
188 , CPh_fromTarget_Pt_reco_two_Target(nullptr)
189 , CPh_fromPions_Pt_reco_two_Target(nullptr)
190 , CPh_fromEtas_Pt_reco_two_Target(nullptr)
191 , CPh_fromDalitz_Pt_reco_two_Target(nullptr)
192 , CPh_fromXi_Pt_reco_two_Target(nullptr)
193 , CPh_fromOther_Pt_reco_two_Target(nullptr)
194 , CPh_twoFromTarget_Pt_reco_two_Target(nullptr)
195 , CPh_fromCombinatorial_Pt_reco_two_Target(nullptr)
196 , CPh_fromConversion_Pt_reco_two_Target(nullptr)
197 , CPh_pt_vs_rap_est_two_Target(nullptr)
198 , CPh_pt_vs_rap_est_corr_two_Target(nullptr)
199 , fHistoList_dp_onetwo_Target()
200 , CDP_InvMassReco_onetwo_Target(nullptr)
201 , CDP_OpeningAngleReco_onetwo_Target(nullptr)
202 , CDP_Pdg_onetwo_Target(nullptr)
203 , CDP_P_reco_onetwo_Target(nullptr)
204 , CDP_Pt_reco_onetwo_Target(nullptr)
205 , CPh_fromTarget_Pt_reco_onetwo_Target(nullptr)
206 , CPh_fromPions_Pt_reco_onetwo_Target(nullptr)
207 , CPh_fromEtas_Pt_reco_onetwo_Target(nullptr)
208 , CPh_fromDalitz_Pt_reco_onetwo_Target(nullptr)
209 , CPh_fromXi_Pt_reco_onetwo_Target(nullptr)
210 , CPh_fromOther_Pt_reco_onetwo_Target(nullptr)
211 , CPh_twoFromTarget_Pt_reco_onetwo_Target(nullptr)
212 , CPh_fromCombinatorial_Pt_reco_onetwo_Target(nullptr)
213 , CPh_fromConversion_Pt_reco_onetwo_Target(nullptr)
214 , CPh_pt_vs_rap_est_onetwo_Target(nullptr)
215 , CPh_pt_vs_rap_est_corr_onetwo_Target(nullptr)
216 , fHistoList_dp_all_Outside()
217 , CDP_InvMassReco_all_Outside(nullptr)
218 , CDP_OpeningAngleReco_all_Outside(nullptr)
219 , CDP_Pdg_all_Outside(nullptr)
220 , CDP_P_reco_all_Outside(nullptr)
221 , CDP_Pt_reco_all_Outside(nullptr)
222 , CPh_fromTarget_Pt_reco_all_Outside(nullptr)
223 , CPh_fromPions_Pt_reco_all_Outside(nullptr)
224 , CPh_fromEtas_Pt_reco_all_Outside(nullptr)
225 , CPh_fromDalitz_Pt_reco_all_Outside(nullptr)
226 , CPh_fromXi_Pt_reco_all_Outside(nullptr)
227 , CPh_fromOther_Pt_reco_all_Outside(nullptr)
228 , CPh_twoFromTarget_Pt_reco_all_Outside(nullptr)
229 , CPh_fromCombinatorial_Pt_reco_all_Outside(nullptr)
230 , CPh_fromConversion_Pt_reco_all_Outside(nullptr)
231 , CPh_pt_vs_rap_est_all_Outside(nullptr)
232 , CPh_pt_vs_rap_est_corr_all_Outside(nullptr)
233 , fHistoList_dp_two_Outside()
234 , CDP_InvMassReco_two_Outside(nullptr)
235 , CDP_OpeningAngleReco_two_Outside(nullptr)
236 , CDP_Pdg_two_Outside(nullptr)
237 , CDP_P_reco_two_Outside(nullptr)
238 , CDP_Pt_reco_two_Outside(nullptr)
239 , CPh_fromTarget_Pt_reco_two_Outside(nullptr)
240 , CPh_fromPions_Pt_reco_two_Outside(nullptr)
241 , CPh_fromEtas_Pt_reco_two_Outside(nullptr)
242 , CPh_fromDalitz_Pt_reco_two_Outside(nullptr)
243 , CPh_fromXi_Pt_reco_two_Outside(nullptr)
244 , CPh_fromOther_Pt_reco_two_Outside(nullptr)
245 , CPh_twoFromTarget_Pt_reco_two_Outside(nullptr)
246 , CPh_fromCombinatorial_Pt_reco_two_Outside(nullptr)
247 , CPh_fromConversion_Pt_reco_two_Outside(nullptr)
248 , CPh_pt_vs_rap_est_two_Outside(nullptr)
249 , CPh_pt_vs_rap_est_corr_two_Outside(nullptr)
250 , fHistoList_dp_onetwo_Outside()
251 , CDP_InvMassReco_onetwo_Outside(nullptr)
252 , CDP_OpeningAngleReco_onetwo_Outside(nullptr)
253 , CDP_Pdg_onetwo_Outside(nullptr)
254 , CDP_P_reco_onetwo_Outside(nullptr)
255 , CDP_Pt_reco_onetwo_Outside(nullptr)
256 , CPh_fromTarget_Pt_reco_onetwo_Outside(nullptr)
257 , CPh_fromPions_Pt_reco_onetwo_Outside(nullptr)
258 , CPh_fromEtas_Pt_reco_onetwo_Outside(nullptr)
259 , CPh_fromDalitz_Pt_reco_onetwo_Outside(nullptr)
260 , CPh_fromXi_Pt_reco_onetwo_Outside(nullptr)
261 , CPh_fromOther_Pt_reco_onetwo_Outside(nullptr)
262 , CPh_twoFromTarget_Pt_reco_onetwo_Outside(nullptr)
263 , CPh_fromCombinatorial_Pt_reco_onetwo_Outside(nullptr)
264 , CPh_fromConversion_Pt_reco_onetwo_Outside(nullptr)
265 , CPh_pt_vs_rap_est_onetwo_Outside(nullptr)
266 , CPh_pt_vs_rap_est_corr_onetwo_Outside(nullptr)
267 , fHistoList_dp_all_Both()
268 , CDP_InvMassReco_all_Both(nullptr)
269 , CDP_OpeningAngleReco_all_Both(nullptr)
270 , CDP_Pdg_all_Both(nullptr)
271 , CDP_P_reco_all_Both(nullptr)
272 , CDP_Pt_reco_all_Both(nullptr)
273 , CPh_fromTarget_Pt_reco_all_Both(nullptr)
274 , CPh_fromPions_Pt_reco_all_Both(nullptr)
275 , CPh_fromEtas_Pt_reco_all_Both(nullptr)
276 , CPh_fromDalitz_Pt_reco_all_Both(nullptr)
277 , CPh_fromXi_Pt_reco_all_Both(nullptr)
278 , CPh_fromOther_Pt_reco_all_Both(nullptr)
279 , CPh_twoFromTarget_Pt_reco_all_Both(nullptr)
280 , CPh_fromCombinatorial_Pt_reco_all_Both(nullptr)
281 , CPh_fromConversion_Pt_reco_all_Both(nullptr)
282 , CPh_pt_vs_rap_est_all_Both(nullptr)
283 , CPh_pt_vs_rap_est_corr_all_Both(nullptr)
284 , fHistoList_dp_two_Both()
285 , CDP_InvMassReco_two_Both(nullptr)
286 , CDP_OpeningAngleReco_two_Both(nullptr)
287 , CDP_Pdg_two_Both(nullptr)
288 , CDP_P_reco_two_Both(nullptr)
289 , CDP_Pt_reco_two_Both(nullptr)
290 , CPh_fromTarget_Pt_reco_two_Both(nullptr)
291 , CPh_fromPions_Pt_reco_two_Both(nullptr)
292 , CPh_fromEtas_Pt_reco_two_Both(nullptr)
293 , CPh_fromDalitz_Pt_reco_two_Both(nullptr)
294 , CPh_fromXi_Pt_reco_two_Both(nullptr)
295 , CPh_fromOther_Pt_reco_two_Both(nullptr)
296 , CPh_twoFromTarget_Pt_reco_two_Both(nullptr)
297 , CPh_fromCombinatorial_Pt_reco_two_Both(nullptr)
298 , CPh_fromConversion_Pt_reco_two_Both(nullptr)
299 , CPh_pt_vs_rap_est_two_Both(nullptr)
300 , CPh_pt_vs_rap_est_corr_two_Both(nullptr)
301 , fHistoList_dp_onetwo_Both()
302 , CDP_InvMassReco_onetwo_Both(nullptr)
303 , CDP_OpeningAngleReco_onetwo_Both(nullptr)
304 , CDP_Pdg_onetwo_Both(nullptr)
305 , CDP_P_reco_onetwo_Both(nullptr)
306 , CDP_Pt_reco_onetwo_Both(nullptr)
307 , CPh_fromTarget_Pt_reco_onetwo_Both(nullptr)
308 , CPh_fromPions_Pt_reco_onetwo_Both(nullptr)
309 , CPh_fromEtas_Pt_reco_onetwo_Both(nullptr)
310 , CPh_fromDalitz_Pt_reco_onetwo_Both(nullptr)
311 , CPh_fromXi_Pt_reco_onetwo_Both(nullptr)
312 , CPh_fromOther_Pt_reco_onetwo_Both(nullptr)
313 , CPh_twoFromTarget_Pt_reco_onetwo_Both(nullptr)
314 , CPh_fromCombinatorial_Pt_reco_onetwo_Both(nullptr)
315 , CPh_fromConversion_Pt_reco_onetwo_Both(nullptr)
316 , CPh_pt_vs_rap_est_onetwo_Both(nullptr)
317 , CPh_pt_vs_rap_est_corr_onetwo_Both(nullptr)
318 , CDP_EMT_Pt_all_Target(nullptr)
319 , CDP_EMT_Pt_two_Target(nullptr)
320 , CDP_EMT_Pt_onetwo_Target(nullptr)
321 , CDP_EMT_Pt_all_Outside(nullptr)
322 , CDP_EMT_Pt_two_Outside(nullptr)
323 , CDP_EMT_Pt_onetwo_Outside(nullptr)
324 , CDP_EMT_Pt_all_Both(nullptr)
325 , CDP_EMT_Pt_two_Both(nullptr)
326 , CDP_EMT_Pt_onetwo_Both(nullptr)
327 , CDP_LK_EMT_Pt_all_Target(nullptr)
328 , CDP_LK_EMT_Pt_two_Target(nullptr)
329 , CDP_LK_EMT_Pt_onetwo_Target(nullptr)
330 , CDP_LK_EMT_Pt_all_Outside(nullptr)
331 , CDP_LK_EMT_Pt_two_Outside(nullptr)
332 , CDP_LK_EMT_Pt_onetwo_Outside(nullptr)
333 , CDP_LK_EMT_Pt_all_Both(nullptr)
334 , CDP_LK_EMT_Pt_two_Both(nullptr)
335 , CDP_LK_EMT_Pt_onetwo_Both(nullptr) {}
340 FairRootManager* ioman = FairRootManager::Instance();
341 if (
nullptr == ioman) {
342 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
343 "RootManager not instantised!");
346 fMcTracks = (TClonesArray*) ioman->GetObject(
"MCTrack");
348 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No MCTrack array!");
357 <<
"CbmKresConversionCorrectedPhotons::Init No PrimaryVertex array!";
360 fGlobalTracks = (TClonesArray*) ioman->GetObject(
"GlobalTrack");
362 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No GlobalTrack array!");
365 fStsTracks = (TClonesArray*) ioman->GetObject(
"StsTrack");
367 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No StsTrack array!");
372 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No StsTrackMatch array!");
377 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
378 "No RichProjection array!");
381 fRichRings = (TClonesArray*) ioman->GetObject(
"RichRing");
383 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No RichRing array!");
388 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No RichRingMatch array!");
391 fRichHits = (TClonesArray*) ioman->GetObject(
"RichHit");
393 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No RichHit array!");
396 fArrayMvdHit = (TClonesArray*) ioman->GetObject(
"MvdHit");
398 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No MvdHit array!");
401 fArrayStsHit = (TClonesArray*) ioman->GetObject(
"StsHit");
403 Fatal(
"CbmKresConversionCorrectedPhotons::Init",
"No StsHit array!");
422 cout <<
"\t *** CbmKresTrainAnnDirectPhotons ==> is "
432 cout <<
"\t *** CbmKresSelectAnnPhotons ==> is "
441 cout <<
"\t *** CbmKresGammaCorrection ==> is "
449 double OpeningAngleCut,
450 double GammaInvMassCut,
452 cout <<
"CbmKresConversionCorrectedPhotons, event No. " << fEventNumDP
458 Fatal(
"CbmKresConversionCorrectedPhotons::Exec",
"No PrimaryVertex array!");
487 for (Int_t
i = 0;
i < ngTracks;
i++) {
489 if (
nullptr == gTrack)
continue;
493 if (stsInd < 0)
continue;
495 if (stsTrack ==
nullptr)
continue;
498 if (stsMatch ==
nullptr)
continue;
501 if (stsMcTrackId < 0)
continue;
503 if (mcTrack ==
nullptr)
continue;
507 if (richInd < 0 && proj->GetX() > -115 && proj->GetX() < 115
508 && ((proj->GetY() < -120 && proj->GetY() > -200)
509 || (proj->GetY() > 120 && proj->GetY() < 200)))
530 double charge = track_par->GetQp();
533 if (chi2 != chi2)
continue;
534 if (chi2 == 0)
continue;
538 mcTrack, stsTrack, charge, stsInd, richInd, stsMcTrackId, Ring);
540 if (chi2 > 3)
continue;
543 mcTrack, stsTrack, Momentum, charge, stsInd, richInd, stsMcTrackId, Ring);
581 int numformix = 1000;
582 if (fEventNumDP % numformix == 0) {
595 if (fEventNumDP % numformix == 0) {
640 int InRich =
FindInRich(richInd, stsMcTrackId);
665 int InRich =
FindInRich(richInd, stsMcTrackId);
690 vector<CbmMCTrack*> MCtracks_minus,
691 vector<CbmMCTrack*> MCtracks_plus,
692 vector<CbmStsTrack*> StsTrack_minus,
693 vector<CbmStsTrack*> StsTrack_plus,
694 vector<TVector3> Momenta_minus,
695 vector<TVector3> Momenta_plus,
696 std::vector<int> Rings_minus,
697 std::vector<int> Rings_plus,
698 std::vector<int> stsIndex_minus,
699 std::vector<int> stsIndex_plus,
700 vector<CbmRichRing*> richRing_minus,
701 vector<CbmRichRing*> richRing_plus) {
702 for (
size_t i = 0;
i < Momenta_minus.size();
i++) {
703 for (
size_t j = 0; j < Momenta_plus.size(); j++) {
708 TVector3 part1 = Momenta_minus[
i];
709 TVector3 part2 = Momenta_plus[j];
712 int sts1_index = stsIndex_minus[
i];
713 int sts2_index = stsIndex_plus[j];
721 richcheck_1 =
CheckIfElectron(richRing_plus[j], Momenta_plus[j].Mag());
724 richcheck_0 = Rings_minus[
i];
725 richcheck_1 = Rings_plus[j];
727 int richcheck = richcheck_0 + richcheck_1;
729 Double_t InvmassReco =
731 Double_t OpeningAngle =
737 if (params.
fPt != params.
fPt)
continue;
739 if (params.
fPt >= 3)
continue;
741 double rap_step = 0.4;
742 double pt_step = 0.1;
743 int rap_coef = params.
fRapidity / rap_step;
744 int pt_coef = params.
fPt / pt_step;
791 double AnnValue = 999;
811 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
812 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
817 int fromFireball = 0;
821 int fromCombinatorial = 0;
822 int fromConversion = 0;
823 int twoFromTarget = 0;
834 if (mcTrackGrmama->
GetPdgCode() == 111) fromPions = 1;
835 if (mcTrackGrmama->
GetPdgCode() == 221) fromEta = 1;
836 if (mcTrackGrmama->
GetPdgCode() == 3212) fromXi = 1;
840 if (mcTrackmama->
GetPdgCode() == 111) fromDalitz = 1;
841 if (mcTrackmama->
GetPdgCode() != 111) fromOther = 1;
847 fromCombinatorial = 1;
874 std::vector<TVector3> minusTrack =
SaveAllHits(sts1);
875 std::vector<TVector3> plusTrack =
SaveAllHits(sts2);
900 if (richcheck == 0 || richcheck == 1 || richcheck == 2) {
901 double weight_all = 0;
902 if (
corr_all[rap_coef][pt_coef] != 0)
903 weight_all = 1 /
corr_all[rap_coef][pt_coef];
917 if (fromFireball == 1) {
927 if (fromPions == 1) {
935 if (fromDalitz == 1) {
943 if (fromOther == 1) {
947 if (fromCombinatorial == 1) {
952 if (fromConversion == 1) {
956 if (twoFromTarget == 1) {
963 if (richcheck == 2) {
964 double weight_two = 0;
965 if (
corr_two[rap_coef][pt_coef] != 0)
966 weight_two = 1 /
corr_two[rap_coef][pt_coef];
980 if (fromFireball == 1) {
990 if (fromPions == 1) {
998 if (fromDalitz == 1) {
1006 if (fromOther == 1) {
1010 if (fromCombinatorial == 1) {
1015 if (fromConversion == 1) {
1019 if (twoFromTarget == 1) {
1026 if (richcheck == 1 || richcheck == 2) {
1027 double weight_onetwo = 0;
1029 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
1045 if (fromFireball == 1) {
1055 if (fromPions == 1) {
1063 if (fromDalitz == 1) {
1071 if (fromOther == 1) {
1075 if (fromCombinatorial == 1) {
1081 if (fromConversion == 1) {
1087 if (twoFromTarget == 1) {
1104 vector<CbmMCTrack*> MCtracks_minus_Outside,
1105 vector<CbmMCTrack*> MCtracks_plus_Outside,
1106 vector<CbmStsTrack*> StsTrack_minus_Outside,
1107 vector<CbmStsTrack*> StsTrack_plus_Outside,
1108 std::vector<int> Rings_minus_Outside,
1109 std::vector<int> Rings_plus_Outside,
1110 std::vector<int> stsIndex_minus_Outside,
1112 vector<CbmRichRing*> richRing_minus_Outside,
1113 vector<CbmRichRing*> richRing_plus_Outside) {
1114 for (
size_t i = 0;
i < StsTrack_minus_Outside.size();
i++) {
1115 for (
size_t j = 0; j < StsTrack_plus_Outside.size(); j++) {
1120 CbmMCTrack* part2MC = MCtracks_plus_Outside[j];
1121 int sts1_index = stsIndex_minus_Outside[
i];
1124 KFParticle electron;
1126 part1STS, &electron, 11);
1127 KFParticle positron;
1129 part2STS, &positron, -11);
1130 const KFParticle* daughters[2] = {&electron, &positron};
1131 KFParticle intersection;
1132 intersection.Construct(daughters, 2);
1134 if (intersection.GetZ() > 75 || intersection.GetZ() < -5)
1139 intersection.GetX(),
1140 intersection.GetY(),
1141 intersection.GetZ());
1143 intersection.GetX(),
1144 intersection.GetY(),
1145 intersection.GetZ());
1151 int richcheck_0 = 0;
1152 int richcheck_1 = 0;
1157 richcheck = richcheck_0 + richcheck_1;
1160 richcheck = Rings_minus_Outside[
i] + Rings_plus_Outside[j];
1164 Double_t InvmassReco =
1166 Double_t OpeningAngle =
1172 if (params.
fPt != params.
fPt)
continue;
1174 if (params.
fPt >= 3)
continue;
1176 double rap_step = 0.4;
1177 double pt_step = 0.1;
1178 int rap_coef = params.
fRapidity / rap_step;
1179 int pt_coef = params.
fPt / pt_step;
1220 intersection.GetZ(),
1226 double AnnValue = 999;
1231 intersection.GetZ(),
1244 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
1245 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
1251 int fromFireball = 0;
1255 int fromCombinatorial = 0;
1256 int fromConversion = 0;
1257 int twoFromTarget = 0;
1268 if (mcTrackGrmama->
GetPdgCode() == 111) fromPions = 1;
1269 if (mcTrackGrmama->
GetPdgCode() == 221) fromEta = 1;
1270 if (mcTrackGrmama->
GetPdgCode() == 3212) fromXi = 1;
1274 if (mcTrackmama->
GetPdgCode() == 111) fromDalitz = 1;
1275 if (mcTrackmama->
GetPdgCode() != 111) fromOther = 1;
1281 fromCombinatorial = 1;
1308 std::vector<TVector3> minusTrack =
SaveAllHits(part1STS);
1309 std::vector<TVector3> plusTrack =
SaveAllHits(part2STS);
1335 if (richcheck == 0 || richcheck == 1 || richcheck == 2) {
1336 double weight_all = 0;
1339 if (
corr_all[rap_coef][pt_coef] != 0)
1340 weight_all = 1 /
corr_all[rap_coef][pt_coef];
1354 if (fromFireball == 1) {
1364 if (fromPions == 1) {
1372 if (fromDalitz == 1) {
1380 if (fromOther == 1) {
1384 if (fromCombinatorial == 1) {
1389 if (fromConversion == 1) {
1393 if (twoFromTarget == 1) {
1400 if (richcheck == 2) {
1401 double weight_two = 0;
1402 if (
corr_two[rap_coef][pt_coef] != 0)
1403 weight_two = 1 /
corr_two[rap_coef][pt_coef];
1417 if (fromFireball == 1) {
1427 if (fromPions == 1) {
1435 if (fromDalitz == 1) {
1443 if (fromOther == 1) {
1447 if (fromCombinatorial == 1) {
1452 if (fromConversion == 1) {
1456 if (twoFromTarget == 1) {
1463 if (richcheck == 1 || richcheck == 2) {
1464 double weight_onetwo = 0;
1466 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
1480 if (fromFireball == 1) {
1491 if (fromPions == 1) {
1499 if (fromDalitz == 1) {
1508 if (fromOther == 1) {
1512 if (fromCombinatorial == 1) {
1518 if (fromConversion == 1) {
1524 if (twoFromTarget == 1) {
1538 int RingsInRich = 0;
1542 if (richMatch !=
nullptr && richMatch->
GetNofLinks() > 0) {
1544 if (richMcTrackId > 0) {
1549 if (mcTrack2 !=
nullptr) {
1551 if (TMath::Abs(pdgRICH) == 11) RingsInRich++;
1565 if (
nullptr != ring) {
1568 for (
int i = 0;
i < nofHits;
i++) {
1571 if (
nullptr == hit)
continue;
1586 std::vector<TVector3>
1588 std::vector<TVector3> AllHitsOfTrack;
1589 AllHitsOfTrack.clear();
1594 for (
int i = 0;
i < hitsMVD;
i++) {
1599 AllHitsOfTrack.push_back(position);
1601 for (
int i = 0;
i < hitsSTS;
i++) {
1606 AllHitsOfTrack.push_back(position);
1609 return AllHitsOfTrack;
1613 std::vector<TVector3> track_1,
1614 std::vector<TVector3> track_2) {
1615 double FinalAngle = 400;
1617 int hits_1 = track_1.size();
1618 int hits_2 = track_2.size();
1627 TVector3 last1 = track_1[hits_1 - 1];
1628 TVector3 last2 = track_2[hits_2 - 1];
1632 TMath::Abs(last1.Z() - last2.Z()) > 2
1636 for (
int i = hits_1 - 2;
i > -1;
i--) {
1637 if (TMath::Abs(last1.Z() - last2.Z()) < 2)
continue;
1646 TMath::Abs(last1.Z() - last2.Z()) > 2
1650 for (
int i = hits_2 - 2;
i > -1;
i--) {
1651 if (TMath::Abs(last1.Z() - last2.Z()) < 2)
continue;
1660 if (TMath::Abs(Zpart1 - Zpart2) < 2 && Zpart1 != 0 && Zpart2 != 0) {
1662 TMath::ATan2(Ypart1 - Ypart2, Xpart1 - Xpart2) * (180 /
TMath::Pi());
1665 return TMath::Abs(TMath::Abs(FinalAngle) - 180);
1672 double FinalAngle = 400;
1687 Xpart1 = stsHit1->
GetX();
1688 Ypart1 = stsHit1->
GetY();
1689 Zpart1 = stsHit1->
GetZ();
1693 Xpart1 = mvdHit1->
GetX();
1694 Ypart1 = mvdHit1->
GetY();
1695 Zpart1 = mvdHit1->
GetZ();
1701 Xpart2 = stsHit2->
GetX();
1702 Ypart2 = stsHit2->
GetY();
1703 Zpart2 = stsHit2->
GetZ();
1707 Xpart2 = mvdHit2->
GetX();
1708 Ypart2 = mvdHit2->
GetY();
1709 Zpart2 = mvdHit2->
GetZ();
1714 TMath::Abs(Zpart1 - Zpart2) > 2
1717 for (
int i = hits1sts - 2;
i > -1;
i--) {
1718 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1721 Xpart1 = stsHit->
GetX();
1722 Ypart1 = stsHit->
GetY();
1723 Zpart1 = stsHit->
GetZ();
1725 if (TMath::Abs(Zpart1 - Zpart2) > 2 && Zpart1 > Zpart2) {
1726 for (
int i = hits1mvd - 2;
i > -1;
i--) {
1727 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1730 Xpart1 = mvdHit->
GetX();
1731 Ypart1 = mvdHit->
GetY();
1732 Zpart1 = mvdHit->
GetZ();
1738 TMath::Abs(Zpart1 - Zpart2) > 2
1741 for (
int i = hits2sts - 2;
i > -1;
i--) {
1742 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1745 Xpart2 = stsHit->
GetX();
1746 Ypart2 = stsHit->
GetY();
1747 Zpart2 = stsHit->
GetZ();
1749 if (TMath::Abs(Zpart1 - Zpart2) > 2 && Zpart1 < Zpart2) {
1750 for (
int i = hits2mvd - 2;
i > -1;
i--) {
1751 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1754 Xpart2 = mvdHit->
GetX();
1755 Ypart2 = mvdHit->
GetY();
1756 Zpart2 = mvdHit->
GetZ();
1762 if (TMath::Abs(Zpart1 - Zpart2) < 2 && Zpart1 != 0 && Zpart2 != 0) {
1764 TMath::ATan2(Ypart1 - Ypart2, Xpart1 - Xpart2) * (180 /
TMath::Pi());
1767 return TMath::Abs(TMath::Abs(FinalAngle) - 180);
1773 double FinalAngle = 400;
1788 Xpart1 = mvdHit1->
GetX();
1789 Ypart1 = mvdHit1->
GetY();
1790 Zpart1 = mvdHit1->
GetZ();
1794 Xpart1 = stsHit1->
GetX();
1795 Ypart1 = stsHit1->
GetY();
1796 Zpart1 = stsHit1->
GetZ();
1802 Xpart2 = mvdHit2->
GetX();
1803 Ypart2 = mvdHit2->
GetY();
1804 Zpart2 = mvdHit2->
GetZ();
1808 Xpart2 = stsHit2->
GetX();
1809 Ypart2 = stsHit2->
GetY();
1810 Zpart2 = stsHit2->
GetZ();
1815 TMath::Abs(Zpart1 - Zpart2) > 2
1818 for (
int i = 1;
i < hits1mvd;
i++) {
1819 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1822 Xpart1 = mvdHit->
GetX();
1823 Ypart1 = mvdHit->
GetY();
1824 Zpart1 = mvdHit->
GetZ();
1826 if (TMath::Abs(Zpart1 - Zpart2) > 2 && Zpart1 < Zpart2) {
1827 for (
int i = 0;
i < hits1sts;
i++) {
1828 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1831 Xpart1 = stsHit->
GetX();
1832 Ypart1 = stsHit->
GetY();
1833 Zpart1 = stsHit->
GetZ();
1839 TMath::Abs(Zpart1 - Zpart2) > 2
1842 for (
int i = 1;
i < hits2mvd;
i++) {
1843 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1846 Xpart2 = mvdHit->
GetX();
1847 Ypart2 = mvdHit->
GetY();
1848 Zpart2 = mvdHit->
GetZ();
1850 if (TMath::Abs(Zpart1 - Zpart2) > 2 && Zpart1 > Zpart2) {
1851 for (
int i = 0;
i < hits2sts;
i++) {
1852 if (TMath::Abs(Zpart1 - Zpart2) < 2)
continue;
1855 Xpart2 = stsHit->
GetX();
1856 Ypart2 = stsHit->
GetY();
1857 Zpart2 = stsHit->
GetZ();
1863 if (TMath::Abs(Zpart1 - Zpart2) < 2 && Zpart1 != 0 && Zpart2 != 0) {
1865 TMath::ATan2(Ypart1 - Ypart2, Xpart1 - Xpart2) * (180 /
TMath::Pi());
1868 return TMath::Abs(TMath::Abs(FinalAngle) - 180);
1877 for (
int a = 0; a < nof_minus - 1; a++) {
1878 for (
int b = a + 1; b < nof_minus; b++) {
1888 double OpeningAngle =
1901 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
1902 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
1909 if (params.
fPt != params.
fPt)
continue;
1911 if (params.
fPt >= 3)
continue;
1913 double rap_step = 0.4;
1914 double pt_step = 0.1;
1915 int rap_coef = params.
fRapidity / rap_step;
1916 int pt_coef = params.
fPt / pt_step;
1917 double weight_all = 0;
1918 double weight_two = 0;
1919 double weight_onetwo = 0;
1920 if (
corr_all[rap_coef][pt_coef] != 0)
1921 weight_all = 1 /
corr_all[rap_coef][pt_coef];
1922 if (
corr_two[rap_coef][pt_coef] != 0)
1923 weight_two = 1 /
corr_two[rap_coef][pt_coef];
1925 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
1935 if (rings_amount == 2)
1937 if ((rings_amount == 1 || rings_amount == 2))
1940 if (rings_amount == 2)
1942 if ((rings_amount == 1 || rings_amount == 2))
1949 for (
int a = 0; a < nof_plus - 1; a++) {
1950 for (
int b = a + 1; b < nof_plus; b++) {
1960 double OpeningAngle =
1973 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
1974 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
1981 if (params.
fPt != params.
fPt)
continue;
1983 if (params.
fPt >= 3)
continue;
1985 double rap_step = 0.4;
1986 double pt_step = 0.1;
1987 int rap_coef = params.
fRapidity / rap_step;
1988 int pt_coef = params.
fPt / pt_step;
1989 double weight_all = 0;
1990 double weight_two = 0;
1991 double weight_onetwo = 0;
1992 if (
corr_all[rap_coef][pt_coef] != 0)
1993 weight_all = 1 /
corr_all[rap_coef][pt_coef];
1994 if (
corr_two[rap_coef][pt_coef] != 0)
1995 weight_two = 1 /
corr_two[rap_coef][pt_coef];
1997 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
2007 if (rings_amount == 2)
2009 if ((rings_amount == 1 || rings_amount == 2))
2012 if (rings_amount == 2)
2014 if ((rings_amount == 1 || rings_amount == 2))
2026 for (
int a = 0; a < nof_minus - 1; a++) {
2027 for (
int b = a + 1; b < nof_minus; b++) {
2034 KFParticle electron;
2036 KFParticle positron;
2038 const KFParticle* daughters[2] = {&electron, &positron};
2039 KFParticle intersection;
2040 intersection.Construct(daughters, 2);
2042 if (intersection.GetZ() > 75 || intersection.GetZ() < -5)
2046 sts1, intersection.GetX(), intersection.GetY(), intersection.GetZ());
2048 sts2, intersection.GetX(), intersection.GetY(), intersection.GetZ());
2051 double OpeningAngle =
2064 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
2065 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
2072 if (params.
fPt != params.
fPt)
continue;
2074 if (params.
fPt >= 3)
continue;
2076 double rap_step = 0.4;
2077 double pt_step = 0.1;
2078 int rap_coef = params.
fRapidity / rap_step;
2079 int pt_coef = params.
fPt / pt_step;
2080 double weight_all = 0;
2081 double weight_two = 0;
2082 double weight_onetwo = 0;
2083 if (
corr_all[rap_coef][pt_coef] != 0)
2084 weight_all = 1 /
corr_all[rap_coef][pt_coef];
2085 if (
corr_two[rap_coef][pt_coef] != 0)
2086 weight_two = 1 /
corr_two[rap_coef][pt_coef];
2088 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
2098 if (rings_amount == 2)
2100 if ((rings_amount == 1 || rings_amount == 2))
2103 if (rings_amount == 2)
2105 if ((rings_amount == 1 || rings_amount == 2))
2112 for (
int a = 0; a < nof_plus - 1; a++) {
2113 for (
int b = a + 1; b < nof_plus; b++) {
2120 KFParticle electron;
2122 KFParticle positron;
2124 const KFParticle* daughters[2] = {&electron, &positron};
2125 KFParticle intersection;
2126 intersection.Construct(daughters, 2);
2128 if (intersection.GetZ() > 75 || intersection.GetZ() < -5)
2132 sts1, intersection.GetX(), intersection.GetY(), intersection.GetZ());
2134 sts2, intersection.GetX(), intersection.GetY(), intersection.GetZ());
2137 double OpeningAngle =
2150 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
2151 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
2158 if (params.
fPt != params.
fPt)
continue;
2160 if (params.
fPt >= 3)
continue;
2162 double rap_step = 0.4;
2163 double pt_step = 0.1;
2164 int rap_coef = params.
fRapidity / rap_step;
2165 int pt_coef = params.
fPt / pt_step;
2166 double weight_all = 0;
2167 double weight_two = 0;
2168 double weight_onetwo = 0;
2169 if (
corr_all[rap_coef][pt_coef] != 0)
2170 weight_all = 1 /
corr_all[rap_coef][pt_coef];
2171 if (
corr_two[rap_coef][pt_coef] != 0)
2172 weight_two = 1 /
corr_two[rap_coef][pt_coef];
2174 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
2184 if (rings_amount == 2)
2186 if ((rings_amount == 1 || rings_amount == 2))
2189 if (rings_amount == 2)
2191 if ((rings_amount == 1 || rings_amount == 2))
2203 cout <<
"Mixing for corrected direct photons in Target - nof entries "
2204 << nof_Target << endl;
2216 double OpeningAngle =
2229 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
2230 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
2237 if (params.
fPt != params.
fPt)
continue;
2239 if (params.
fPt >= 3)
continue;
2241 double rap_step = 0.4;
2242 double pt_step = 0.1;
2243 int rap_coef = params.
fRapidity / rap_step;
2244 int pt_coef = params.
fPt / pt_step;
2245 double weight_all = 0;
2246 double weight_two = 0;
2247 double weight_onetwo = 0;
2248 if (
corr_all[rap_coef][pt_coef] != 0)
2249 weight_all = 1 /
corr_all[rap_coef][pt_coef];
2250 if (
corr_two[rap_coef][pt_coef] != 0)
2251 weight_two = 1 /
corr_two[rap_coef][pt_coef];
2253 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
2264 if (rings_amount == 2) {
2268 if ((rings_amount == 1 || rings_amount == 2)) {
2282 cout <<
"Mixing for corrected direct photons in Outside - nof entries "
2283 << nof_Outside << endl;
2293 const KFParticle* daughters[2] = {&electron, &positron};
2294 KFParticle intersection;
2295 intersection.Construct(daughters, 2);
2297 if (intersection.GetZ() > 75 || intersection.GetZ() < -5)
2300 TVector3 e1(electron.KFParticleBase::Px(),
2301 electron.KFParticleBase::Py(),
2302 electron.KFParticleBase::Pz());
2303 TVector3 e2(positron.KFParticleBase::Px(),
2304 positron.KFParticleBase::Py(),
2305 positron.KFParticleBase::Pz());
2311 double OpeningAngle =
2319 intersection.GetZ(),
2324 if (TMath::Abs(OpeningAngle) > AngleCut)
continue;
2325 if (TMath::Abs(InvmassReco) > InvMassCut)
continue;
2332 if (params.
fPt != params.
fPt)
continue;
2334 if (params.
fPt >= 3)
continue;
2336 double rap_step = 0.4;
2337 double pt_step = 0.1;
2338 int rap_coef = params.
fRapidity / rap_step;
2339 int pt_coef = params.
fPt / pt_step;
2340 double weight_all = 0;
2341 double weight_two = 0;
2342 double weight_onetwo = 0;
2343 if (
corr_all[rap_coef][pt_coef] != 0)
2344 weight_all = 1 /
corr_all[rap_coef][pt_coef];
2345 if (
corr_two[rap_coef][pt_coef] != 0)
2346 weight_two = 1 /
corr_two[rap_coef][pt_coef];
2348 weight_onetwo = 1 /
corr_onetwo[rap_coef][pt_coef];
2359 if (rings_amount == 2) {
2363 if ((rings_amount == 1 || rings_amount == 2)) {
2373 gDirectory->mkdir(
"corrected photons");
2374 gDirectory->cd(
"corrected photons");
2378 gDirectory->mkdir(
"Target");
2379 gDirectory->cd(
"Target");
2380 gDirectory->mkdir(
"CheckCuts_Target");
2381 gDirectory->cd(
"CheckCuts_Target");
2385 gDirectory->cd(
"..");
2386 gDirectory->mkdir(
"all");
2387 gDirectory->cd(
"all");
2391 gDirectory->cd(
"..");
2392 gDirectory->mkdir(
"two");
2393 gDirectory->cd(
"two");
2397 gDirectory->cd(
"..");
2398 gDirectory->mkdir(
"onetwo");
2399 gDirectory->cd(
"onetwo");
2403 gDirectory->cd(
"..");
2407 gDirectory->cd(
"..");
2410 gDirectory->mkdir(
"Outside");
2411 gDirectory->cd(
"Outside");
2412 gDirectory->mkdir(
"CheckCuts_Outside");
2413 gDirectory->cd(
"CheckCuts_Outside");
2417 gDirectory->cd(
"..");
2418 gDirectory->mkdir(
"all");
2419 gDirectory->cd(
"all");
2423 gDirectory->cd(
"..");
2424 gDirectory->mkdir(
"two");
2425 gDirectory->cd(
"two");
2429 gDirectory->cd(
"..");
2430 gDirectory->mkdir(
"onetwo");
2431 gDirectory->cd(
"onetwo");
2435 gDirectory->cd(
"..");
2439 gDirectory->cd(
"..");
2442 gDirectory->mkdir(
"Both");
2443 gDirectory->cd(
"Both");
2444 gDirectory->mkdir(
"CheckCuts_Both");
2445 gDirectory->cd(
"CheckCuts_Both");
2449 gDirectory->cd(
"..");
2450 gDirectory->mkdir(
"all");
2451 gDirectory->cd(
"all");
2455 gDirectory->cd(
"..");
2456 gDirectory->mkdir(
"two");
2457 gDirectory->cd(
"two");
2461 gDirectory->cd(
"..");
2462 gDirectory->mkdir(
"onetwo");
2463 gDirectory->cd(
"onetwo");
2467 gDirectory->cd(
"..");
2471 gDirectory->cd(
"..");
2474 gDirectory->cd(
"..");
2481 new TH1D(
"CMother_PDG_Target",
"CMother_PDG_Target; Id;#", 1000, -10, 490);
2484 "CGrandMother_PDG_Target",
"CGrandMother_PDG_Target; Id;#", 1000, -10, 490);
2489 "CMother_PDG_Outside",
"CMother_PDG_Outside; Id;#", 1000, -10, 490);
2492 "CGrandMother_PDG_Outside; Id;#",
2500 new TH2D(
"CPdg_vs_Distance_for_dp",
2501 "CPdg_vs_Distance_for_dp; pdg; distance in cm",
2510 new TH2D(
"CP_vs_Distance_for_dp",
2511 "CDistance between projected track and center of the ring (for e+ "
2512 "and e-); P in GeV/c^{2}; distance in cm",
2521 "CDP_AnnTruePairs",
"CDP_AnnTruePairs; Ann value ;#", 100, -1.2, 1.2);
2524 "CDP_AnnFalsePairs",
"CDP_AnnFalsePairs; Ann value ;#", 100, -1.2, 1.2);
2527 new TH1D(
"CDP_AnnTruePairs_AfterCuts",
2528 "CDP_AnnTruePairs_AfterCuts; Ann value ;#",
2534 new TH1D(
"CDP_AnnFalsePairs_AfterCuts",
2535 "CDP_AnnFalsePairs_AfterCuts; Ann value ;#",
2545 new TH2D(
"CDP_candidates_InvMass_vs_OA_Both",
2546 "CDP_candidates_InvMass_vs_OA_Both; invariant mass in GeV/c^{2}; "
2547 "opening angle in degree",
2556 "CDP_InvMass_vs_OA_Both; invariant mass in "
2557 "GeV/c^{2}; opening angle in degree",
2566 new TH1D(
"CDP_candidates_InvMass_Both",
2567 "CDP_candidates_InvMass_Both; invariant mass in GeV/c^{2};#",
2573 "CDP_InvMass_Both; invariant mass in GeV/c^{2};#",
2579 new TH1D(
"CDP_candidates_OA_Both",
2580 "CDP_candidates_OA_Both; opening angle in degree;#",
2586 "CDP_OA_Both",
"CDP_OA_Both; opening angle in degree;#", 300, -0.1, 29.9);
2589 new TH1D(
"CDP_candidates_PlaneAngles_last_Both",
2590 "CDP_candidates_PlaneAngles_last_Both; #theta angle in degree;#",
2596 new TH1D(
"CDP_PlaneAngles_last_Both",
2597 "CDP_PlaneAngles_last_Both; #theta angle in degree;#",
2603 new TH1D(
"CDP_candidates_PlaneAngles_first_Both",
2604 "CDP_candidates_PlaneAngles_first_Both; #theta angle in degree;#",
2610 new TH1D(
"CDP_PlaneAngles_first_Both",
2611 "CDP_PlaneAngles_first_Both; #theta angle in degree;#",
2619 new TH2D(
"CDP_candidates_InvMass_vs_OA_Target",
2620 "CDP_candidates_InvMass_vs_OA_Target; invariant mass in "
2621 "GeV/c^{2}; opening angle in degree",
2630 new TH2D(
"CDP_InvMass_vs_OA_Target",
2631 "CDP_InvMass_vs_OA_Target; invariant mass in GeV/c^{2}; opening "
2641 new TH1D(
"CDP_candidates_InvMass_Target",
2642 "CDP_candidates_InvMass_Target; invariant mass in GeV/c^{2};#",
2648 new TH1D(
"CDP_InvMass_Target",
2649 "CDP_InvMass_Target; invariant mass in GeV/c^{2};#",
2655 new TH1D(
"CDP_candidates_OA_Target",
2656 "CDP_candidates_OA_Target; opening angle in degree;#",
2662 "CDP_OA_Target; opening angle in degree;#",
2668 new TH1D(
"CDP_candidates_PlaneAngles_last_Target",
2669 "CDP_candidates_PlaneAngles_last_Target; #theta angle in degree;#",
2675 new TH1D(
"CDP_PlaneAngles_last_Target",
2676 "CDP_PlaneAngles_last_Target; #theta angle in degree;#",
2682 "CDP_candidates_PlaneAngles_first_Target",
2683 "CDP_candidates_PlaneAngles_first_Target; #theta angle in degree;#",
2689 new TH1D(
"CDP_PlaneAngles_first_Target",
2690 "CDP_PlaneAngles_first_Target; #theta angle in degree;#",
2698 new TH2D(
"CDP_candidates_InvMass_vs_OA_Outside",
2699 "CDP_candidates_InvMass_vs_OA_Outside; invariant mass in "
2700 "GeV/c^{2}; opening angle in degree",
2709 new TH2D(
"CDP_InvMass_vs_OA_Outside",
2710 "CDP_InvMass_vs_OA_Outside; invariant mass in GeV/c^{2}; opening "
2720 new TH1D(
"CDP_candidates_InvMass_Outside",
2721 "CDP_candidates_InvMass_Outside; invariant mass in GeV/c^{2};#",
2727 new TH1D(
"CDP_InvMass_Outside",
2728 "CDP_InvMass_Outside; invariant mass in GeV/c^{2};#",
2734 new TH1D(
"CDP_candidates_OA_Outside",
2735 "CDP_candidates_OA_Outside; opening angle in degree;#",
2741 "CDP_OA_Outside; opening angle in degree;#",
2747 "CDP_candidates_PlaneAngles_last_Outside",
2748 "CDP_candidates_PlaneAngles_last_Outside; #theta angle in degree;#",
2754 new TH1D(
"CDP_PlaneAngles_last_Outside",
2755 "CDP_PlaneAngles_last_Outside; #theta angle in degree;#",
2761 "CDP_candidates_PlaneAngles_first_Outside",
2762 "CDP_candidates_PlaneAngles_first_Outside; #theta angle in degree;#",
2769 new TH1D(
"CDP_PlaneAngles_first_Outside",
2770 "CDP_PlaneAngles_first_Outside; #theta angle in degree;#",
2779 new TH1D(
"CDP_InvMassReco_all_Target",
2780 "CDP_InvMassReco_all_Target; invariant mass in GeV/c^{2};#",
2786 new TH1D(
"CDP_OpeningAngleReco_all_Target",
2787 "CDP_OpeningAngleReco_all_Target; angle [deg];#",
2793 new TH1D(
"CDP_Pdg_all_Target",
"CDP_Pdg_all_Target; Id;#", 1000, -10, 490);
2796 "CDP_P_reco_all_Target; P in GeV/c^{2};#",
2802 new TH1D(
"CDP_Pt_reco_all_Target",
2803 "CDP_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2809 new TH1D(
"CPh_fromTarget_Pt_reco_all_Target",
2810 "CPh_fromTarget_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2816 new TH1D(
"CPh_fromPions_Pt_reco_all_Target",
2817 "CPh_fromPions_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2823 new TH1D(
"CPh_fromEtas_Pt_reco_all_Target",
2824 "CPh_fromEtas_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2830 new TH1D(
"CPh_fromDalitz_Pt_reco_all_Target",
2831 "CPh_fromDalitz_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2837 new TH1D(
"CPh_fromXi_Pt_reco_all_Target",
2838 "CPh_fromXi_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2844 new TH1D(
"CPh_fromOther_Pt_reco_all_Target",
2845 "CPh_fromOther_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2851 new TH1D(
"CPh_twoFromTarget_Pt_reco_all_Target",
2852 "CPh_twoFromTarget_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2858 new TH1D(
"CPh_fromCombinatorial_Pt_reco_all_Target",
2859 "CPh_fromCombinatorial_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2865 new TH1D(
"CPh_fromConversion_Pt_reco_all_Target",
2866 "CPh_fromConversion_Pt_reco_all_Target; P_{t} in GeV/c^{2};#",
2872 new TH2D(
"CPh_pt_vs_rap_est_all_Target",
2873 "CPh_pt_vs_rap_est_all_Target; rapidity y; p_{t} in GeV/c ",
2882 new TH2D(
"CPh_pt_vs_rap_est_corr_all_Target",
2883 "CPh_pt_vs_rap_est_corr_all_Target; rapidity y; p_{t} in GeV/c ",
2894 new TH1D(
"CDP_InvMassReco_two_Target",
2895 "CDP_InvMassReco_two_Target; invariant mass in GeV/c^{2};#",
2901 new TH1D(
"CDP_OpeningAngleReco_two_Target",
2902 "CDP_OpeningAngleReco_two_Target; angle [deg];#",
2908 new TH1D(
"CDP_Pdg_two_Target",
"CDP_Pdg_two_Target; Id;#", 1000, -10, 490);
2911 "CDP_P_reco_two_Target; P in GeV/c^{2};#",
2917 new TH1D(
"CDP_Pt_reco_two_Target",
2918 "CDP_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2924 new TH1D(
"CPh_fromTarget_Pt_reco_two_Target",
2925 "CPh_fromTarget_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2931 new TH1D(
"CPh_fromPions_Pt_reco_two_Target",
2932 "CPh_fromPions_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2938 new TH1D(
"CPh_fromEtas_Pt_reco_two_Target",
2939 "CPh_fromEtas_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2945 new TH1D(
"CPh_fromDalitz_Pt_reco_two_Target",
2946 "CPh_fromDalitz_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2952 new TH1D(
"CPh_fromXi_Pt_reco_two_Target",
2953 "CPh_fromXi_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2959 new TH1D(
"CPh_fromOther_Pt_reco_two_Target",
2960 "CPh_fromOther_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2966 new TH1D(
"CPh_twoFromTarget_Pt_reco_two_Target",
2967 "CPh_twoFromTarget_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2973 new TH1D(
"CPh_fromCombinatorial_Pt_reco_two_Target",
2974 "CPh_fromCombinatorial_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2980 new TH1D(
"CPh_fromConversion_Pt_reco_two_Target",
2981 "CPh_fromConversion_Pt_reco_two_Target; P_{t} in GeV/c^{2};#",
2987 new TH2D(
"CPh_pt_vs_rap_est_two_Target",
2988 "CPh_pt_vs_rap_est_two_Target; rapidity y; p_{t} in GeV/c ",
2997 new TH2D(
"CPh_pt_vs_rap_est_corr_two_Target",
2998 "CPh_pt_vs_rap_est_corr_two_Target; rapidity y; p_{t} in GeV/c ",
3009 new TH1D(
"CDP_InvMassReco_onetwo_Target",
3010 "CDP_InvMassReco_onetwo_Target; invariant mass in GeV/c^{2};#",
3016 new TH1D(
"CDP_OpeningAngleReco_onetwo_Target",
3017 "CDP_OpeningAngleReco_onetwo_Target; angle [deg];#",
3023 "CDP_Pdg_onetwo_Target",
"CDP_Pdg_onetwo_Target; Id;#", 1000, -10, 490);
3026 new TH1D(
"CDP_P_reco_onetwo_Target",
3027 "CDP_P_reco_onetwo_Target; P in GeV/c^{2};#",
3033 new TH1D(
"CDP_Pt_reco_onetwo_Target",
3034 "CDP_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3040 new TH1D(
"CPh_fromTarget_Pt_reco_onetwo_Target",
3041 "CPh_fromTarget_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3047 new TH1D(
"CPh_fromPions_Pt_reco_onetwo_Target",
3048 "CPh_fromPions_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3054 new TH1D(
"CPh_fromEtas_Pt_reco_onetwo_Target",
3055 "CPh_fromEtas_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3061 new TH1D(
"CPh_fromDalitz_Pt_reco_onetwo_Target",
3062 "CPh_fromDalitz_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3068 new TH1D(
"CPh_fromXi_Pt_reco_onetwo_Target",
3069 "CPh_fromXi_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3075 new TH1D(
"CPh_fromOther_Pt_reco_onetwo_Target",
3076 "CPh_fromOther_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3082 new TH1D(
"CPh_twoFromTarget_Pt_reco_onetwo_Target",
3083 "CPh_twoFromTarget_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3090 "CPh_fromCombinatorial_Pt_reco_onetwo_Target",
3091 "CPh_fromCombinatorial_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3098 new TH1D(
"CPh_fromConversion_Pt_reco_onetwo_Target",
3099 "CPh_fromConversion_Pt_reco_onetwo_Target; P_{t} in GeV/c^{2};#",
3106 new TH2D(
"CPh_pt_vs_rap_est_onetwo_Target",
3107 "CPh_pt_vs_rap_est_onetwo_Target; rapidity y; p_{t} in GeV/c ",
3116 "CPh_pt_vs_rap_est_corr_onetwo_Target",
3117 "CPh_pt_vs_rap_est_corr_onetwo_Target; rapidity y; p_{t} in GeV/c ",
3129 new TH1D(
"CDP_InvMassReco_all_Outside",
3130 "CDP_InvMassReco_all_Outside; invariant mass in GeV/c^{2};#",
3136 new TH1D(
"CDP_OpeningAngleReco_all_Outside",
3137 "CDP_OpeningAngleReco_all_Outside; angle [deg];#",
3143 "CDP_Pdg_all_Outside",
"CDP_Pdg_all_Outside; Id;#", 1000, -10, 490);
3146 "CDP_P_reco_all_Outside; P in GeV/c^{2};#",
3152 new TH1D(
"CDP_Pt_reco_all_Outside",
3153 "CDP_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3159 new TH1D(
"CPh_fromTarget_Pt_reco_all_Outside",
3160 "CPh_fromTarget_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3166 new TH1D(
"CPh_fromPions_Pt_reco_all_Outside",
3167 "CPh_fromPions_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3173 new TH1D(
"CPh_fromEtas_Pt_reco_all_Outside",
3174 "CPh_fromEtas_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3180 new TH1D(
"CPh_fromDalitz_Pt_reco_all_Outside",
3181 "CPh_fromDalitz_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3187 new TH1D(
"CPh_fromXi_Pt_reco_all_Outside",
3188 "CPh_fromXi_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3194 new TH1D(
"CPh_fromOther_Pt_reco_all_Outside",
3195 "CPh_fromOther_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3201 new TH1D(
"CPh_twoFromTarget_Pt_reco_all_Outside",
3202 "CPh_twoFromTarget_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3208 new TH1D(
"CPh_fromCombinatorial_Pt_reco_all_Outside",
3209 "CPh_fromCombinatorial_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3216 new TH1D(
"CPh_fromConversion_Pt_reco_all_Outside",
3217 "CPh_fromConversion_Pt_reco_all_Outside; P_{t} in GeV/c^{2};#",
3223 new TH2D(
"CPh_pt_vs_rap_est_all_Outside",
3224 "CPh_pt_vs_rap_est_all_Outside; rapidity y; p_{t} in GeV/c ",
3233 new TH2D(
"CPh_pt_vs_rap_est_corr_all_Outside",
3234 "CPh_pt_vs_rap_est_corr_all_Outside; rapidity y; p_{t} in GeV/c ",
3245 new TH1D(
"CDP_InvMassReco_two_Outside",
3246 "CDP_InvMassReco_two_Outside; invariant mass in GeV/c^{2};#",
3252 new TH1D(
"CDP_OpeningAngleReco_two_Outside",
3253 "CDP_OpeningAngleReco_two_Outside; angle [deg];#",
3259 "CDP_Pdg_two_Outside",
"CDP_Pdg_two_Outside; Id;#", 1000, -10, 490);
3262 "CDP_P_reco_two_Outside; P in GeV/c^{2};#",
3268 new TH1D(
"CDP_Pt_reco_two_Outside",
3269 "CDP_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3275 new TH1D(
"CPh_fromTarget_Pt_reco_two_Outside",
3276 "CPh_fromTarget_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3282 new TH1D(
"CPh_fromPions_Pt_reco_two_Outside",
3283 "CPh_fromPions_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3289 new TH1D(
"CPh_fromEtas_Pt_reco_two_Outside",
3290 "CPh_fromEtas_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3296 new TH1D(
"CPh_fromDalitz_Pt_reco_two_Outside",
3297 "CPh_fromDalitz_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3303 new TH1D(
"CPh_fromXi_Pt_reco_two_Outside",
3304 "CPh_fromXi_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3310 new TH1D(
"CPh_fromOther_Pt_reco_two_Outside",
3311 "CPh_fromOther_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3317 new TH1D(
"CPh_twoFromTarget_Pt_reco_two_Outside",
3318 "CPh_twoFromTarget_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3324 new TH1D(
"CPh_fromCombinatorial_Pt_reco_two_Outside",
3325 "CPh_fromCombinatorial_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3332 new TH1D(
"CPh_fromConversion_Pt_reco_two_Outside",
3333 "CPh_fromConversion_Pt_reco_two_Outside; P_{t} in GeV/c^{2};#",
3339 new TH2D(
"CPh_pt_vs_rap_est_two_Outside",
3340 "CPh_pt_vs_rap_est_two_Outside; rapidity y; p_{t} in GeV/c ",
3349 new TH2D(
"CPh_pt_vs_rap_est_corr_two_Outside",
3350 "CPh_pt_vs_rap_est_corr_two_Outside; rapidity y; p_{t} in GeV/c ",
3361 new TH1D(
"CDP_InvMassReco_onetwo_Outside",
3362 "CDP_InvMassReco_onetwo_Outside; invariant mass in GeV/c^{2};#",
3368 new TH1D(
"CDP_OpeningAngleReco_onetwo_Outside",
3369 "CDP_OpeningAngleReco_onetwo_Outside; angle [deg];#",
3375 "CDP_Pdg_onetwo_Outside",
"CDP_Pdg_onetwo_Outside; Id;#", 1000, -10, 490);
3378 new TH1D(
"CDP_P_reco_onetwo_Outside",
3379 "CDP_P_reco_onetwo_Outside; P in GeV/c^{2};#",
3385 new TH1D(
"CDP_Pt_reco_onetwo_Outside",
3386 "CDP_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3392 new TH1D(
"CPh_fromTarget_Pt_reco_onetwo_Outside",
3393 "CPh_fromTarget_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3399 new TH1D(
"CPh_fromPions_Pt_reco_onetwo_Outside",
3400 "CPh_fromPions_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3406 new TH1D(
"CPh_fromEtas_Pt_reco_onetwo_Outside",
3407 "CPh_fromEtas_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3413 new TH1D(
"CPh_fromDalitz_Pt_reco_onetwo_Outside",
3414 "CPh_fromDalitz_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3420 new TH1D(
"CPh_fromXi_Pt_reco_onetwo_Outside",
3421 "CPh_fromXi_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3427 new TH1D(
"CPh_fromOther_Pt_reco_onetwo_Outside",
3428 "CPh_fromOther_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3434 new TH1D(
"CPh_twoFromTarget_Pt_reco_onetwo_Outside",
3435 "CPh_twoFromTarget_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3442 "CPh_fromCombinatorial_Pt_reco_onetwo_Outside",
3443 "CPh_fromCombinatorial_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3450 new TH1D(
"CPh_fromConversion_Pt_reco_onetwo_Outside",
3451 "CPh_fromConversion_Pt_reco_onetwo_Outside; P_{t} in GeV/c^{2};#",
3458 new TH2D(
"CPh_pt_vs_rap_est_onetwo_Outside",
3459 "CPh_pt_vs_rap_est_onetwo_Outside; rapidity y; p_{t} in GeV/c ",
3468 "CPh_pt_vs_rap_est_corr_onetwo_Outside",
3469 "CPh_pt_vs_rap_est_corr_onetwo_Outside; rapidity y; p_{t} in GeV/c ",
3481 new TH1D(
"CDP_InvMassReco_all_Both",
3482 "CDP_InvMassReco_all_Both; invariant mass in GeV/c^{2};#",
3488 new TH1D(
"CDP_OpeningAngleReco_all_Both",
3489 "CDP_OpeningAngleReco_all_Both; angle [deg];#",
3495 new TH1D(
"CDP_Pdg_all_Both",
"CDP_Pdg_all_Both; Id;#", 1000, -10, 490);
3498 "CDP_P_reco_all_Both",
"CDP_P_reco_all_Both; P in GeV/c^{2};#", 200, 0, 10);
3501 "CDP_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3507 new TH1D(
"CPh_fromTarget_Pt_reco_all_Both",
3508 "CPh_fromTarget_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3514 new TH1D(
"CPh_fromPions_Pt_reco_all_Both",
3515 "CPh_fromPions_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3521 new TH1D(
"CPh_fromEtas_Pt_reco_all_Both",
3522 "CPh_fromEtas_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3528 new TH1D(
"CPh_fromDalitz_Pt_reco_all_Both",
3529 "CPh_fromDalitz_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3535 new TH1D(
"CPh_fromXi_Pt_reco_all_Both",
3536 "CPh_fromXi_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3542 new TH1D(
"CPh_fromOther_Pt_reco_all_Both",
3543 "CPh_fromOther_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3549 new TH1D(
"CPh_twoFromTarget_Pt_reco_all_Both",
3550 "CPh_twoFromTarget_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3556 new TH1D(
"CPh_fromCombinatorial_Pt_reco_all_Both",
3557 "CPh_fromCombinatorial_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3563 new TH1D(
"CPh_fromConversion_Pt_reco_all_Both",
3564 "CPh_fromConversion_Pt_reco_all_Both; P_{t} in GeV/c^{2};#",
3570 new TH2D(
"CPh_pt_vs_rap_est_all_Both",
3571 "CPh_pt_vs_rap_est_all_Both; rapidity y; p_{t} in GeV/c ",
3580 new TH2D(
"CPh_pt_vs_rap_est_corr_all_Both",
3581 "CPh_pt_vs_rap_est_corr_all_Both; rapidity y; p_{t} in GeV/c ",
3592 new TH1D(
"CDP_InvMassReco_two_Both",
3593 "CDP_InvMassReco_two_Both; invariant mass in GeV/c^{2};#",
3599 new TH1D(
"CDP_OpeningAngleReco_two_Both",
3600 "CDP_OpeningAngleReco_two_Both; angle [deg];#",
3606 new TH1D(
"CDP_Pdg_two_Both",
"CDP_Pdg_two_Both; Id;#", 1000, -10, 490);
3609 "CDP_P_reco_two_Both",
"CDP_P_reco_two_Both; P in GeV/c^{2};#", 200, 0, 10);
3612 "CDP_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3618 new TH1D(
"CPh_fromTarget_Pt_reco_two_Both",
3619 "CPh_fromTarget_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3625 new TH1D(
"CPh_fromPions_Pt_reco_two_Both",
3626 "CPh_fromPions_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3632 new TH1D(
"CPh_fromEtas_Pt_reco_two_Both",
3633 "CPh_fromEtas_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3639 new TH1D(
"CPh_fromDalitz_Pt_reco_two_Both",
3640 "CPh_fromDalitz_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3646 new TH1D(
"CPh_fromXi_Pt_reco_two_Both",
3647 "CPh_fromXi_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3653 new TH1D(
"CPh_fromOther_Pt_reco_two_Both",
3654 "CPh_fromOther_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3660 new TH1D(
"CPh_twoFromTarget_Pt_reco_two_Both",
3661 "CPh_twoFromTarget_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3667 new TH1D(
"CPh_fromCombinatorial_Pt_reco_two_Both",
3668 "CPh_fromCombinatorial_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3674 new TH1D(
"CPh_fromConversion_Pt_reco_two_Both",
3675 "CPh_fromConversion_Pt_reco_two_Both; P_{t} in GeV/c^{2};#",
3681 new TH2D(
"CPh_pt_vs_rap_est_two_Both",
3682 "CPh_pt_vs_rap_est_two_Both; rapidity y; p_{t} in GeV/c ",
3691 new TH2D(
"CPh_pt_vs_rap_est_corr_two_Both",
3692 "CPh_pt_vs_rap_est_corr_two_Both; rapidity y; p_{t} in GeV/c ",
3703 new TH1D(
"CDP_InvMassReco_onetwo_Both",
3704 "CDP_InvMassReco_onetwo_Both; invariant mass in GeV/c^{2};#",
3710 new TH1D(
"CDP_OpeningAngleReco_onetwo_Both",
3711 "CDP_OpeningAngleReco_onetwo_Both; angle [deg];#",
3717 "CDP_Pdg_onetwo_Both",
"CDP_Pdg_onetwo_Both; Id;#", 1000, -10, 490);
3720 "CDP_P_reco_onetwo_Both; P in GeV/c^{2};#",
3726 new TH1D(
"CDP_Pt_reco_onetwo_Both",
3727 "CDP_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3733 new TH1D(
"CPh_fromTarget_Pt_reco_onetwo_Both",
3734 "CPh_fromTarget_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3740 new TH1D(
"CPh_fromPions_Pt_reco_onetwo_Both",
3741 "CPh_fromPions_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3747 new TH1D(
"CPh_fromEtas_Pt_reco_onetwo_Both",
3748 "CPh_fromEtas_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3754 new TH1D(
"CPh_fromDalitz_Pt_reco_onetwo_Both",
3755 "CPh_fromDalitz_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3761 new TH1D(
"CPh_fromXi_Pt_reco_onetwo_Both",
3762 "CPh_fromXi_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3768 new TH1D(
"CPh_fromOther_Pt_reco_onetwo_Both",
3769 "CPh_fromOther_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3775 new TH1D(
"CPh_twoFromTarget_Pt_reco_onetwo_Both",
3776 "CPh_twoFromTarget_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3782 new TH1D(
"CPh_fromCombinatorial_Pt_reco_onetwo_Both",
3783 "CPh_fromCombinatorial_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3790 new TH1D(
"CPh_fromConversion_Pt_reco_onetwo_Both",
3791 "CPh_fromConversion_Pt_reco_onetwo_Both; P_{t} in GeV/c^{2};#",
3797 new TH2D(
"CPh_pt_vs_rap_est_onetwo_Both",
3798 "CPh_pt_vs_rap_est_onetwo_Both; rapidity y; p_{t} in GeV/c ",
3807 new TH2D(
"CPh_pt_vs_rap_est_corr_onetwo_Both",
3808 "CPh_pt_vs_rap_est_corr_onetwo_Both; rapidity y; p_{t} in GeV/c ",
3819 new TH1D(
"CDP_EMT_Pt_all_Target",
3820 "CDP_EMT_Pt_all_Target; P_{t} in GeV/c^{2};#",
3826 new TH1D(
"CDP_EMT_Pt_two_Target",
3827 "CDP_EMT_Pt_two_Target; P_{t} in GeV/c^{2};#",
3833 new TH1D(
"CDP_EMT_Pt_onetwo_Target",
3834 "CDP_EMT_Pt_onetwo_Target; P_{t} in GeV/c^{2};#",
3842 new TH1D(
"CDP_EMT_Pt_all_Outside",
3843 "CDP_EMT_Pt_all_Outside; P_{t} in GeV/c^{2};#",
3849 new TH1D(
"CDP_EMT_Pt_two_Outside",
3850 "CDP_EMT_Pt_two_Outside; P_{t} in GeV/c^{2};#",
3856 new TH1D(
"CDP_EMT_Pt_onetwo_Outside",
3857 "CDP_EMT_Pt_onetwo_Outside; P_{t} in GeV/c^{2};#",
3865 "CDP_EMT_Pt_all_Both; P_{t} in GeV/c^{2};#",
3871 "CDP_EMT_Pt_two_Both; P_{t} in GeV/c^{2};#",
3877 new TH1D(
"CDP_EMT_Pt_onetwo_Both",
3878 "CDP_EMT_Pt_onetwo_Both; P_{t} in GeV/c^{2};#",
3887 new TH1D(
"CDP_LK_EMT_Pt_all_Target",
3888 "CDP_LK_EMT_Pt_all_Target; P_{t} in GeV/c^{2};#",
3894 new TH1D(
"CDP_LK_EMT_Pt_two_Target",
3895 "CDP_LK_EMT_Pt_two_Target; P_{t} in GeV/c^{2};#",
3901 new TH1D(
"CDP_LK_EMT_Pt_onetwo_Target",
3902 "CDP_LK_EMT_Pt_onetwo_Target; P_{t} in GeV/c^{2};#",
3911 new TH1D(
"CDP_LK_EMT_Pt_all_Outside",
3912 "CDP_LK_EMT_Pt_all_Outside; P_{t} in GeV/c^{2};#",
3918 new TH1D(
"CDP_LK_EMT_Pt_two_Outside",
3919 "CDP_LK_EMT_Pt_two_Outside; P_{t} in GeV/c^{2};#",
3925 new TH1D(
"CDP_LK_EMT_Pt_onetwo_Outside",
3926 "CDP_LK_EMT_Pt_onetwo_Outside; P_{t} in GeV/c^{2};#",
3935 new TH1D(
"CDP_LK_EMT_Pt_all_Both",
3936 "CDP_LK_EMT_Pt_all_Both; P_{t} in GeV/c^{2};#",
3942 new TH1D(
"CDP_LK_EMT_Pt_two_Both",
3943 "CDP_LK_EMT_Pt_two_Both; P_{t} in GeV/c^{2};#",
3949 new TH1D(
"CDP_LK_EMT_Pt_onetwo_Both",
3950 "CDP_LK_EMT_Pt_onetwo_Both; P_{t} in GeV/c^{2};#",