73 for (
int i = 0; i < 4; i++) {
74 h_dia_rate[i] =
new TH1F(TString::Format(
"dia_rate_%d", i),
"Count", 8, 0., 8.);
77 for (
int i = 0; i < 2; i++) {
78 h_dia_rs_rate[i] =
new TH2F(TString::Format(
"dia_rs_rate_%d", i),
"Count vs ring section", 8, 0., 8., 12, 0., 12.);
82 for (
int i = 0; i < 8; i++) {
83 h_dia_doseWeight[i] =
new TH1F(TString::Format(
"dia_doseWeight_%d", i),
"", 10000, 0., 10000.);
84 h_dia_amp[i] =
new TH1F(TString::Format(
"dia_amp_%d", i),
"", 10000, 0., 10000.);
85 h_dia_time[i] =
new TH1F(TString::Format(
"dia_time_%d", i),
"", 1000, 0., 100.);
86 h_dia_vtime[i] =
new TH1F(TString::Format(
"dia_vtime_%d", i),
"", 1000, 0., 100.);
87 h_dia_idose[i] =
new TH1F(TString::Format(
"dia_idose_%d", i),
"", 10000, 0., 10000.);
88 h_dia_idoseWeight[i] =
new TH1F(TString::Format(
"dia_idoseWeight_%d", i),
"", 10000, 0., 10000.);
89 h_dia_rs_idose[i] =
new TH2F(TString::Format(
"dia_rs_idose_%d", i),
"", 10000, 0., 10000., 12, 0., 12.);
90 h_dia_rs_idoseWeight[i] =
new TH2F(TString::Format(
"dia_rs_idoseWeight_%d", i),
"", 10000, 0., 10000., 12, 0., 12.);
91 h_dia_iamp[i] =
new TH1F(TString::Format(
"dia_iamp_%d", i),
"", 10000, 0., 10000.);
92 h_dia_itime[i] =
new TH1F(TString::Format(
"dia_itime_%d", i),
"", 1000, 0., 100.);
93 h_dia_ivtime[i] =
new TH1F(TString::Format(
"dia_ivtime_%d", i),
"", 1000, 0., 100.);
94 h_dia_Amp[i] =
new TH1F(TString::Format(
"dia_Amp_%d", i),
"", 100000, 0., 100000.);
95 h_dia_edep[i] =
new TH1F(TString::Format(
"dia_edep_%d", i),
"", 4000, 0., 4000.);
117 for (
int i = 0; i < 8; i++) {
132 int ring_section = -1;
133 const int section_ordering[12] = {1, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2};
134 for (
const auto& MetaHit : MetaHits) {
135 rate = MetaHit.getrate();
136 double sad_ssraw = MetaHit.getssraw();
138 if (sad_ssraw >= 0) ssraw = sad_ssraw / 100.;
139 else ssraw = 3000. + sad_ssraw / 100.;
141 ring_section = section_ordering[(int)((ssraw) / 250.)] - 1;
145 for (
const auto& SimHit : SimHits) {
146 int detNb = SimHit.getCellId();
148 double edep = SimHit.getEnergyDep();
149 double time = SimHit.getFlightTime();
152 int NbEle = (int)gRandom->Gaus(meanEl, sigma);
153 double Amp = NbEle / (6.25 * 1e18);
166 for (
int i = 0; i < 4; i++) {
167 if (curr[i] > 0 && Edep[i] > 0) {
173 for (
const auto&
Hit : Hits) {
174 int detNb =
Hit.getdetNb();
175 double edep =
Hit.getedep();
176 double current =
Hit.getI();
177 double time =
Hit.gettime();
void addParam(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module.