2 Copyright (C) 2008-2014 EDF R&D
4 This file is part of SALOME ADAO module.
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Lesser General Public
8 License as published by the Free Software Foundation; either
9 version 2.1 of the License, or (at your option) any later version.
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Lesser General Public License for more details.
16 You should have received a copy of the GNU Lesser General Public
17 License along with this library; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
24 .. index:: single: ASSIMILATION_STUDY
25 .. _section_ref_assimilation_keywords:
27 Liste des commandes et mots-clés pour un cas d'assimilation de données ou d'optimisation
28 ----------------------------------------------------------------------------------------
30 .. index:: single: Algorithm
31 .. index:: single: AlgorithmParameters
32 .. index:: single: Background
33 .. index:: single: BackgroundError
34 .. index:: single: ControlInput
35 .. index:: single: Debug
36 .. index:: single: EvolutionError
37 .. index:: single: EvolutionModel
38 .. index:: single: InputVariables
39 .. index:: single: Observation
40 .. index:: single: ObservationError
41 .. index:: single: ObservationOperator
42 .. index:: single: Observer
43 .. index:: single: Observers
44 .. index:: single: Observer Template
45 .. index:: single: OutputVariables
46 .. index:: single: Study_name
47 .. index:: single: Study_repertory
48 .. index:: single: UserDataInit
49 .. index:: single: UserPostAnalysis
50 .. index:: single: UserPostAnalysis Template
52 Ce jeu de commandes est lié à la description d'un cas de calcul, qui est une
53 procédure d'*Assimilation de Données* ou d'*Optimisation*. Les termes sont
54 classés par ordre alphabétique, sauf le premier, qui décrit le choix entre le
55 calcul ou la vérification.
57 Les différentes commandes sont les suivantes:
59 **ASSIMILATION_STUDY**
60 *Commande obligatoire*. C'est la commande générale qui décrit le cas
61 d'assimilation de données ou d'optimisation. Elle contient hiérarchiquement
62 toutes les autres commandes.
65 *Commande obligatoire*. C'est une chaîne de caractère qui indique
66 l'algorithme d'assimilation de données ou d'optimisation choisi. Les choix
67 sont limités et disponibles à travers l'interface graphique. Il existe par
68 exemple le "3DVAR", le "Blue"... Voir plus loin la liste des algorithmes et
69 des paramètres associés, chacun décrit par une sous-section.
72 *Commande optionnelle*. Elle permet d'ajouter des paramètres optionnels pour
73 contrôler l'algorithme d'assimilation de données ou d'optimisation. Sa
74 valeur est définie comme un objet de type "*Dict*". Voir la
75 :ref:`section_ref_options_AlgorithmParameters` pour l'usage correct de cette
79 *Commande obligatoire*. Elle définit le vecteur d'ébauche ou
80 d'initialisation, noté précédemment :math:`\mathbf{x}^b`. Sa valeur est
81 définie comme un objet de type "*Vector*".
84 *Commande obligatoire*. Elle définit la matrice de covariance des erreurs
85 d'ébauche, notée précédemment :math:`\mathbf{B}`. Sa valeur est définie
86 comme un objet de type "*Matrix*", de type "*ScalarSparseMatrix*", ou de
87 type "*DiagonalSparseMatrix*".
90 *Commande optionnelle*. Elle indique le vecteur de contrôle utilisé pour
91 forcer le modèle d'évolution à chaque pas, usuellement noté
92 :math:`\mathbf{U}`. Sa valeur est définie comme un objet de type "*Vector*"
93 ou de type "*VectorSerie*". Lorsqu'il n'y a pas de contrôle, sa valeur doit
94 être une chaîne vide ''.
97 *Commande optionnelle*. Elle définit le niveau de sorties et d'informations
98 intermédiaires de débogage. Les choix sont limités entre 0 (pour False) et
102 *Commande optionnelle*. Elle définit la matrice de covariance des erreurs
103 d'évolution, usuellement notée :math:`\mathbf{Q}`. Sa valeur est définie
104 comme un objet de type "*Matrix*", de type "*ScalarSparseMatrix*", ou de
105 type "*DiagonalSparseMatrix*".
108 *Commande optionnelle*. Elle indique l'opérateur d'évolution du modèle,
109 usuellement noté :math:`M`, qui décrit un pas élémentaire d'évolution. Sa
110 valeur est définie comme un objet de type "*Function*" ou de type
111 "*Matrix*". Dans le cas du type "*Function*", différentes formes
112 fonctionnelles peuvent être utilisées, comme décrit dans la section
113 :ref:`section_ref_operator_requirements`. Si un contrôle :math:`U` est
114 inclus dans le modèle d'évolution, l'opérateur doit être appliqué à une
118 *Commande optionnelle*. Elle permet d'indiquer le nom et la taille des
119 variables physiques qui sont rassemblées dans le vecteur d'état. Cette
120 information est destinée à être utilisée dans le traitement algorithmique
124 *Commande obligatoire*. Elle définit le vecteur d'observation utilisé en
125 assimilation de données ou en optimisation, et noté précédemment
126 :math:`\mathbf{y}^o`. Sa valeur est définie comme un objet de type "*Vector*"
127 ou de type "*VectorSerie*".
130 *Commande obligatoire*. Elle définit la matrice de covariance des erreurs
131 d'ébauche, notée précédemment :math:`\mathbf{R}`. Sa valeur est définie
132 comme un objet de type "*Matrix*", de type "*ScalarSparseMatrix*", ou de
133 type "*DiagonalSparseMatrix*".
136 *Commande obligatoire*. Elle indique l'opérateur d'observation, noté
137 précédemment :math:`H`, qui transforme les paramètres d'entrée
138 :math:`\mathbf{x}` en résultats :math:`\mathbf{y}` qui sont à comparer aux
139 observations :math:`\mathbf{y}^o`. Sa valeur est définie comme un objet de
140 type "*Function*" ou de type "*Matrix*". Dans le cas du type "*Function*",
141 différentes formes fonctionnelles peuvent être utilisées, comme décrit dans
142 la section :ref:`section_ref_operator_requirements`. Si un contrôle
143 :math:`U` est inclus dans le modèle d'observation, l'opérateur doit être
144 appliqué à une paire :math:`(X,U)`.
147 *Commande optionnelle*. Elle permet de définir des observateurs internes,
148 qui sont des fonctions liées à une variable particulière, qui sont exécutées
149 chaque fois que cette variable est modifiée. C'est une manière pratique de
150 suivre des variables d'intérêt durant le processus d'assimilation de données
151 ou d'optimisation, en l'affichant ou en la traçant, etc. Des exemples
152 courants (squelettes) sont fournis pour aider l'utilisateur ou pour
153 faciliter l'élaboration d'un cas.
156 *Commande optionnelle*. Elle permet d'indiquer le nom et la taille des
157 variables physiques qui sont rassemblées dans le vecteur d'observation.
158 Cette information est destinée à être utilisée dans le traitement
159 algorithmique interne des données.
162 *Commande obligatoire*. C'est une chaîne de caractères quelconque pour
163 décrire l'étude ADAO par un nom ou une déclaration.
166 *Commande optionnelle*. S'il existe, ce répertoire est utilisé comme base
167 pour les calculs, et il est utilisé pour trouver les fichiers de script,
168 donnés par nom sans répertoire, qui peuvent être utilisés pour définir
172 *Commande optionnelle*. Elle permet d'initialiser certains paramètres ou
173 certaines données automatiquement avant le traitement de données d'entrée
174 pour l'assimilation de données ou l'optimisation. Pour cela, elle indique un
175 nom de fichier de script à exécuter avant d'entrer dans l'initialisation des
179 *Commande optionnelle*. Elle permet de traiter des paramètres ou des
180 résultats après le déroulement de l'algorithme d'assimilation de données ou
181 d'optimisation. Sa valeur est définie comme un fichier script ou une chaîne
182 de caractères, permettant de produire directement du code de post-processing
183 dans un cas ADAO. Des exemples courants (squelettes) sont fournis pour aider
184 l'utilisateur ou pour faciliter l'élaboration d'un cas.