NuRadioReco.modules.channelIceThermalNoiseAdder module

class NuRadioReco.modules.channelIceThermalNoiseAdder.channelIceThermalNoiseAdder[source]

Bases: object

Module to generate thermal noise from ice This class is a stripped version of channelGalacticNoiseAdder Intead of using a skymap, the module uses pre generated effective antenna temperatures, generated by Steffen’s effective temperature code which was modified by Felix (see NuRadioMC/examples/simulate_effective_ice_temperature )

Methods

begin(eff_temperature_files[, nr_phi_bins, ...])

Set up important parameters for the module

get_temperature_from_json(temperature_file)

Function to open the effective temperature files created by NuRadioMC/examples/simulate_effective_ice_temperature The effective temperatures are generated at an antenna depth in function of incident angle by integrating ice temperature (weighted by attenuation effects) along a ray path starting from an incident angle.

run(event, station, detector[, passband])

Adds noise resulting from thermal emission to the channel traces

get_cached_antenna_response

solid_angle

get_cached_antenna_response(antenna_pattern, zen, azi, *ant_orient)[source]
solid_angle(theta, d_theta, d_phi)[source]
get_temperature_from_json(temperature_file)[source]

Function to open the effective temperature files created by NuRadioMC/examples/simulate_effective_ice_temperature The effective temperatures are generated at an antenna depth in function of incident angle by integrating ice temperature (weighted by attenuation effects) along a ray path starting from an incident angle. For more info see the example. This module was made for RNO-G but given you have an ice temperature / attenuation profile one can re-generate these files for arbitrary experiments

begin(eff_temperature_files, nr_phi_bins=64, channel_depth_matching_error=10, debug=False)[source]

Set up important parameters for the module

Parameters:
eff_temperature_filesstr

Files generated by NuRadioMC.examples.simulate_effective_ice_temperature.ice_integrator.py Files contain the effective ice noise temperatures at the antenna in function of the incidence angle

nr_phi_binsint

Binning of the azimuth, this can be reduced for azimuthally symmetric antennas, such as vertically polarized antennas

channel_depth_matching_errorfloat

error the module can ake in assigning eff temperatures to channels based on channel depth e.g. if error is 2m, channel depth given by detector is 36m and effective temperatures were generated at 40m, then the module will not match the temperature at 40m to this channel and throw an error

debugbool

If True removes randomization of electric field phases and polarizations to speed up testing

run(event, station, detector, passband=None)[source]

Adds noise resulting from thermal emission to the channel traces

Parameters:
event: Event object

The event containing the station to whose channels noise shall be added

station: Station object

The station whose channels noise shall be added to

detector: Detector object

The detector description

passband: list of float, optional

Lower and upper bound of the frequency range in which noise shall be added. The default (no passband specified) is [10, 1600] MHz