26 std::string ntupName(
"SiPixel");
34 ntupName =
"SiITkPixel";
46 ntupName =
"SiITkStrip";
62 return StatusCode::FAILURE;
69 float bin_down = -600;
71 float radius_up = 600;
72 float radius_down = 200;
79 }
else if (
detName ==
"ITkPixel") {
85 }
else if (
detName ==
"ITkStrip") {
116 m_h_xy =
new TH2D((
"h_"+
detName+
"_xy").c_str(), (
"h_"+
detName+
"_xy").c_str(), 100,bin_down,bin_up,100, bin_down, bin_up);
119 m_h_zr =
new TH2D((
"h_"+
detName+
"_zr").c_str(), (
"h_"+
detName+
"_zr").c_str(), 100,-z_max, z_max, 100, radius_down, radius_up);
137 m_h_z_eloss =
new TH2D((
"h_"+
detName+
"_z_eloss").c_str(), (
"h_"+
detName+
" Eloss vs. z").c_str(),100, -z_max,z_max,100,0,50);
140 m_h_r_eloss =
new TH2D((
"h_"+
detName+
"_r_eloss").c_str(), (
"h_"+
detName+
" Eloss vs. r").c_str(),100, radius_down,radius_down,100,0,50);
181 if (
detName.find(
"ITk") != std::string::npos) {
182 std::string xy_name =
"h_ITk_xy";
183 auto xy = std::make_unique<TH2D>(xy_name.c_str(), xy_name.c_str(), 2200, -1100, 1100, 2200, -1100, 1100);
187 std::string zr_name =
"h_ITk_zr";
188 auto zr = std::make_unique<TH2D>(zr_name.c_str(), zr_name.c_str(), 6800, -3400, 3400, 1100, 0, 1100);
194 m_tree =
new TTree(ntupName.c_str(), ntupName.c_str());
229 return StatusCode::SUCCESS;
263 for (
const SiHit &hit : *hitCollection) {
280 double step_length = (hit.localStartPosition() - hit.localEndPosition()).
mag();
286 if (hit.getBarrelEndcap() == 0) {
308 const auto& HMPL = hit.particleLink();
309 if (HMPL.isValid()) {
310 auto part = HMPL.cptr();
337 return StatusCode::FAILURE;
342 return StatusCode::SUCCESS;