Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-12-17 09:21:21

0001 #ifndef QAKFPARTICLETRACKPTASYMMETRY_H
0002 #define QAKFPARTICLETRACKPTASYMMETRY_H
0003 
0004 #include <string>
0005 #include <vector>
0006 
0007 class KFParticle;
0008 class SvtxTrackMap;
0009 class Fun4AllHistoManager;
0010 class TH1;
0011 class TH2;
0012 
0013 class QAKFParticleTrackPtAsymmetry
0014 {
0015  public:
0016   QAKFParticleTrackPtAsymmetry(const std::string &histo_prefix,                                                                       //
0017                                double min_m = 0.4,                                                                                    //
0018                                double max_m = 0.6,                                                                                    //
0019                                const std::vector<double> &mother_eta_bins = std::vector<double>{-2.0, -1.0, -0.5, 0, 0.5, 1.0, 2.0},  //
0020                                const std::vector<double> &mother_phi_bins = std::vector<double>{-3.15, -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.15});
0021 
0022   void bookHistograms(Fun4AllHistoManager *hm);
0023 
0024   void analyzeTrackPtAsymmetry(SvtxTrackMap *trackMap, KFParticle *mother);
0025 
0026   void setVerbosity(int verb) { m_verbosity = verb; }
0027 
0028  protected:
0029  private:
0030   int m_verbosity{0};
0031   std::string m_prefix;
0032   double m_min_mass{0.4};  // default to Kshort mass window
0033   double m_max_mass{0.6};  // default to Kshort mass window
0034   // mother eta and phi bins
0035   std::vector<double> m_mother_eta_bins{-2.0, -1.0, -0.5, 0, 0.5, 1.0, 2.0};                                       // default bins
0036   std::vector<double> m_mother_phi_bins{-3.15, -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.15};  // default bins
0037 
0038   // basic histograms
0039   TH1 *h_trackPtAsymmetry{nullptr};
0040   TH2 *h2_trackPtAsymmetry_vs_mass{nullptr};
0041   // differential histograms in (eta, phi) bins
0042   std::vector<std::vector<TH2 *>> h2_trackPtAsymmetry_eta_phi_bins;
0043 };
0044 
0045 #endif  // QAKFPARTICLETRACKPTASYMMETRY_H