CAOS - Code for Adaptive Optics Systems
The CAOS system: a Problem Solving Environment for Adaptive Optics and beyond !

(CAOS logo - A. Ferrari)

"One must still have chaos in oneself to be able to give birth to a dancing star."

(Friedrich Nietzsche - Thus Spoke Zarathustra, Prologue 3)

"We are living in an age of simulation."

(Jean Baudrillard)

The CAOS "system" (where CAOS stands for Code for Adaptive Optics Systems) is properly said a Problem Solving Environment (PSE). It is essentially composed of a graphical programming interface (the CAOS Application Builder) which can load different packages (set of modules).

Current publicly distributed packages are the Software Package CAOS (the original adaptive optics package), the Software Package AIRY (an image-reconstruction-oriented package - AIRY stands for Astronomical Image Restoration with interferometrY), the Software Package PAOLAC (a simple CAOS interface for the analytic IDL code PAOLA developped by Laurent Jolissaint - PAOLAC stands for PAOLA within Caos), and a couple of private packages (not publicly distributed but restricted to the corresponding consortia): SPHERE (especially developped for the VLT planet finder SPHERE), and AIRY-LN (a specialized version of AIRY for the LBT instrument LINC-NIRVANA). Another package is also being developped: MAOS (that stands for Multiconjugate Adaptive Optics Simulations), developped for multi-reference multiconjugate AO studies purpose but still in a beta-version form.

From this web-page (still awful but hopefully useful) you will be able to download the last distributed version of the CAOS system (including the CAOS Application Builder 7.1 and the CAOS Library 5.4), as well as the Software Package CAOS 5.2, the Software Package AIRY 6.0, the Software Package PAOLAC 1.0 (embedment of the analytical code PAOLA within the CAOS PSE), and, if you are an authorized user, the Software Package AIRY-LN 1.3 (for LINC-NIRVANA/LBT data reduction) or the Software Package SPHERE 3.0 (for SPHERE/VLT detailed simulations).

There is also a specific web-page about the Software Package AIRY, and all the research work done with it here.

In addition you can find hereafter a global presentation of the whole system CAOS, an other presentation/tutorial about the Software Package CAOS, a presentation about some plans for parallelizing CAOS, and two useful tutorials on the CAOS Application Builder (one using the Software Package CAOS -- but a somehow old version of it -- and another one using the last version of the Software Package AIRY).

Presentation of the whole CAOS system [SPIE - 2004]
(zipped document -4.5MB- containing 1 powerpoint file together with 1 mpeg file)

Presentation/Tutorial of the Software Package CAOS [AO mini-school - 2003]
(zipped document -3MB- containing 1 powerpoint file together with 3 mpeg files)

Presentation of the Software Package AIRY [SIMAI - 2004]
(zipped document -1MB- containing 1 powerpoint file together with 2 mpeg files)

(Plans for) Efficient distribution of computational load with the CAOS Application Builder [ADASS - 2002]
(HTML document)

Tutorial of the CAOS Application Builder together with the Software Package CAOS
(HTML document)

Tutorial of the CAOS Application Builder together with the Software Package AIRY
(HTML document)


In any case, and if you are not already a subscriber of caos-(at) or airy-(at) or paolac-(at) or sphere-(at)

*** Please do not forget STEP 0 of installation and  ***
*** subscribe to the dedicated mailing-list by       ***
*** either pointing:                                 ***
*** - here (for Soft.Pack.CAOS users)                ***
*** - here (for Soft.Pack.AIRY users)                ***
*** - here (for Soft.Pack.PAOLAC users)              ***
*** or mailing here:                                 ***
*** - subscribe caos-(at) (Soft.Pack.CAOS)    ***
*** - subscribe airy-(at) (Soft.Pack.AIRY)    ***
*** - subscribe paolac-(at) (Soft.Pack.PAOLAC)***
*** [obviously replacing "-(at)-" with "@"]          *** ********************************************************

