Showing posts with label adaptive optics. Show all posts
Showing posts with label adaptive optics. Show all posts

Wednesday, August 17, 2011

A note about Greenwood frequency

Greenwood frequency\cite{greenwoodbandwidth} is a single parameter that can represent the entire spectrum for adaptive optics. It is a measure of the characteristic frequency of the tilt of atmospheric turbulence\cite{tysonprinciplesbook}, and is expressed by Tyler\cite{tyler1994bandwidth} for the G-tilt:









where $v_w(z)$ is a wind velocity, and $\beta$ is the zenith angle. The Greenwood frequency can be associated with turbulence temporal error. The atmospheric turbulence conjugation process can be limited by temporal deficiencies as well as spatial ones\cite{karr1991temporal}. Assuming perfect spatial correction, Greenwood\cite{greenwoodbandwidth} showed that the variance of the corrected wavefront due to temporal limits is given by: $$\sigma^2_{temp} = \int_{0}^{\infty} |1 - H(f,f_c)|^2 P(f) df$$ where the $P(f)$ is the disturbance power spectrum\cite{tysonprinciplesbook}. The higher-order wavefront variance due to temporal constraints is $$\sigma_{temp}^2 = [\frac{f_G}{f_{3~dB}}]^{5/3}$$ where the $f_G$ is the Greenwood frequency.





Greenwood frequency as an estimation of a controller's bandwidth

The required frequency bandwidth of the control system is called the Greenwood frequency\cite{greenwoodbandwidth}. An adaptive optics system with a closed-loop servo response should reject most of the phase fluctuations. Greenwood\cite{greenwoodbandwidth} calculated the characteristic frequency $f_G$ as follows:











where $\beta$ is the zenith angle, $v_w$ is wind velocity. In the case of a constant wind and a single turbulent layer, the Greenwood frequency $f_G$ can be approximated by: $$f_G = 0.426 \frac{v_w}{r_0},$$ where $v_w$ as the velocity of the wind in meters/sec and $r_0$ is the Fried parameter. Greenwood\cite{greenwoodbandwidth} determined the required bandwidth, $f_G$ (the Greenwood frequency), for full correction by assuming a system in which the remaining aberrations were due to finite bandwidth of the control system\cite{saha2010aperture}. Greenwood derived the mean square residual wavefront error as a function of servo-loop bandwidth \textit{for a first order controller}, which is given by:







where $f_c$ is the frequency at which the variance of the residual wavefront error is half the variance of the input wavefront, known as 3 db closed-loop bandwidth of the wavefront compensator, and $f_G$ the required bandwidth\cite{saha2010aperture}. It must be noted that the required \textit{bandwidth for adaptive optics does not depend on height}, but instead is proportional to $v_w /r_0$ , which is in turn proportional to $\lambda^{-6/5}$. If the turbulent layer moves at a speed of 10 m/s, the closed loop bandwidth for $r_0 \approx 11$ cm, in the optical band (550 nm) is around 39 Hz\cite{saha2010aperture}.



For most cases of interest, the Greenwood frequency of the atmosphere is in the range of tens to hundreds of Hertz. Beland and Krause-Polstorff\cite{greenwoodfreqvariation} present measurements that show how the Greenwood frequency can vary between sites. Mt. Haleakala in Maui, Hawaii, has an average Greenwood frequency of 20 Hz. For strong winds and ultraviolet wavelengths, the Greenwood frequency can reach 600 Hz. The system bandwidth on bright guide stars is, in most cases, several times larger than the Greenwood frequency.





\begin{thebibliography}{1}

\bibitem{greenwoodbandwidth} D.~P. Greenwood.

\newblock
Bandwidth specification for adaptive optics systems.

\newblock
{\em J. Opt. Soc. Am.}, 67:390--93, 1977.



\bibitem
{tysonprinciplesbook} R.~Tyson.

\newblock
Principles of adaptive optics. \newblock 2010.



\bibitem{tyler1994bandwidth} G.A. Tyler.

