Beamforming¶
Beamformer functions.
- beamformer.beamform(station, weights=None, delays=None, freq=60000000.0, azimuth=0.0, elevation=90.0, resolution=1.0, ant_gain_file=None, ant_corr_file=None, dB=False, verbose=True)¶
Given a weighting vector and beam_simulator.Station object, simulate the beam pattern on the sky for a given frequency and pointing.
- Inputs:
station - Station object
w - Weighting array
freq - Frequency [Hz]
azimuth - Azimuth Eastward of North [deg]
elevation - Elevation above horizon [deg]
resolution - Simulation resolution [deg]
ant_gain_file - Antenna gain file output by nec.combine_harmonic_fits (.npz)
ant_corr_file - Empirical correction to an antenna gain pattern. This is only designed for the LWA.
dB - Convert final simulated power to dB
- Returns:
2-D array of shape (360/resolution X 90/resolution)
- beamformer.calc_geometric_delays(station, freq=60000000.0, azimuth=0.0, elevation=90.0)¶
Calculate the geometric delays between station elements for a given frequency (Hz) and az/el pointing center (deg).
- Inputs:
station - Station object
freq - Frequency [Hz]
azimuth - Azimuth Eastward of North [deg]
elevation - Elevation above horizon [deg]
- Returns:
Delays array of size length len(station.antennas)
- beamformer.generate_gaussian_weights(station, freq=60000000.0, azimuth=0.0, elevation=90.0, fwhm=5.0)¶
Return a weighting vector with Gaussian weights relative to the station geometric center for a custom beam with a given main lobe FWHM (deg) at a given frequency (Hz) and az/el pointing center (deg).
See DiLullo, Taylor, and Dowell (2020) for a description of the method.
- Inputs:
station - Station object
freq - Frequency [Hz]
azimuth - Azimuth Eastward of North [deg]
elevation - Elevation above horizon [deg]
fwhm - FWHM of the main lobe [deg]
- Returns:
Array of size length len(station.antennas)
- beamformer.generate_uniform_weights(station)¶
Return a weighting vector with uniform weights (w = 1.0 for all elements) for a given Station object.
- Inputs:
Station object
- Returns:
Array of size len(station.antennas)