e_rs¶
- pyoof.aperture.e_rs(phase, circ=False)[source]¶
Computes the random-surface-error efficiency, \(\varepsilon_\mathrm{rs}\), using the Ruze’s equation.
- Parameters
- phase
Quantity
The phase-error, \(\varphi(x, y)\), is a two dimensional array ( one of the solutions from the pyoof package). Its amplitude values are in radians. The input must be in radians or angle units.
- circ
bool
If
True
it will take thephase.shape[0]
as the diameter of a circle and calculate the root-mean-square only in that portion.
- phase
Notes
Ruze’s equation was derived empirically from a test reflector with Gaussian distributed errors, and it expressed as,
\[\varepsilon_\mathrm{rs} = \mathrm{e}^{-(4\pi\delta_\mathrm{rms}/\lambda)^2}.\]Where \(\delta_\mathrm{rms}\) corresponds to the root-mean-squared deviation. The Python function uses the key phase because the term \(4\pi\delta_\mathrm{rms}/\lambda\) corresponds to the phase-error. Notice that this equation only works for a parabolic reflector and with a Cassegrain geometry, the term \(2\pi/\lamda\) converts the surface errors to phase and the additional \(2\) accounts for the two-way path of the reflected rays.
Examples
Simply add the a phase value and define the limits of the phase-error map.
>>> import numpy as np >>> from astropy import units as u >>> from pyoof import aperture >>> pr = 50 * u.m >>> K_coeff = np.array([0.1] * 21) # see aperture.phase >>> x, y, phi = aperture.phase( ... K_coeff=K_coeff, pr=pr, piston=False, tilt=False ... ) >>> aperture.e_rs(phase=phi, circ=True) <Quantity 0.27564826>