38 for (
unsigned int j=0; j<8; j++) {
45 _TH2D(
m_E_layer_sum_h[j],(
"edep_per_layer_detector_no."+s.str()).c_str(), 100, 0., 0.5, 22, 0., 21.);
48 _TH2D(
m_hit_map_h[j],(
"hitmap_det_no."+s.str()).c_str(), 22, 0., 21., 66, 0., 65.);
52 return StatusCode::SUCCESS;
57 int fiber, plate,
sign, station;
59 double E_fiber_sum[8][10][64][2];
61 double E_layer_sum[8][20];
64 const int station_max{8};
65 const int plate_max{10};
66 const int fiber_max{64};
68 for (
int l = 0; l < station_max; l++ ) {
70 for (
int i = 0; i < plate_max; i++ ) {
71 E_layer_sum[l][i] = 0.;
72 E_layer_sum[l][i+plate_max] = 0.;
73 for (
int j = 0; j < fiber_max; j++ ) {
74 for (
int k = 0; k < 2; k++ ) {
75 E_fiber_sum[l][i][j][k] = 0.;
83 CHECK( evtStore()->retrieve(coll_handle,
"ALFA_HitCollection") );
86 for (
const ALFA_Hit& hit : *coll_handle) {
88 station = hit.GetStationNumber();
89 plate = hit.GetPlateNumber();
90 fiber = hit.GetFiberNumber();
91 sign = hit.GetSignFiber();
94 m_E_gvs->Fill(station,(hit.GetEnergyDeposit()));
97 E_fiber_sum[station-1][plate-1][fiber-1][(1-
sign)/2] += (hit.GetEnergyDeposit());
100 for (
int l = 0; l < station_max; l++ ) {
101 for (
int i = 0; i < plate_max; i++ ){
102 for (
int j = 0; j < fiber_max; j++ ) {
103 for (
int k = 0; k < 2; k++ ) {
104 E_full_sum[l] += E_fiber_sum[l][i][j][k];
105 E_layer_sum[l][2*i+k] += E_fiber_sum[l][i][j][k];
106 if (E_fiber_sum[l][i][j][k] > 0.) {
114 for (
int l = 0; l < station_max; l++ ) {
116 for (
int i = 0; i < 2*plate_max; i++ ) {
121 return StatusCode::SUCCESS;
#define _TH2D(var, name, nbinx, xmin, xmax, nbiny, ymin, ymax)