Go to the documentation of this file. 1 #ifndef CBM_KRES_CONVERSION_CORRECTED_PHOTONS
2 #define CBM_KRES_CONVERSION_CORRECTED_PHOTONS
10 #include "KFParticle.h"
12 #include <TClonesArray.h>
33 void Init(
double OA,
double IM);
34 void InitHistograms();
37 void Exec(
int fEventNumDP,
38 double OpeningAngleCut,
39 double GammaInvMassCut,
59 int FindInRich(
int richInd,
int stsMcTrackId);
61 int CheckIfElectron(
CbmRichRing* ring,
double momentum);
63 std::vector<TVector3> SaveAllHits(
CbmStsTrack* track);
65 void FindGammasTarget(
int EventNumMan,
69 vector<CbmMCTrack*> MCtracks_minus,
70 vector<CbmMCTrack*> MCtracks_plus,
71 vector<CbmStsTrack*> StsTrack_minus,
72 vector<CbmStsTrack*> StsTrack_plus,
73 vector<TVector3> Momenta_minus,
74 vector<TVector3> Momenta_plus,
75 std::vector<int> Rings_minus,
76 std::vector<int> Rings_plus,
77 std::vector<int> stsIndex_minus,
78 std::vector<int> stsIndex_plus,
79 vector<CbmRichRing*> richRing_minus,
80 vector<CbmRichRing*> richRing_plus);
82 void FindGammasOutside(
int EventNumMan,
86 vector<CbmMCTrack*> MCtracks_minus_Outside,
87 vector<CbmMCTrack*> MCtracks_plus_Outside,
88 vector<CbmStsTrack*> StsTrack_minus_Outside,
89 vector<CbmStsTrack*> StsTrack_plus_Outside,
90 std::vector<int> Rings_minus_Outside,
91 std::vector<int> Rings_plus_Outside,
92 std::vector<int> stsIndex_minus_Outside,
93 std::vector<int> stsIndex_plus_Outside,
94 vector<CbmRichRing*> richRing_minus_Outside,
95 vector<CbmRichRing*> richRing_plus_Outside);
98 double CalculatePlaneAngle_last_fromHits(std::vector<TVector3> track_1,
99 std::vector<TVector3> track_2);
105 void CDP_likesign_Mixing_Target(
double AngleCut,
double InvMassCut);
107 void CDP_likesign_Mixing_Outside(
double AngleCut,
double InvMassCut);
109 void CDP_Mixing_Target(
double AngleCut,
double InvMassCut);
111 void CDP_Mixing_Outside(
double AngleCut,
double InvMassCut);
TH1D * CPh_twoFromTarget_Pt_reco_two_Target
TH1D * CDP_P_reco_two_Outside
std::vector< int > CDP_LK_EMT_STS_plus_index_Target
vector< CbmMCTrack * > VMCtracks_plus_Target
vector< TH1 * > fHistoList_dp_two_Both
std::vector< int > VRings_plus_Outside
std::vector< int > VStsIndex_minus_Target
std::vector< int > CDP_EMT_Event_minus_Target
TH2D * CPh_pt_vs_rap_est_corr_onetwo_Outside
vector< TH1 * > fHistoList_dp_Target
TH1D * CDP_Pdg_onetwo_Both
vector< TVector3 > VMomenta_plus_Target
TH1D * CDP_P_reco_two_Both
TH2D * CPh_pt_vs_rap_est_two_Both
std::vector< int > CDP_LK_EMT_STS_minus_index_Target
TH1D * CDP_Pt_reco_all_Target
TH1D * CDP_Pdg_all_Outside
TH1D * CPh_fromPions_Pt_reco_onetwo_Both
vector< CbmRichRing * > VRichRing_plus_Target
vector< CbmMCTrack * > VMCtracks_plus_Outside
TH1D * CDP_Pdg_all_Target
TH1D * CDP_candidates_PlaneAngles_last_Target
TH2D * CPh_pt_vs_rap_est_corr_all_Both
TH2D * CDP_candidates_InvMass_vs_OA_Target
TH1D * CDP_P_reco_all_Target
TH1D * CPh_fromEtas_Pt_reco_all_Target
TH1D * CGrandMother_PDG_Outside
TH1D * CPh_fromTarget_Pt_reco_all_Both
TClonesArray * fArrayStsHit
Here the ring is fitted with Taubin algorithm from A. Ayriyan, G. Ososkov, N. Chernov.
TH2D * CPh_pt_vs_rap_est_two_Outside
std::vector< std::vector< double > > corr_all
TH1D * CDP_LK_EMT_Pt_two_Both
TH2D * CDP_candidates_InvMass_vs_OA_Both
TH1D * CPh_fromXi_Pt_reco_onetwo_Both
TH1D * CDP_PlaneAngles_first_Both
TH1D * CPh_fromOther_Pt_reco_two_Target
std::vector< std::vector< TVector3 > > CDP_EMT_Hits_plus_Outside
TH1D * CPh_fromTarget_Pt_reco_all_Outside
Here the ring is fitted with Taubin algorithm from A. Ayriyan, G. Ososkov, N. Chernov.
std::vector< CbmStsTrack * > CDP_EMT_momenta_plus_Outside
TClonesArray * fStsTracks
TH2D * CDP_candidates_InvMass_vs_OA_Outside
TH1D * CDP_Pt_reco_two_Target
TH1D * CDP_InvMassReco_all_Outside
std::vector< int > CDP_EMT_NofRings_minus_Outside
std::vector< int > VStsIndex_plus_Target
TH1D * CPh_fromDalitz_Pt_reco_two_Both
vector< TH1 * > fHistoList_dp_two_Target
TH1D * CGrandMother_PDG_Target
TH1D * CPh_fromDalitz_Pt_reco_all_Outside
TH1D * CPh_twoFromTarget_Pt_reco_two_Both
TH1D * CPh_fromDalitz_Pt_reco_all_Both
std::vector< CbmStsTrack * > CDP_EMT_momenta_minus_Outside
TH1D * CDP_EMT_Pt_onetwo_Target
TH1D * CPh_fromTarget_Pt_reco_onetwo_Outside
TH1D * CPh_fromOther_Pt_reco_two_Both
TH2D * CPh_pt_vs_rap_est_corr_two_Both
TH2D * CPh_pt_vs_rap_est_all_Both
TH1D * CDP_OpeningAngleReco_onetwo_Target
TH1D * CDP_EMT_Pt_all_Target
TH1D * CPh_fromDalitz_Pt_reco_onetwo_Target
TH1D * CDP_candidates_OA_Outside
vector< TH1 * > fHistoList_dp_cuts_Both
TH1D * CPh_fromConversion_Pt_reco_two_Outside
TH1D * CPh_fromConversion_Pt_reco_all_Target
TH1D * CPh_fromOther_Pt_reco_two_Outside
vector< TVector3 > VMomenta_minus_Target
TH1D * CPh_fromEtas_Pt_reco_all_Both
TClonesArray * fRichProjections
TH1D * CPh_fromTarget_Pt_reco_all_Target
TH1D * CPh_fromPions_Pt_reco_all_Outside
TH1D * CDP_P_reco_all_Both
std::vector< int > CDP_EMT_NofRings_plus_Target
std::vector< int > CDP_EMT_Event_minus_Outside
TH1D * CPh_fromPions_Pt_reco_two_Target
TH1D * CDP_InvMassReco_two_Target
TH1D * CPh_fromEtas_Pt_reco_onetwo_Both
vector< TH1 * > fHistoList_dp_cuts_Outside
TH1D * CDP_P_reco_two_Target
TH1D * CDP_Pdg_onetwo_Target
vector< CbmStsTrack * > VStsTrack_minus_Target
std::vector< TVector3 > CDP_LK_EMT_momenta_plus_Target
TClonesArray * fRichRings
TH1D * CDP_Pt_reco_two_Outside
TH2D * CPh_pt_vs_rap_est_onetwo_Outside
TH1D * CDP_OpeningAngleReco_two_Target
TH1D * CPh_fromCombinatorial_Pt_reco_two_Outside
vector< TH1 * > fHistoList_dp_two_Outside
vector< TH1 * > fHistoList_dp_Outside
TH1D * CDP_InvMassReco_all_Target
TH1D * CPh_fromCombinatorial_Pt_reco_onetwo_Outside
TH1D * CDP_candidates_PlaneAngles_first_Both
TH1D * CPh_fromOther_Pt_reco_onetwo_Outside
std::vector< int > CDP_EMT_NofRings_plus_Outside
TH1D * CDP_candidates_PlaneAngles_last_Outside
std::vector< std::vector< TVector3 > > CDP_EMT_Hits_plus_Target
TH1D * CDP_PlaneAngles_first_Outside
TH1D * CPh_twoFromTarget_Pt_reco_onetwo_Outside
TH1D * CDP_LK_EMT_Pt_onetwo_Outside
vector< CbmRichRing * > VRichRing_plus_Outside
TH1D * CDP_EMT_Pt_onetwo_Both
TH1D * CPh_fromCombinatorial_Pt_reco_two_Both
TH2D * CPh_pt_vs_rap_est_all_Outside
TH1D * CPh_twoFromTarget_Pt_reco_onetwo_Target
TH1D * CPh_fromDalitz_Pt_reco_two_Outside
TH1D * CPh_fromXi_Pt_reco_onetwo_Outside
std::vector< int > CDP_EMT_Event_plus_Outside
TH1D * CDP_Pt_reco_two_Both
TH1D * CPh_fromXi_Pt_reco_all_Target
TH1D * CPh_fromPions_Pt_reco_all_Target
TH1D * CDP_OpeningAngleReco_all_Outside
std::vector< std::vector< TVector3 > > CDP_EMT_Hits_minus_Outside
TH1D * CPh_fromConversion_Pt_reco_two_Both
TH1D * CDP_InvMassReco_two_Outside
vector< CbmMCTrack * > VMCtracks_minus_Outside
vector< CbmRichRing * > VRichRing_minus_Outside
TH1D * CPh_fromEtas_Pt_reco_two_Both
TH1D * CDP_InvMass_Outside
TH2D * CPh_pt_vs_rap_est_corr_two_Outside
TH1D * CPh_fromConversion_Pt_reco_onetwo_Outside
Data class for STS tracks.
CbmRichRingFitterEllipseTau * fTauFit
TH2D * CPh_pt_vs_rap_est_corr_all_Target
TH1D * CPh_fromEtas_Pt_reco_all_Outside
std::vector< TVector3 > CDP_EMT_momenta_plus_Target
TH1D * CPh_fromXi_Pt_reco_two_Outside
TH1D * CDP_AnnTruePairs_AfterCuts
TH1D * CPh_fromXi_Pt_reco_two_Both
std::vector< KFParticle > CDP_EMT_KFTrack_minus_Outside
TH1D * CDP_PlaneAngles_last_Target
TH1D * CDP_PlaneAngles_last_Both
std::vector< std::vector< TVector3 > > CDP_EMT_Hits_minus_Target
TH1D * CDP_EMT_Pt_two_Both
TH1D * CPh_fromCombinatorial_Pt_reco_onetwo_Target
TH1D * CDP_EMT_Pt_all_Both
std::vector< std::vector< double > > corr_two
TH1D * CPh_fromOther_Pt_reco_onetwo_Both
TH1D * CDP_LK_EMT_Pt_two_Target
std::vector< int > CDP_LK_EMT_STS_minus_index_Outside
TH1D * CDP_LK_EMT_Pt_onetwo_Target
TH1D * CDP_InvMassReco_two_Both
TH1D * CDP_candidates_InvMass_Outside
TH1D * CDP_InvMassReco_onetwo_Both
std::vector< KFParticle > CDP_EMT_KFTrack_plus_Outside
TH1D * CPh_fromPions_Pt_reco_two_Both
std::vector< int > CDP_LK_EMT_NofRings_minus_Target
TClonesArray * fStsTrackMatches
vector< TH1 * > fHistoList_dp_all_Outside
TH2D * CDP_InvMass_vs_OA_Outside
TH1D * CDP_candidates_PlaneAngles_last_Both
std::vector< std::vector< double > > corr_onetwo
TH1D * CDP_Pt_reco_onetwo_Both
TH1D * CPh_fromPions_Pt_reco_onetwo_Target
TH2D * CPh_pt_vs_rap_est_corr_onetwo_Both
TH1D * CDP_PlaneAngles_last_Outside
TH1D * CDP_P_reco_onetwo_Outside
TH1D * CDP_LK_EMT_Pt_all_Outside
TH1D * CMother_PDG_Outside
TH1D * CPh_fromTarget_Pt_reco_two_Target
TH2D * CP_vs_Distance_for_dp
TH1D * CDP_OpeningAngleReco_two_Outside
TH1D * CPh_fromEtas_Pt_reco_two_Outside
std::vector< int > CDP_EMT_Event_plus_Target
TH1D * CPh_fromEtas_Pt_reco_two_Target
TH1D * CDP_InvMassReco_all_Both
TH1D * CPh_twoFromTarget_Pt_reco_all_Both
TH2D * CPh_pt_vs_rap_est_corr_two_Target
TH1D * CDP_EMT_Pt_two_Target
std::vector< int > CDP_LK_EMT_NofRings_plus_Outside
vector< CbmMCTrack * > VMCtracks_minus_Target
TH1D * CPh_fromCombinatorial_Pt_reco_all_Outside
TH1D * CDP_Pt_reco_onetwo_Target
TH1D * CPh_fromEtas_Pt_reco_onetwo_Target
CbmKresConversionCorrectedPhotons operator=(const CbmKresConversionCorrectedPhotons &)
TH1D * CDP_P_reco_onetwo_Both
vector< TH1 * > fHistoList_dp_all_Target
TH1D * CPh_fromTarget_Pt_reco_onetwo_Both
TH1D * CDP_EMT_Pt_two_Outside
TH1D * CDP_AnnFalsePairs_AfterCuts
vector< TH1 * > fHistoList_dp_onetwo_Both
TH1D * CPh_fromCombinatorial_Pt_reco_all_Both
vector< CbmRichRing * > VRichRing_minus_Target
std::vector< CbmStsTrack * > CDP_LK_EMT_STS_plus_Outside
TH1D * CDP_OpeningAngleReco_onetwo_Outside
TH1D * CDP_LK_EMT_Pt_all_Both
std::vector< CbmStsTrack * > CDP_LK_EMT_STS_minus_Target
TH1D * CPh_fromConversion_Pt_reco_all_Outside
vector< TH1 * > fHistoList_dp_all_Both
TH2D * CDP_InvMass_vs_OA_Target
std::vector< int > VRings_minus_Target
std::vector< int > CDP_LK_EMT_NofRings_minus_Outside
TH1D * CPh_fromDalitz_Pt_reco_onetwo_Outside
TH1D * CPh_fromXi_Pt_reco_two_Target
std::vector< int > VStsIndex_minus_Outside
vector< TH1 * > fHistoList_dp_cuts_Target
std::vector< TVector3 > CDP_EMT_momenta_minus_Target
vector< TH1 * > fHistoList_dp_onetwo_Target
TH1D * CPh_fromCombinatorial_Pt_reco_all_Target
TH1D * CPh_fromCombinatorial_Pt_reco_onetwo_Both
std::vector< CbmStsTrack * > CDP_LK_EMT_STS_plus_Target
TH1D * CPh_twoFromTarget_Pt_reco_all_Target
TH1D * CDP_LK_EMT_Pt_two_Outside
TH2D * CDP_InvMass_vs_OA_Both
TH1D * CPh_fromTarget_Pt_reco_onetwo_Target
std::vector< CbmStsTrack * > CDP_LK_EMT_STS_minus_Outside
TH1D * CDP_PlaneAngles_first_Target
vector< TH1 * > fHistoList_dp_onetwo_Outside
std::vector< int > VRings_plus_Target
vector< CbmStsTrack * > VStsTrack_plus_Target
TH1D * CPh_fromDalitz_Pt_reco_all_Target
TH1D * CPh_fromXi_Pt_reco_all_Both
std::vector< int > VRings_minus_Outside
TH1D * CPh_fromConversion_Pt_reco_onetwo_Target
TH1D * CDP_EMT_Pt_all_Outside
TH1D * CPh_fromDalitz_Pt_reco_onetwo_Both
TH1D * CPh_fromCombinatorial_Pt_reco_two_Target
std::vector< int > CDP_LK_EMT_STS_plus_index_Outside
TH1D * CDP_EMT_Pt_onetwo_Outside
CbmKresConversionCorrectedPhotons(const CbmKresConversionCorrectedPhotons &)
TH1D * CDP_P_reco_onetwo_Target
TH1D * CPh_fromPions_Pt_reco_two_Outside
TH1D * CPh_fromConversion_Pt_reco_two_Target
vector< TH1 * > fHistoList_dp_Both
TH2D * CPh_pt_vs_rap_est_onetwo_Both
TH1D * CDP_Pt_reco_onetwo_Outside
TH1D * CPh_twoFromTarget_Pt_reco_onetwo_Both
TH1D * CPh_fromOther_Pt_reco_all_Outside
TH1D * CDP_candidates_OA_Both
CbmKresTrainAnnDirectPhotons * fTrainPhotons
TH1D * CPh_fromOther_Pt_reco_onetwo_Target
TH1D * CDP_Pdg_two_Target
TH1D * CDP_InvMassReco_onetwo_Target
vector< CbmStsTrack * > VStsTrack_plus_Outside
TClonesArray * fArrayMvdHit
TH1D * CPh_fromXi_Pt_reco_all_Outside
TH1D * CPh_fromPions_Pt_reco_all_Both
TH2D * CPh_pt_vs_rap_est_two_Target
CbmKresSelectAnnPhotons * fAnnPhotonsSelection
TH1D * CDP_OpeningAngleReco_two_Both
TH1D * CPh_fromOther_Pt_reco_all_Target
TH2D * CPh_pt_vs_rap_est_onetwo_Target
TH1D * CMother_PDG_Target
vector< CbmStsTrack * > VStsTrack_minus_Outside
TH1D * CPh_fromXi_Pt_reco_onetwo_Target
TH1D * CPh_fromConversion_Pt_reco_onetwo_Both
std::vector< TVector3 > CDP_LK_EMT_momenta_minus_Target
TH1D * CPh_twoFromTarget_Pt_reco_two_Outside
TH1D * CDP_candidates_PlaneAngles_first_Outside
TH1D * CDP_candidates_InvMass_Both
TH1D * CDP_Pdg_onetwo_Outside
TClonesArray * fGlobalTracks
TH1D * CPh_fromDalitz_Pt_reco_two_Target
TH1D * CPh_fromTarget_Pt_reco_two_Outside
TH2D * CPh_pt_vs_rap_est_corr_all_Outside
CbmKresGammaCorrection * fGammaCorrection
TH1D * CDP_Pt_reco_all_Both
TH1D * CDP_candidates_PlaneAngles_first_Target
TH1D * CDP_LK_EMT_Pt_all_Target
TH1D * CPh_twoFromTarget_Pt_reco_all_Outside
TH1D * CPh_fromEtas_Pt_reco_onetwo_Outside
TH1D * CDP_LK_EMT_Pt_onetwo_Both
TH1D * CPh_fromOther_Pt_reco_all_Both
TH1D * CPh_fromTarget_Pt_reco_two_Both
TH2D * CPh_pt_vs_rap_est_corr_onetwo_Target
TH2D * CPh_pt_vs_rap_est_all_Target
TH1D * CDP_Pdg_two_Outside
TH1D * CDP_candidates_InvMass_Target
TH1D * CDP_P_reco_all_Outside
std::vector< int > CDP_EMT_NofRings_minus_Target
TH2D * CPdg_vs_Distance_for_dp
TClonesArray * fRichRingMatches
TH1D * CDP_InvMassReco_onetwo_Outside
TH1D * CDP_OpeningAngleReco_all_Both
std::vector< int > VStsIndex_plus_Outside
TH1D * CDP_candidates_OA_Target
TH1D * CPh_fromConversion_Pt_reco_all_Both
TH1D * CDP_OpeningAngleReco_onetwo_Both
TH1D * CDP_InvMass_Target
TH1D * CDP_OpeningAngleReco_all_Target
TH1D * CPh_fromPions_Pt_reco_onetwo_Outside
std::vector< int > CDP_LK_EMT_NofRings_plus_Target
TH1D * CDP_Pt_reco_all_Outside