NuRadioReco.modules.voltageToEfieldConverter module

NuRadioReco.modules.voltageToEfieldConverter.get_array_of_channels(station, use_channels, det, zenith, azimuth, antenna_pattern_provider, time_domain=False)[source]
NuRadioReco.modules.voltageToEfieldConverter.stacked_lstsq(L, b, rcond=1e-10)[source]

Solve L x = b, via SVD least squares cutting of small singular values L is an array of shape (…, M, N) and b of shape (…, M). Returns x of shape (…, N)

Note that if L is symmetric, it is inverted analytically instead.

class NuRadioReco.modules.voltageToEfieldConverter.voltageToEfieldConverter[source]

Bases: object

Unfold the electric field from the channel voltages

This module reconstructs the electric field by solving the system of equation that relate the incident electric field via the antenna response functions to the measured voltages (see Eq. 4 of the NuRadioReco paper https://link.springer.com/article/10.1140/epjc/s10052-019-6971-5). The module assumed that the electric field is identical at the antennas/channels that are used for the reconstruction. Furthermore, at least two antennas with orthogonal polarization response are needed to reconstruct the 3dim electric field. Alternatively, the polarization of the resulting efield could be forced to a single polarization component. In that case, a single antenna is sufficient.

Methods

run(evt, station, det[, use_channels, ...])

run method.

begin

end

begin()[source]
run(evt, station, det, use_channels=None, use_MC_direction=False, force_Polarization='')[source]

run method. This function is executed for each event

Parameters:
evtNuRadioReco.framework.event.Event
stationNuRadioReco.framework.base_station.BaseStation
detDetector object
use_channels: array of ints (default: [0, 1, 2, 3])

the channel ids to use for the electric field reconstruction

use_MC_direction: bool, default: False

If True uses zenith and azimuth direction from simulated station. Otherwise, uses reconstructed direction from station parameters.

force_Polarization: str, optional

If eTheta or ePhi, then only reconstructs chosen polarization of electric field, assuming the other is 0. Otherwise (default), reconstructs electric field for both eTheta and ePhi

end()[source]