HillasReconstructor

class ctapipe.reco.hillas_reconstructor.HillasReconstructor(**kwargs)[source]

Bases: ctapipe.reco.reco_algorithms.Reconstructor

class that reconstructs the direction of an atmospheric shower using a simple hillas parametrisation of the camera images it provides a direction estimate in two steps and an estimate for the shower’s impact position on the ground.

so far, it does neither provide an energy estimator nor an uncertainty on the reconstructed parameters

Methods Summary

estimate_core_position(hillas_dict, …)

Estimate the core position by intersection the major ellipse lines of each telescope.

estimate_direction()

calculates the origin of the gamma as the weighted average direction of the intersections of all hillas planes

estimate_h_max()

Estimate the max height by intersecting the lines of the cog directions of each telescope.

initialize_hillas_planes(hillas_dict, …)

Creates a dictionary of HillasPlane from a dictionary of hillas parameters

predict(hillas_dict, subarray, array_pointing)

The function you want to call for the reconstruction of the event.

Methods Documentation

estimate_core_position(hillas_dict, array_pointing)[source]

Estimate the core position by intersection the major ellipse lines of each telescope.

Parameters
hillas_dict: dict[HillasContainer]

dictionary of hillas moments

array_pointing: SkyCoord[HorizonFrame]

Pointing direction of the array

Returns
core_x: u.Quantity

estimated x position of impact

core_y: u.Quantity

estimated y position of impact

estimate_direction()[source]

calculates the origin of the gamma as the weighted average direction of the intersections of all hillas planes

Returns
gammashape (3) numpy array

direction of origin of the reconstructed shower as a 3D vector

crossingsshape (n,3) list

an error estimate

estimate_h_max()[source]

Estimate the max height by intersecting the lines of the cog directions of each telescope.

Returns
astropy.unit.Quantity

the estimated max height

initialize_hillas_planes(hillas_dict, subarray, telescopes_pointings, array_pointing)[source]

Creates a dictionary of HillasPlane from a dictionary of hillas parameters

Parameters
hillas_dictdictionary

dictionary of hillas moments

subarrayctapipe.instrument.SubarrayDescription

subarray information

telescopes_pointings: dictionary

dictionary of pointing direction per each telescope

array_pointing: SkyCoord[AltAz]

pointing direction of the array

predict(hillas_dict, subarray, array_pointing, telescopes_pointings=None)[source]

The function you want to call for the reconstruction of the event. It takes care of setting up the event and consecutively calls the functions for the direction and core position reconstruction. Shower parameters not reconstructed by this class are set to np.nan

Parameters
hillas_dict: dict

dictionary with telescope IDs as key and HillasParametersContainer instances as values

instctapipe.io.InstrumentContainer

instrumental description

array_pointing: SkyCoord[AltAz]

pointing direction of the array

telescopes_pointings: dict[SkyCoord[AltAz]]

dictionary of pointing direction per each telescope

Raises
TooFewTelescopesException

if len(hillas_dict) < 2

InvalidWidthException

if any width is np.nan or 0