plot_beam

pyoof.plot_beam(params, d_z, wavel, illum_func, telgeo, resolution, box_factor, plim_rad, angle, title)[source] [edit on github]

Beam maps, \(P_\mathrm{norm}(u, v)\), figure given fixed I_coeff coefficients and K_coeff set of coefficients. It is the straight forward result from a least squares minimization (fit_beam). There will be three maps, for three radial offsets, \(d_z^-\), \(0\) and \(d_z^+\) (in meters).

Parameters:

params : ndarray

Two stacked arrays, the illumination and Zernike circle polynomials coefficients. params = np.hstack([I_coeff, K_coeff]).

d_z : list

Radial offset \(d_z\), added to the sub-reflector in meters. This characteristic measurement adds the classical interference pattern to the beam maps, normalized squared (field) radiation pattern, which is an out-of-focus property. The radial offset list must be as follows, d_z = [d_z-, 0., d_z+] all of them in meters.

wavel : float

Wavelength, \(\lambda\), of the observation in meters.

illum_func : function

Illumination function, \(E_\mathrm{a}(x, y)\), to be evaluated with the key I_coeff. The illumination functions available are illum_pedestal and illum_gauss.

telgeo : list

List that contains the blockage distribution, optical path difference (OPD) function, and the primary radius (float) in meters. The list must have the following order, telego = [block_dist, opd_func, pr].

resolution : int

Fast Fourier Transform resolution for a rectangular grid. The input value has to be greater or equal to the telescope resolution and with power of 2 for faster FFT processing. It is recommended a value higher than resolution = 2 ** 8.

box_factor : int

Related to the FFT resolution (resolution key), defines the image pixel size level. It depends on the primary radius, pr, of the telescope, e.g. a box_factor = 5 returns x = np.linspace(-5 * pr, 5 * pr, resolution), an array to be used in the FFT2 (fft2).

plim_rad : ndarray

Contains the maximum values for the \(u\) and \(v\) wave-vectors, it can be in degrees or radians depending which one is chosen in angle key. The ndarray must be in the following order, plim_rad = np.array([umin, umax, vmin, vmax]).

angle : str

Angle unit, it can be 'degrees' or 'radians'.

title : str

Figure title.

Returns:

fig : Figure

The three beam maps plotted from the input parameters. Each map with a different offset \(d_z\) value. From left to right, \(d_z^-\), \(0\) and \(d_z^+\).