# ADAO documentation¶

**The ADAO module provides data assimilation and optimization** features in
Python [Python] or SALOME context [Salome].

Briefly stated, Data Assimilation is a methodological framework to compute the
optimal estimate of the inaccessible true value of a system state, eventually
over time. It uses information coming from experimental measurements or
observations, and from numerical *a priori* models, including information about
their errors. Parts of the framework are also known under the names of
*parameter estimation*, *inverse problems*, *Bayesian estimation*, *optimal
interpolation*, *field reconstruction*, etc. The ADAO module currently offers
more than one hundred different algorithmic methods and allows the study of
about 350 distinct applied problems. More details can be found in the section
[DocT] A brief introduction to Data Assimilation and Optimization.

The documentation for this module is divided into several major categories,
related to the theoretical documentation (indicated in the section title by
**[DocT]**), to the user documentation (indicated in the section title by
**[DocU]**), and to the reference documentation (indicated in the section title
by **[DocR]**).

The first part is the Introduction to ADAO. The second part introduces [DocT] A brief introduction to Data Assimilation and Optimization, and their concepts, and the next part describes the [DocT] Methodology to elaborate a Data Assimilation or Optimization study. For a standard user, the next parts describe examples on ADAO usage as [DocU] Tutorials on using the ADAO module in SALOME or [DocU] Tutorials on using the ADAO module in Python, then indicates the [DocU] Advanced usage of the ADAO module, with how to obtain additional information or how to use non-GUI command execution scripting. Users interested in quick use of the module can stop before reading the rest, but a valuable use of the module requires to read and come back regularly to these parts. The following parts describe [DocR] Graphical User Interface for ADAO (GUI/EFICAS) and [DocR] Textual User Interface for ADAO (TUI/API). The last main part gives a detailed [DocR] Reference description of the ADAO commands and keywords, with three essential main sub-parts describing the details of commands and options of the algorithms. A Glossary, some Notations and common conventions, a Bibliography and an extensive index are included in the document. And, to comply with the module requirements, be sure to read the part License and requirements.

- 1. Introduction to ADAO
- 2.
**[DocT]**A brief introduction to Data Assimilation and Optimization- 2.1. Fields reconstruction or measures interpolation
- 2.2. Parameters identification, models adjustment, calibration
- 2.3. Joint estimation of states and parameters
- 2.4. Simple description of the data assimilation methodological framework
- 2.5. A schematic view of Data Assimilation and Optimization approaches
- 2.6. Going further in the data assimilation framework
- 2.7. Going further in the state estimation by optimization methods
- 2.8. Reduction methods and reduced optimization

- 3.
**[DocT]**Methodology to elaborate a Data Assimilation or Optimization study - 4.
**[DocU]**Tutorials on using the ADAO module in SALOME - 5.
**[DocU]**Tutorials on using the ADAO module in Python - 6.
**[DocU]**Advanced usage of the ADAO module- 6.1. Converting and executing an ADAO command file (JDC) using a Shell script
- 6.2. Running an ADAO calculation scheme in YACS using the text user mode (YACS TUI)
- 6.3. Running an ADAO calculation in R environment using the TUI ADAO interface
- 6.4. Using the ADAO EFICAS graphical interface as an ADAO TUI command
- 6.5. Change the default execution mode of nodes in YACS
- 6.6. Getting information on special variables during the ADAO calculation
- 6.7. Getting more information when running a calculation
- 6.8. Accelerating numerical derivatives calculations by using a parallel mode
- 6.9. Switching from a version of ADAO to a newer one

- 7.
**[DocR]**Graphical User Interface for ADAO (GUI/EFICAS) - 8.
**[DocR]**Textual User Interface for ADAO (TUI/API) - 9.
**[DocR]**Reference description of the ADAO commands and keywords - 10.
**[DocR]**General entries and outputs - 11.
**[DocR]**Special entries: functions, matrices, “*observer*” - 12.
**[DocR]**Data assimilation or optimization calculation cases- 12.1. Calculation algorithm “
*3DVAR*” - 12.2. Calculation algorithm “
*4DVAR*” - 12.3. Calculation algorithm “
*Blue*” - 12.4. Calculation algorithm “
*DerivativeFreeOptimization*” - 12.5. Calculation algorithm “
*DifferentialEvolution*” - 12.6. Calculation algorithm “
*EnsembleBlue*” - 12.7. Calculation algorithm “
*EnsembleKalmanFilter*” - 12.8. Calculation algorithm “
*ExtendedBlue*” - 12.9. Calculation algorithm “
*ExtendedKalmanFilter*” - 12.10. Calculation algorithm “
*KalmanFilter*” - 12.11. Calculation algorithm “
*LinearLeastSquares*” - 12.12. Calculation algorithm “
*NonLinearLeastSquares*” - 12.13. Calculation algorithm “
*ParticleSwarmOptimization*” - 12.14. Calculation algorithm “
*QuantileRegression*” - 12.15. Calculation algorithm “
*TabuSearch*” - 12.16. Calculation algorithm “
*UnscentedKalmanFilter*” - 12.17. List of commands and keywords for an ADAO calculation case

- 12.1. Calculation algorithm “
- 13.
**[DocR]**Checking cases- 13.1. Checking algorithm “
*AdjointTest*” - 13.2. Checking algorithm “
*FunctionTest*” - 13.3. Checking algorithm “
*GradientTest*” - 13.4. Checking algorithm “
*InputValuesTest*” - 13.5. Checking algorithm “
*LinearityTest*” - 13.6. Checking algorithm “
*LocalSensitivityTest*” - 13.7. Checking algorithm “
*ObserverTest*” - 13.8. Checking algorithm “
*ParallelFunctionTest*” - 13.9. Checking algorithm “
*SamplingTest*” - 13.10. Checking algorithm “
*TangentTest*” - 13.11. List of commands and keywords for an ADAO checking case

- 13.1. Checking algorithm “
- 14. License and requirements
- 15. Bibliography
- 16. Notations and common conventions
- 17. Glossary
- 18. Index