von_karman_psd#
@author: giuliacarla
- class arte.atmo.von_karman_psd.VonKarmanPsd(fried_param, outer_scale)#
Bases:
objectThis class computes the spatial Power Spectral Density (PSD) of turbulent phase assuming the Von Karman spectrum. The PSD is obtained from the following expression:
\[ \begin{align}\begin{aligned}PSD(f,h) = c * r_0(h)^{-5/3} * ( f^2+ \frac{1}{L_0^2})^{-11/6}\\c = ( \frac{24}{5} \Gamma(6/5) )^{5/6} \frac{\Gamma(11/6)^2}{2 \pi^{11/3} } = 0.0228955\end{aligned}\end{align} \]- Parameters:
fried_param (float) – Fried parameter characterizing the atmospheric turbulence [m].
outer_scale (float) – Outer scale of the atmospheric turbulence [m].
Example
Compute the total variance of Kolmogorov over a 10m telescope and compare variance [rad2] with Noll(‘76): \(\Delta_1= 1.029 (D/r_0)^{5/3}\)
>>> R = 5 >>> r0 = 0.1 >>> L0 = np.inf >>> psd = von_karman_psd.VonKarmanPsd(r0, L0) >>> freqs = np.logspace(-8, 4, 1000) >>> bess = scipy.special.jv(1, 2*np.pi*R*freqs) >>> psdPistonRem = psd.spatial_psd(freqs) * (1 - (bess/(np.pi*R*freqs))**2) >>> varInRad2 = np.trapezoid(psdPistonRem*2*np.pi*freqs, freqs) >>> varInRad2Noll = 1.029*(2*R/r0)**(5./3) >>> print("%g %g" % (varInRad2, varInRad2Noll)) 2214.36 2216.91
or use shortcut function von_karman_psd.rms()
Methods
spatial_psd(freqs)Spatial Power Spectral Density of Von Karman turbulence
plot_von_karman_psd_vs_frequency
- NUM_CONST = 0.02289558710855519#
- plot_von_karman_psd_vs_frequency(freqs, idx=None)#
- arte.atmo.von_karman_psd.rms(diameter: Unit('m'), wavelength: Unit('nm'), fried_param: Unit('m'), outer_scale: Unit('m'), freqs=None)#
Von Karman wavefront rms value over a circular aperture
- Parameters:
diameter (
Quantityequivalent to meter) – Aperture diameterwavelength (
Quantityequivalent to nanometer) – wavelengthfried_param (
Quantityequivalent to meter) – Fried parameter r0 defined at the specified wavelengthouter_scale (
Quantityequivalent to meter) – Outer scale L0. Use np.inf for Kolmogorov spectrumfreqs (array of
Quantityequivalent to 1/meter) – spatial frequencies array. Default logspace(-8, 4, 1000) m^-1
- Returns:
rms – wavefront rms for the specified von Karman turbulence
- Return type:
Quantityequivalent to nm