\newblock
Bandwidth considerations for tracking through turbulence.

\newblock {\em JOSA A}, 11(1):358--367, 1994.



\bibitem
{karr1991temporal} T.J. Karr.

\newblock Temporal response of atmospheric turbulence compensation.

\newblock
{\em Applied optics}, 30(4):363--364, 1991.



\bibitem{saha2010aperture} S.K. Saha.

\newblock Aperture synthesis: Methods and applications to optical astronomy.

\newblock
2010.



\bibitem{greenwoodfreqvariation} R.~Beland and J.~Krause-Polstorff.

\newblock Variation of greenwood frequency measurements under different meteorological conditions.

\newblock
In {\em Proc. Laser Guide Star Adaptive Optics Workshop 1, 289. Albuquerque, NM: U. S. Air Force Phillips Laboratory}, 1992.

\end{thebibliography}

Tuesday, September 21, 2010

MATLAB parallelisation for the Adaptive Optics Simulators

Recently in the article[1] there were proposed interesting ideas about parallelisation of MATLAB. In Euro50 project of the Extremely Large Telescope, the model of the entire telescope is built on the MATLAB and calculations are obviously beyond the capabilities of personal computers.

MATLAB does not include any parallel functionality however there are basic interfaces to the TCP/IP network stack, C and Fortran. By building upon these interfaces there have been of the order of 30 attempts (as in the survey R. Choy, Parallel MATLAB survey) to produce ``toolkits'' to allow MATLAB to be used in a parallel fashion. The approaches of communications between nodes that were used in those toolkits either take a low-level approach using commands similar to Message Passing Interface (MPI) libraries or use a more high level approach choosing to use simpler commands that resemble more closely those of MATLAB. The problem with MPI is that it is difficult to use with MATLAB[1].

According to[1], the acceleration of the simulation's execution using compilation to MEX is significant: experiment showed that MATLAB could indeed compete with the traditional HPC languages in raw performance, typically attaining 90% of the performance of Fortran 90 on calculations.

As a starting point, the parallelisation toolkit for MATLAB written by Einar Heiberg was used.
The Matlab parallelization toolkit is released as Open Source, uses a Master/Slave paradigm and is most suitable to problems where the amount of communication is low. The toolkit by D.Moraru called MatlabWS that is used for Euro50 is not available publicly. But the results of the investigations are interesting. The authors of[1] found out that in practise, a bigger problem is not a network bandwidth but a latency introduced by network card driver. As an example, using the Heiberg toolkit have shown that on 100Mbps Ethernet there is minimum period of 35ms of latency involved in any communications between MATLAB instances on separate cluster nodes regardless of message size. While moving to gigabit Ethernet would increase bandwidth, it would have little impact on latency[1].

Another approach is MPITB written by Javier Fernandez Baldomero that uses MPI. According to the webpage, PC MATLAB Linux users in a cluster with several PCs can use MPITB in order to call MPI library routines from within the MATLAB interpreter. Depending on your licensing scheme (node/user-based), additional licenses might be required to spawn additional MATLAB processes on other cluster nodes. Currently processes can be spawned and arranged in topologies, MATLAB variables can be sent/received.

As a conclusion, the improvements in latency have resulted in a reduction in typical model run time from 70 hours to 24 hours. It is hoped that architectural changes that better exploit a lower latency environment can reduce this still further. In addition another toolkit MPITB offers comparable latencies over Ethernet, using native MPI. MPITB uses the LAM MPI implementation. However this toolkit is more complex to configure and use. MatlabWS's combination of the ease of use of the Heiberg toolkit with the performance of MPITB make it a very compelling product.

[TBD] Ideas about parallelisation of GNU/Octave are collected here.

References:
[1] Browne, M., Andersen, T., Enmark,
A., Moraru, D., and Shearer, A., "Parallelization of MATLAB for Euro50 Integrated
Modeling", Proc. SPIE, Vol. 5497, 2004.
Related Posts Plugin for WordPress, Blogger...