File indexing completed on 2025-08-03 08:12:42
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include "EMCalTrk.h"
0012 #include <cmath>
0013
0014 using namespace std;
0015
0016 ClassImp(EMCalTrk)
0017
0018 EMCalTrk::EMCalTrk()
0019 {
0020 Reset();
0021 }
0022
0023 EMCalTrk::~EMCalTrk()
0024 {
0025
0026 }
0027
0028 void
0029 EMCalTrk::Reset()
0030 {
0031
0032 for (int ieta = 0; ieta < Max_N_Tower; ++ieta)
0033 {
0034 for (int iphi = 0; iphi < Max_N_Tower; ++iphi)
0035 {
0036 cemc_ieta[ieta][iphi] = -9999;
0037 cemc_iphi[ieta][iphi] = -9999;
0038 hcalin_ieta[ieta][iphi] = -9999;
0039 hcalin_iphi[ieta][iphi] = -9999;
0040 cemc_energy[ieta][iphi] = -0;
0041 hcalin_energy[ieta][iphi] = -0;
0042 cemc_radius[ieta][iphi] = 9999;
0043 hcalin_radius[ieta][iphi] = 9999;
0044 }
0045 }
0046
0047 trackID = -1;
0048 charge = -999;
0049 quality = NAN;
0050 chisq = NAN;
0051 ndf = NAN;
0052 nhits = NAN;
0053 layers = 0;
0054
0055 dca2d = NAN;
0056 dca2dsigma = NAN;
0057 px = NAN;
0058 py = NAN;
0059 pz = NAN;
0060 pcax = NAN;
0061 pcay = NAN;
0062 pcaz = NAN;
0063
0064 presdphi = NAN;
0065 presdeta = NAN;
0066 prese3x3 = NAN;
0067 prese = NAN;
0068
0069 cemcdphi = NAN;
0070 cemcdeta = NAN;
0071 cemce3x3 = NAN;
0072 cemce = NAN;
0073
0074 hcalindphi = NAN;
0075 hcalindeta = NAN;
0076 hcaline3x3 = NAN;
0077 hcaline = NAN;
0078
0079 hcaloutdphi = NAN;
0080 hcaloutdeta = NAN;
0081 hcaloute3x3 = NAN;
0082 hcaloute = NAN;
0083
0084 gtrackID = -1;
0085 gflavor = -1;
0086 ng4hits = -1;
0087 gpx = NAN;
0088 gpy = NAN;
0089 gpz = NAN;
0090 gvx = NAN;
0091 gvy = NAN;
0092 gvz = NAN;
0093 gfpx = NAN;
0094 gfpy = NAN;
0095 gfpz = NAN;
0096 gfx = NAN;
0097 gfy = NAN;
0098 gfz = NAN;
0099 gembed = -1;
0100
0101 nfromtruth = -1;
0102
0103 ll_ep_e = NAN;
0104 ll_ep_h = NAN;
0105
0106 ll_edep_e = NAN;
0107 ll_edep_h = NAN;
0108
0109 ll_shape_e = NAN;
0110 ll_shape_h = NAN;
0111
0112 cemc_sum_energy = 0;
0113 cemc_sum_n_tower = 0;
0114 hcalin_sum_energy = 0;
0115 hcalin_sum_n_tower = 0;
0116
0117 }
0118
0119 void
0120 EMCalTrk::Clear(Option_t *option)
0121 {
0122 PHObject::Clear(option);
0123
0124 Reset();
0125 }
0126
0127
0128 double
0129 EMCalTrk::get_ep() const
0130 {
0131 const double p2 = px * px + py * py + pz * pz;
0132 return cemc_sum_energy / sqrt(p2);
0133 }