Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:11:20

0001 #include "TObject.h"
0002 #include "TH2F.h"
0003 #include "TProfile.h"
0004 
0005 struct Beamspot : TObject
0006 {
0007   double x;
0008   double y;
0009   double z;
0010   double sigma_x;
0011   double sigma_y;
0012   double sigma_z;
0013   double xy_correlation;
0014 
0015   double covariance[21];
0016   double dzdx;
0017   double dzdy;
0018   double zwidth;
0019 
0020   int Ntracklets;
0021   TH2F* d0phi0dist;
0022   TH2F* d0phi0dist_bkgrm;
0023   TProfile* d0phi0dist_bkgrm_prof;
0024   TH1F* z0dist;
0025   TH2F* pcadist;
0026 
0027   Beamspot() : x(0.),y(0.),z(0.),sigma_x(0.),sigma_y(0.),sigma_z(0.),Ntracklets(0.)
0028   {
0029     for(int i=0;i<21;i++) covariance[i] = 1.;
0030     d0phi0dist = new TH2F("d0phi0dist","tracklet phi0 vs. d0;#phi [radian];DCA [cm]",200,-M_PI,M_PI,200,-1.,1.);
0031     z0dist = new TH1F("z0","z0",200,-40.,40.);
0032     pcadist = new TH2F("pcadist","PCA",200,-.5,.5,200,-.5,.5);
0033   }
0034 
0035   void identify()
0036   {
0037     std::cout << "Beamspot: " << std::endl;
0038     std::cout << "(x,y,z) = (" << x << " +- " << sigma_x << ", " << y << " +- " << sigma_y << ", " << z << " +- " << sigma_z << ")" << std::endl;
0039     std::cout << "Ntracklets: " << Ntracklets << std::endl;
0040   }
0041 };