Salome HOME
Documentation corrections and modular evolution (1)
[modules/adao.git] / doc / fr / ref_algorithm_3DVAR.rst
1 ..
2    Copyright (C) 2008-2018 EDF R&D
3
4    This file is part of SALOME ADAO module.
5
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.
10
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.
15
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
19
20    See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
22    Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
23
24 .. index:: single: 3DVAR
25 .. _section_ref_algorithm_3DVAR:
26
27 Algorithme de calcul "*3DVAR*"
28 ------------------------------
29
30 Description
31 +++++++++++
32
33 Cet algorithme réalise une estimation d'état par minimisation variationnelle de
34 la fonctionnelle :math:`J` d'écart classique en assimilation de données
35 statique:
36
37 .. math:: J(\mathbf{x})=(\mathbf{x}-\mathbf{x}^b)^T.\mathbf{B}^{-1}.(\mathbf{x}-\mathbf{x}^b)+(\mathbf{y}^o-H(\mathbf{x}))^T.\mathbf{R}^{-1}.(\mathbf{y}^o-H(\mathbf{x}))
38
39 qui est usuellement désignée comme la fonctionnelle "*3D-VAR*" (voir par exemple
40 [Talagrand97]_).
41
42 Commandes requises et optionnelles
43 ++++++++++++++++++++++++++++++++++
44
45 Les commandes requises générales, disponibles dans l'interface en édition, sont
46 les suivantes:
47
48   .. include:: snippets/Background.rst
49
50   .. include:: snippets/BackgroundError.rst
51
52   .. include:: snippets/Observation.rst
53
54   .. include:: snippets/ObservationError.rst
55
56   .. include:: snippets/ObservationOperator.rst
57
58 Les commandes optionnelles générales, disponibles dans l'interface en édition,
59 sont indiquées dans la :ref:`section_ref_assimilation_keywords`. De plus, les
60 paramètres de la commande "*AlgorithmParameters*" permettent d'indiquer les
61 options particulières, décrites ci-après, de l'algorithme. On se reportera à la
62 :ref:`section_ref_options_Algorithm_Parameters` pour le bon usage de cette
63 commande.
64
65 Les options de l'algorithme sont les suivantes:
66
67   Minimizer
68     .. index:: single: Minimizer
69
70     Cette clé permet de changer le minimiseur pour l'optimiseur. Le choix par
71     défaut est "LBFGSB", et les choix possibles sont "LBFGSB" (minimisation non
72     linéaire sous contraintes, voir [Byrd95]_, [Morales11]_ et [Zhu97]_), "TNC"
73     (minimisation non linéaire sous contraintes), "CG" (minimisation non
74     linéaire sans contraintes), "BFGS" (minimisation non linéaire sans
75     contraintes), "NCG" (minimisation de type gradient conjugué de Newton). Il
76     est fortement conseillé de conserver la valeur par défaut.
77
78     Exemple :
79     ``{"Minimizer":"LBFGSB"}``
80
81   .. include:: snippets/BoundsWithNone.rst
82
83   .. include:: snippets/MaximumNumberOfSteps.rst
84
85   .. include:: snippets/CostDecrementTolerance.rst
86
87   .. include:: snippets/ProjectedGradientTolerance.rst
88
89   .. include:: snippets/GradientNormTolerance.rst
90
91   StoreSupplementaryCalculations
92     .. index:: single: StoreSupplementaryCalculations
93
94     Cette liste indique les noms des variables supplémentaires qui peuvent être
95     disponibles à la fin de l'algorithme. Cela implique potentiellement des
96     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
97     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
98     possibles sont dans la liste suivante : ["APosterioriCorrelations",
99     "APosterioriCovariance", "APosterioriStandardDeviations",
100     "APosterioriVariances", "BMA", "CostFunctionJ", "CostFunctionJb",
101     "CostFunctionJo", "CostFunctionJAtCurrentOptimum",
102     "CostFunctionJbAtCurrentOptimum", "CostFunctionJoAtCurrentOptimum",
103     "CurrentOptimum", "CurrentState", "IndexOfOptimum", "Innovation",
104     "InnovationAtCurrentState", "MahalanobisConsistency", "OMA", "OMB",
105     "SigmaObs2", "SimulatedObservationAtBackground",
106     "SimulatedObservationAtCurrentOptimum",
107     "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum",
108     "SimulationQuantiles"].
109
110     Exemple :
111     ``{"StoreSupplementaryCalculations":["BMA", "Innovation"]}``
112
113   .. include:: snippets/Quantiles.rst
114
115   .. include:: snippets/SetSeed.rst
116
117   .. include:: snippets/NumberOfSamplesForQuantiles.rst
118
119   .. include:: snippets/SimulationForQuantiles.rst
120
121 Informations et variables disponibles à la fin de l'algorithme
122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
123
124 En sortie, après exécution de l'algorithme, on dispose d'informations et de
125 variables issues du calcul. La description des
126 :ref:`section_ref_output_variables` indique la manière de les obtenir par la
127 méthode nommée ``get`` de la variable "*ADD*" du post-processing. Les variables
128 d'entrée, mises à disposition de l'utilisateur en sortie pour faciliter
129 l'écriture des procédures de post-processing, sont décrites dans
130 l':ref:`subsection_r_o_v_Inventaire`.
131
132 Les sorties non conditionnelles de l'algorithme sont les suivantes:
133
134   .. include:: snippets/Analysis.rst
135
136   .. include:: snippets/CostFunctionJ.rst
137
138   .. include:: snippets/CostFunctionJb.rst
139
140   .. include:: snippets/CostFunctionJo.rst
141
142 Les sorties conditionnelles de l'algorithme sont les suivantes:
143
144   .. include:: snippets/APosterioriCorrelations.rst
145
146   .. include:: snippets/APosterioriCovariance.rst
147
148   .. include:: snippets/APosterioriStandardDeviations.rst
149
150   .. include:: snippets/APosterioriVariances.rst
151
152   .. include:: snippets/BMA.rst
153
154   .. include:: snippets/CostFunctionJAtCurrentOptimum.rst
155
156   .. include:: snippets/CostFunctionJbAtCurrentOptimum.rst
157
158   .. include:: snippets/CostFunctionJoAtCurrentOptimum.rst
159
160   .. include:: snippets/CurrentOptimum.rst
161
162   .. include:: snippets/CurrentState.rst
163
164   .. include:: snippets/IndexOfOptimum.rst
165
166   .. include:: snippets/Innovation.rst
167
168   .. include:: snippets/InnovationAtCurrentState.rst
169
170   .. include:: snippets/MahalanobisConsistency.rst
171
172   .. include:: snippets/OMA.rst
173
174   .. include:: snippets/OMB.rst
175
176   .. include:: snippets/SigmaObs2.rst
177
178   .. include:: snippets/SimulatedObservationAtBackground.rst
179
180   .. include:: snippets/SimulatedObservationAtCurrentOptimum.rst
181
182   .. include:: snippets/SimulatedObservationAtCurrentState.rst
183
184   .. include:: snippets/SimulatedObservationAtOptimum.rst
185
186   .. include:: snippets/SimulationQuantiles.rst
187
188 Voir aussi
189 ++++++++++
190
191 Références vers d'autres sections :
192   - :ref:`section_ref_algorithm_Blue`
193   - :ref:`section_ref_algorithm_ExtendedBlue`
194   - :ref:`section_ref_algorithm_LinearityTest`
195
196 Références bibliographiques :
197   - [Byrd95]_
198   - [Morales11]_
199   - [Talagrand97]_
200   - [Zhu97]_