44 for (
unsigned int j=0; j<8; j++) {
51 _TH2D(
m_E_layer_sum_h[j],(
"edep_per_layer_detector_no."+s.str()).c_str(), 100, 0., 0.5, 22, 0., 21.);
54 _TH2D(
m_hit_map_h[j],(
"hitmap_det_no."+s.str()).c_str(), 22, 0., 21., 66, 0., 65.);
58 return StatusCode::SUCCESS;
63 int fiber{}, plate{},
sign{}, station{};
66 constexpr int station_max{8};
67 constexpr int plate_max{10};
68 constexpr int fiber_max{64};
72 auto pE_fiber_sum = std::make_unique<FiberArr>();
73 auto & E_fiber_sum = *pE_fiber_sum;
74 double E_full_sum[station_max]{};
75 double E_layer_sum[station_max][20]{};
79 CHECK( evtStore()->retrieve(coll_handle,
"ALFA_HitCollection") );
82 for (
const ALFA_Hit& hit : *coll_handle) {
84 station = hit.GetStationNumber();
85 plate = hit.GetPlateNumber();
86 fiber = hit.GetFiberNumber();
87 sign = hit.GetSignFiber();
90 m_E_gvs->Fill(station,(hit.GetEnergyDeposit()));
93 E_fiber_sum[station-1][plate-1][fiber-1][(1-
sign)/2] += (hit.GetEnergyDeposit());
96 for (
int l = 0; l < station_max; l++ ) {
97 for (
int i = 0; i < plate_max; i++ ){
98 for (
int j = 0; j < fiber_max; j++ ) {
99 for (
int k = 0; k < 2; k++ ) {
100 E_full_sum[l] += E_fiber_sum[l][i][j][k];
101 E_layer_sum[l][2*i+k] += E_fiber_sum[l][i][j][k];
102 if (E_fiber_sum[l][i][j][k] > 0.) {
110 for (
int l = 0; l < station_max; l++ ) {
112 for (
int i = 0; i < 2*plate_max; i++ ) {
117 return StatusCode::SUCCESS;
#define _TH2D(var, name, nbinx, xmin, xmax, nbiny, ymin, ymax)