]> SALOME platform Git repositories - modules/adao.git/commitdiff
Salome HOME
Documentation update (twin experiments)
authorJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 9 Sep 2021 04:27:49 +0000 (06:27 +0200)
committerJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 9 Sep 2021 04:27:49 +0000 (06:27 +0200)
doc/en/images/meth_twin_experiments.png [new file with mode: 0644]
doc/en/methodology.rst
doc/en/tui.rst
doc/en/tutorials_in_salome.rst
doc/fr/images/meth_twin_experiments.png [new file with mode: 0644]
doc/fr/methodology.rst
doc/fr/tui.rst
doc/fr/tutorials_in_salome.rst

diff --git a/doc/en/images/meth_twin_experiments.png b/doc/en/images/meth_twin_experiments.png
new file mode 100644 (file)
index 0000000..966a004
Binary files /dev/null and b/doc/en/images/meth_twin_experiments.png differ
index 090c9d604f21b42672c8e0a49723462d7d931340..8753b47489bea96eeb6196f033fac474993d53bc 100644 (file)
@@ -230,3 +230,43 @@ state to represent the physical system.
 Besides this analysis that has to be done for each Data Assimilation or
 Optimization study, it can be worth to exploit the optimization results as part
 of a more complete study of the physical system of interest.
+
+.. _section_methodology_twin:
+
+To test a data assimilation chain: the twin experiments
+-------------------------------------------------------
+
+.. index:: single: data assimilation chain
+.. index:: single: twin experiments
+
+When developing an assimilation study, the various steps described above form
+what is known as a "data assimilation chain". The testing and analysis of this
+chain are critical to assess the confidence in the overall approach of the
+study.
+
+For this purpose, twin experiments are a classical and very useful tool, which
+allows to place oneself in a particular environment where simulations and
+expected errors can be controlled. Thus, methodological or numerical
+difficulties can be separated and identified, then corrected.
+
+The twin experiment approach can be schematized by the following figure, which
+presents the objective and the means of the approach:
+
+  .. _meth_twin_experiments:
+  .. image:: images/meth_twin_experiments.png
+    :align: center
+    :width: 75%
+  .. centered::
+    **The twin experiment approach to test and analyze a data assimilation (DA) chain**
+
+To simplify, the general approach to using the twin experiments methodology can
+be described as follows:
+
+- we choose in an arbitrary way a state called "true", which must be valid for the simulation ;
+- we then elaborate "pseudo-observations" from the simulation of the true state, by sampling the simulation in a similar way to real observations ;
+- we eventually incorporate noise, either in the true state, or in the pseudo-observations, or in the computational chain, and this in a coherent way with the hypotheses of elaboration of the chain, to see its effect on a specific part of the chain ;
+- we then analyze, according to the noise assumptions applied, the ability of the chain to recover the true state or expected differences.
+
+Thus, the methodology of twin experiments, applied several times and with
+different controlled hypotheses of noise or error, allows to verify step by
+step each component of the complete data assimilation chain.
index 5125c9b6cbc1598aef6cd1ee012d2dbf9c5285fd..d4cd0deec05ef07d6f87e2b8980092fb03a63419 100644 (file)
@@ -675,7 +675,8 @@ The hypothesis of the user case are the following ones. It is assumed:
 
 In order to try in a simple way this example of TUI calculation case, we choose
 for example the following entries, perfectly arbitrary, by building the
-observations by simulation in order to set a twin experiments case::
+observations by simulation in order to set a twin experiments case (for
+information, see the approach :ref:`section_methodology_twin`)::
 
     #
     # Artificial building of an example of user data
index 2fc9a8a243b44c40dcffda58dc44d5585c315fa5..30fa1d21d2118e92890421cf4d649e9f6746af45 100644 (file)
@@ -387,8 +387,9 @@ We continue to operate in a 3-dimensional space, in order to restrict
 the size of numerical object shown in the scripts, but the problem is
 not dependent of the dimension.
 
-We choose a twin experiment context, using a known true state
-:math:`\mathbf{x}^t` but of arbitrary value:
+We choose a twin experiment context (see the approach
+:ref:`section_methodology_twin`), using a known true state :math:`\mathbf{x}^t`
+but of arbitrary value:
 ::
 
     Xt = [1 2 3]
diff --git a/doc/fr/images/meth_twin_experiments.png b/doc/fr/images/meth_twin_experiments.png
new file mode 100644 (file)
index 0000000..a5afb9a
Binary files /dev/null and b/doc/fr/images/meth_twin_experiments.png differ
index 4df6b123d0155e75ee694f64155bdff1c0b2ca30..a38d0a742544c5752b592dfcb8594080304ff359 100644 (file)
@@ -250,3 +250,45 @@ Au-delà de cette analyse qui doit être réalisée pour chaque étude d'Assimil
 de Données ou d'Optimisation, il est très utile d'exploiter les résultats
 d'optimisation comme une partie intégrée dans une étude plus complète du système
 physique d'intérêt.
