NuRadioReco.modules.neutrinoVertexReconstructor.neutrino3DVertexReconstructor module

class NuRadioReco.modules.neutrinoVertexReconstructor.neutrino3DVertexReconstructor.neutrino3DVertexReconstructor(lookup_table_location)[source]

Bases: object

Constructor for the vertex reconstructor

Parameters:
lookup_table_location: string

path to the folder in which the lookup tables for the signal travel times are stored

Methods

begin(station_id, channel_ids, detector, ...)

General settings for vertex reconstruction

get_correlation_array_2d(phi, z)

Returns the correlations corresponding to the different signal travel times between channels for the given positions.

get_correlation_for_pos(d_hor, z)

Returns the correlations corresponding to the different signal travel times between channels for the given positions.

get_signal_travel_time(d_hor, z, ray_type, ...)

Calculate the signal travel time between a position and the channel

get_correlation_array_3d

run

begin(station_id, channel_ids, detector, template, distances_2d=None, azimuths_2d=None, z_coordinates_2d=None, distance_step_3d=2, widths_3d=None, z_step_3d=2, passband=None, min_antenna_distance=5.0, debug_folder='.')[source]

General settings for vertex reconstruction

Parameters:
station_id: integer

ID of the station to be used for the reconstruction

channel_ids: array of integers

IDs of the channels to be used for the reconstruction

detector: Detector or GenericDetector

Detector description for the detector used in the reconstruction

template: BaseTrace object or object of child class

An electric field to be used to calculate the template which are correlated with the channel traces in order to determine the timing difference between channels

distances_2d: array of float

A list of horizontal distances from the center of the station at which the first rough scan to determine the search volume is done. The minimum and maximum of this list is later also used as the minimum and maximum distance for the finer search

azimuths_2d: array of float

Array of azimuths to be used in the first scan to determine the search volume

z_coordinates_2d: array of float

Array of the z coordinates relative to the surface to be used in the first scan to determine the search volume. The maximum depth is also used as the maximum depth for the finer search

distance_step_3d: float

Step size for the horizontal distances used in the finer scan

widths_3d: array of float

List of distances to the left and right of the line determined in the first rough scan on which the finer scan should be performed

z_step_3d: float

Step size for the depts used in the finer scan

passband: array of float

Lower and upper bounds off the bandpass filter that is applied to the channel waveform and the template before the correlations are determined. This filter does not affect the voltages stored in the channels.

min_antenna_distance: float

Minimum distance two antennas need to have to be used as a pair in the reconstruction

debug_folder: string

Path to the folder in which debug plots should be saved if the debug=True option is picked in the run() method.

run(event, station, det, debug=False)[source]
get_correlation_array_2d(phi, z)[source]

Returns the correlations corresponding to the different signal travel times between channels for the given positions. This is done by correcting for the distance of the channels from the station center and then calling self.get_correlation_for_pos, which does the actual work.

Parameters:
x, z: array

Coordinates of the points for which calculations are to be calculated. Correspond to the (r, z) pair of cylindrical coordinates.

get_correlation_array_3d(x, y, z)[source]
get_correlation_for_pos(d_hor, z)[source]

Returns the correlations corresponding to the different signal travel times between channels for the given positions.

Parameters:
d_hor, z: array

Coordinates of the points for which calculations are to be calculated. Correspond to the (r, z) pair of cylindrical coordinates.

get_signal_travel_time(d_hor, z, ray_type, channel_id)[source]

Calculate the signal travel time between a position and the channel

Parameters:
d_hor, z: numbers or arrays of numbers

Coordinates of the point from which to calculate the signal travel times. Correspond to (r, z) coordinates in cylindrical coordinates.

ray_type: string

Ray type for which to calculate the travel times. Options are direct, reflected and refracted

channel_id: int

ID of the channel to which the travel time shall be calculated