Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/changes/3051.bugfix.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
Fix ``HillasIntersection`` using the ``equivalent_focal_length`` instead of the
focal length the camera geometry (and thus the Hillas parametrization) was
defined with, when reconstructing from ``CameraHillasParametersContainer``.
Using the equivalent instead of the (by default) effective focal length
introduced a plate-scale error that grows with the distance of the image from
the camera center, degrading the angular reconstruction for off-axis and
high-energy showers. ``HillasIntersection`` now uses
``camera.geometry.frame.focal_length``, consistent with ``HillasReconstructor``.
4 changes: 3 additions & 1 deletion src/ctapipe/reco/hillas_intersection.py
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,9 @@ def _predict(self, hillas_dict, array_pointing, telescopes_pointings=None):

for tel_id, hillas in hillas_dict.items():
if isinstance(hillas, CameraHillasParametersContainer):
focal_length = self.subarray.tel[tel_id].optics.equivalent_focal_length
focal_length = self.subarray.tel[
tel_id
].camera.geometry.frame.focal_length
camera_frame = CameraFrame(
telescope_pointing=telescopes_pointings[tel_id],
focal_length=focal_length,
Expand Down
Loading