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)
- class NuRadioReco.modules.voltageToEfieldConverter.voltageToEfieldConverter[source]
Bases:
object
This module reconstructs the electric field by solving the system of equation that related 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
- run(evt, station, det, use_channels=None, use_MC_direction=False, force_Polarization='')[source]
run method. This function is executed for each event
- Parameters:
- evt
- station
- det
- use_channels: array of ints (default: [0, 1, 2, 3])
the channel ids to use for the electric field reconstruction
- use_MC_direction: bool
if True uses zenith and azimuth direction from simulated station if False uses reconstructed direction from station parameters.
- force_Polarization: str
if eTheta or ePhi, then only reconstructs chosen polarization of electric field, assuming the other is 0. Otherwise, reconstructs electric field for both eTheta and ePhi