Subscribing to the mailing-list allows to be informed of patches, new releases, etc., and also permit to form a community of users where useful informations circulate more easily. As a consequence, submission of bug fixes, but also new modules (and even new packages!!), is strongly encouraged.

For further informations please mail to caos-team.

(see also the file ReadMe.txt in .../caos/packages/Template_Package/modules/xxx/)

(see also the files .../caos/packages/*********/modules/***/***

There are 8 types of input/outputs defined within CAOS up to now : the "atmosphere" type (atm_t), the "source/object" type (src_t), the "wave-front propagated" type (wfp_t), the "command" type (com_t), the "image" type (img_t), the "multiple image" type (mim_t), the "measurement" type (mes_t), and the "structure function" (stf_t) type.

Here are the details about the various existing input/output types within CAOS.


About the whole CAOS PSE:
``CAOS - a numerical simulation tool for astronomical adaptive optics (and beyond)'',
M. Carbillet, C. Verinaud, M. Guarracino, L. Fini, O. Lardiere, B. Le Roux, A. Puglisi, B. Femenia, A. Riccardi, B. Anconelli, S. Correia, M. Bertero, P.Boccacci,
SPIE Proc. 5490, 637 (2004).
``The CAOS problem-solving environment: recent developments'',
M. Carbillet, G. Desidera, E. Augier, A. La Camera, A. Riccardi, A. Boccaletti, L. Jolissaint, D. Al Kabir,
SPIE Proc. 7736, 773644 (2010).

About the CAOS Application Builder:
``The CAOS Application Builder'',
L. Fini, M. Carbillet, A. Riccardi,
ASP Conf. Series 238, 253 (2001).

About the Software Package CAOS:
``Modelling astronomical adaptive optics: I. The Software Package CAOS'',
M. Carbillet, C. Verinaud, B. Femenia, A. Riccardi, L. Fini,
MNRAS 356 (4), 1253 (2005).

About the Software Package AIRY:
``Restoration of interferometric images: I. The Software Package AIRY'',
S. Correia, M. Carbillet, P. Boccacci, M. Bertero, L. Fini,
Astron. Astrophys. 387 (2), 733 (2002).

About the Software Package PAOLAC:
``The Software Package PAOLAC: an embedment of the analytical code PAOLA within the CAOS problem-solving environment'',
M. Carbillet, L. Jolissaint, A.-L. Maire,
in "1st AO for ELTs Conference - Adaptive Optics for Extremely Large Telescopes", Y. Clenet, J.-M. Conan, Th. Fusco, G. Rousset, Eds.,
EDP Sciences (, 03006 (2010).

About the Software Package AIRY-LN:
``AIRY-LN: an ad-hoc numerical tool for deconvolution of images from the LBT instrument LINC-NIRVANA'',
G. Desidera, A. La Camera, P. Boccacci, M. Bertero, M. Carbillet,
in "Optical and Infrared Interferometry", M. Shoeller, W.-C. Danchi, F. Delplancke, Eds.,
SPIE Proc. 7013, 701340 (2008).

About the Software Package SPHERE:
``The Software Package SPHERE: a CAOS-based numerical tool for end-to-end simulations of SPHERE/VLT'',
M. Carbillet, A. Boccaletti, Ch. Thalmann, Th. Fusco, A. Vigan, I. Smith, D. Mouillet, K. Dohlen, Ph. Bendjoya, A. Ferrari,
in "Adaptive Optics Systems", N. Hubin, C. E. Max, P. L. Wizinovitch, Eds.,
SPIE Proc. 7015, 70156Z (2008).

(see here for more references specific to the Software Package AIRY)


AOSIM: the first (as far as we know) IDL-based numerical tool for (generic) AO.
PAOLA: an IDL-based semi-analytical tool suited for large apertures AO.

[Last update: November 12th, 2012 - Marcel Carbillet (marcel.carbillet-(at)]