+
+.. _section_methodology_twin:
+
+Pour tester une chaîne d'assimilation de données : les expériences jumelles
+---------------------------------------------------------------------------
+
+.. index:: single: chaîne d'assimilation de données
+.. index:: single: expériences jumelles
+
+Lors de la mise au point d'une étude d'assimilation, les différentes étapes
+décrites ci-dessus forment ce que l'on appelle une "chaîne d'assimilation de
+données". Les tests et l'analyse de cette chaîne sont essentiels pour évaluer
+la confiance que l'on peut avoir dans la démarche globale de l'étude.
+
+Pour cela, les expériences jumelles forment un outil classique et très utile,
+qui permet de se placer dans un environnement particulier où les simulations et
+les erreurs attendues peuvent être contrôlées. Ainsi, les difficultés
+méthodologiques ou numériques peuvent être séparées et identifiées, puis
+corrigées.
+
+On peut schématiser l'approche par expériences jumelles par la figure qui suit,
+qui présente l'objectif et les moyens de la démarche :
+
+  .. _meth_twin_experiments:
+  .. image:: images/meth_twin_experiments.png
+    :align: center
+    :width: 75%
+  .. centered::
+    **La démarche d'expériences jumelles pour tester et analyser une chaîne d'assimilation de données (AD)**
+
+Pour simplifier, on peut décrire l'approche générale pour appliquer la
+méthodologie d'expériences jumelles de la manière suivante :
+
+- on choisit de manière arbitraire un état dit "vrai", qui doit être valide pour la simulation ;
+- on élabore ensuite des "pseudo-observations" à partir de la simulation de l'état vrai, en échantillonnant la simulation de manière similaire à de vraies observations ;
+- on incorpore éventuellement du bruit, soit dans l'état vrai, soit dans les pseudo-observations, soit dans la chaîne de calcul, et cela de manière cohérente avec les hypothèses d'élaboration de la chaîne, pour voir son effet sur une partie spécifique de la chaîne ;
+- on analyse ensuite, selon les hypothèses de bruit appliquées, la capacité de la chaîne à retrouver l'état vrai ou des différences attendues.
+
+Ainsi, la méthodologie d'expériences jumelles, appliquée plusieurs fois et avec
+des hypothèses contrôlées de bruit ou d'erreur différentes, permet alors de
+vérifier étape par étape chacune des composantes de la chaîne complète
+d'assimilation de données.
index c74dcafde79e4c9ad8d0e3ecf16565443e1e71e7..6676374c6a2fabfc807225e0b91a1504ee752922 100644 (file)
@@ -701,9 +701,10 @@ Les hypothèses du cas utilisateur sont les suivantes. On suppose :
 #. que l'utilisateur dispose en Python d'une fonction de simulation physique appelée ``simulation``, préalablement (bien) testée, qui transforme les 3 paramètres en résultats similaires aux observations,
 #. que l'exploitation indépendante, que l'utilisateur veut faire, est représentée ici par l'affichage simple de l'état initial, de l'état optimal, de la simulation en ce point, des états intermédiaires et du nombre d'itérations d'optimisation.
 
-Pour effectuer de manière simple cet essai de cas de calcul TUI, on se donne par
-exemple les entrées suivantes, parfaitement arbitraires, en construisant les
-observations par simulation pour se placer dans un cas d'expériences jumelles::
+Pour effectuer de manière simple cet essai de cas de calcul TUI, on se donne
+par exemple les entrées suivantes, parfaitement arbitraires, en construisant
+les observations par simulation pour se placer dans un cas d'expériences
+jumelles (pour mémoire, voir la démarche :ref:`section_methodology_twin`)::
 
     #
     # Construction artificielle d'un exemple de données utilisateur
index 240f48d9634842bb240efffd53ad59c8de5da032..8758d280c990dd5c76473df7c1c5beb93845ee95 100644 (file)
@@ -408,7 +408,8 @@ On continue à opérer dans un espace à 3 dimensions, afin de limiter la taille
 l'objet numérique indiqué dans les scripts, mais le problème ne dépend pas de la
 dimension.
 
-On choisit un contexte d'expériences jumelles, en utilisant un état vrai
+On choisit un contexte d'expériences jumelles (voir la démarche
+:ref:`section_methodology_twin`), en utilisant un état vrai
 :math:`\mathbf{x}^t` connu, mais de valeur arbitraire :
 ::