Man Linux: Main Page and Category List

NAME

       yao - Adaptive Optics simulation tool in yorick

SYNOPSIS

       Start yao with the gtk GUI:
          yao parfile.par
          yorick -i yaopy.i parfile.par

       Within yorick (no GUI, but same graphical output)
          #include yao.i
          aoread,"parfile.par"; aoinit; aoloop; go;

DESCRIPTION

       Yao  is  a  monte-carlo  simulation  package  for  adaptive  optics. It
       includes fast core coded in C (e.g. wavefront sensing) that  are  glued
       together by yorick interpreted code. One defines the system to evaluate
       using a configuration file, and then run aoread, aoinit and aoloop. Yao
       features:

       *  Shack-Hartmann and Curvature WFS, on or off axis.

       *  Stackarray  (piezostack),  curvature  (bimorph), modal (zernike) and
          Tip-Tilt  deformable  mirrors  are  supported.   The   altitude   of
          conjugation is adjustable.

       *  An  arbitrary  number  of  WFSs  and  DMs  can be selected, with the
          possibility of mixing types. It is therefore possible (and easy)  to
          simulate  single  DM  systems, as well as single non-zero conjugate,
          GLAO and MCAO systems.

       *  It supports Natural and Laser Guide  Stars  (or  a  mix),  WFS  with
          photon and read-out noise.

       *  It   uses   a  multi-layered  atmospheric  model,  with  geometrical
          propagation only.

       *  The loop execution  has  been  optimized  for  speed:  the  critical
          routines  have  been coded in C. Yorick is thus used as a convenient
          glue between lower levels optimized C calls. Overall, this is rather
          efficient:  A  simple  6x6  Shack-Hartmann  system runs at up to 650
          iterations per second on an apple dual 2GHz G5  (200  iterations/sec
          for  a  full  diffraction propagation model). A 50x50 Shack-Hartmann
          system runs at about 3 iterations/s. A 188 curvature system runs  at
          25 iterations/s.

       *  Straightforward scriptability to probe parameter domains.

       *  GTK  GUI  to  change some of the system parameters while the loop is
          running (new in v4.0). This  provides  an  educational  approach  to
          Adaptive   Optics   (newbies   can  play  with  the  parameters  and
          immediately sees how the system reacts)  and  can  also  provides  a
          quick  way  to  investigate  the  stability  conditions  for a newly
          designed  system,   before   entering   more   serious   Monte-carlo
          simulations.

   Options
        help,aoread   will  give  you information about the syntax, parameters
                      and keywords of aoread. See help,aoinit and  help,aoloop
                      also.

AUTHOR

       Francois Rigaut, Gemini Observatory

FILES

       Input files:

       parfile.par    A yao parameter file. This file follows a regular yorick
                      syntax. It is directly included by yorick to define  the
                      structures  used  by  yao.  As  it might be a little bit
                      daunting to  create  a  parfile  from  scratch,  example
                      parfiles  are  provided.  Their  location depends on the
                      installation. Search for yao/examples  (e.g.  shx6x.par,
                      curvature.par)

       screen*.fits   To  simulate the atmospheric turbulence, yao needs phase
                      screens.   You   can   create   phase    screens    with
                      create_phase_screens().  They  might also be included in
                      your distribution.

       Output files:

       parfile.res    After  a  simulation  run,   results   are   output   in
                      parfile.res in the cwd

BUGS

       Lots.

       LGS uplink propagation is not implemented

       Shack-Hartmann cross talk between subapertures is not implemented

       Many more.

SEE ALSO

       yorick(1)