Provided by: yorick-yao_5.4.0-1_amd64 bug


       yao - Adaptive Optics simulation tool in yorick


       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;


       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

       *  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.

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


       Francois Rigaut, Gemini Observatory


       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



       LGS uplink propagation is not implemented

       Shack-Hartmann cross talk between subapertures is not implemented

       Many more.