Salome HOME
Documentation and references update for variants
authorJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Tue, 23 Feb 2021 20:08:31 +0000 (21:08 +0100)
committerJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Tue, 23 Feb 2021 20:08:31 +0000 (21:08 +0100)
16 files changed:
doc/en/bibliography.rst
doc/en/ref_algorithm_3DVAR.rst
doc/en/ref_algorithm_EnsembleKalmanFilter.rst
doc/en/snippets/Minimizer_DE.rst
doc/en/snippets/Minimizer_DFO.rst
doc/en/snippets/Minimizer_xDVAR.rst
doc/en/snippets/Variant_3DVAR.rst [new file with mode: 0644]
doc/en/snippets/Variant_EnKF.rst [new file with mode: 0644]
doc/fr/bibliography.rst
doc/fr/ref_algorithm_3DVAR.rst
doc/fr/ref_algorithm_EnsembleKalmanFilter.rst
doc/fr/snippets/Minimizer_DE.rst
doc/fr/snippets/Minimizer_DFO.rst
doc/fr/snippets/Minimizer_xDVAR.rst
doc/fr/snippets/Variant_3DVAR.rst [new file with mode: 0644]
doc/fr/snippets/Variant_EnKF.rst [new file with mode: 0644]

index 0626edcd372a4787a6ff57052bff2bd1fb0c01e2..f57c67701e045dd2bdf0f7b1ad6124ae5d36779d 100644 (file)
@@ -47,6 +47,10 @@ Bibliography
 
 .. [Chakraborty08] Chakraborty U.K., *Advances in differential evolution*, Studies in computational intelligence, Vol.143, Springer, 2008
 
+.. [Cohn98] Cohn S. E., Da Silva A., Guo J., Sienkiewicz M., Lamich D., *Assessing the effects of data selection with the DAO Physical-space Statistical Analysis System*, Monthly Weather Review, 126, pp.2913–2926, 1998
+
+.. [Courtier94] Courtier P., Thépaut J.-N., Hollingsworth A., *A strategy for operational implementation of 4D-Var, using an incremental approach*, Quarterly Journal of the Royal Meteorological Society, 120, pp.1367–1387, 1994
+
 .. [Das11] Das S., Suganthan P. N., *Differential Evolution: A Survey of the State-of-the-art*, IEEE Transactions on Evolutionary Computation, 15(1), pp.4-31, 2011
 
 .. [Das16] Das S., Mullick S. S., Suganthan P. N., *Recent Advances in Differential Evolution - An Updated Survey*, Swarm and Evolutionary Computation, 27, pp.1-30, 2016
@@ -69,6 +73,12 @@ Bibliography
 
 .. [Koenker01] Koenker R., Hallock K. F., *Quantile Regression*, Journal of Economic Perspectives, 15(4), pp.143-156, 2001
 
+.. [LeDimet86] Le Dimet F.-X., Talagrand 0., *Variational algorithms for analysis and assimilation of meteorological observations*, Tellus, 38A, pp.97-110, 1986
+
+.. [Lorenc86] Lorenc A. C., *Analysis methods for numerical weather prediction*, Quarterly Journal of the Royal Meteorological Society, 112, pp.1177-1194, 1986
+
+.. [Lorenc88] Lorenc A. C., *Optimal nonlinear objective analysis*, Quarterly Journal of the Royal Meteorological Society, 114, pp.205–240, 1988
+
 .. [Morales11] Morales J. L., Nocedal J., *L-BFGS-B: Remark on Algorithm 778: L-BFGS-B, FORTRAN routines for large scale bound constrained optimization*, ACM Transactions on Mathematical Software, 38(1), 2011
 
 .. [Nelder65] Nelder J. A., Mead R., *A simplex method for function minimization*, The Computer Journal, 7, pp.308-313, 1965
index cca9e82782cf31d731658e37ff1088832c5dd635..de5b59725e3356c47b260ffb53b2c638889d3e39 100644 (file)
@@ -121,6 +121,8 @@ StoreSupplementaryCalculations
   Example :
   ``{"StoreSupplementaryCalculations":["BMA", "CurrentState"]}``
 
+.. include:: snippets/Variant_3DVAR.rst
+
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo04.rst
 
@@ -217,6 +219,11 @@ StoreSupplementaryCalculations
 .. include:: snippets/Header2Algo07.rst
 
 - [Byrd95]_
+- [Cohn98]_
+- [Courtier94]_
+- [LeDimet86]_
+- [Lorenc86]_
+- [Lorenc88]_
 - [Morales11]_
 - [Talagrand97]_
 - [Zhu97]_
index afc1066e7eaf727e85c2c43f6540fe03e1b87eaa..d09c8509fa6ff9509b4c467fba05031b49c701e6 100644 (file)
@@ -31,9 +31,9 @@ Calculation algorithm "*EnsembleKalmanFilter*"
 .. include:: snippets/Header2Algo01.rst
 
 This algorithm realizes an estimation of the state of a dynamic system by a
-Ensemble Kalman Filter (EnKF), avoiding to have to perform the tangent and
+Ensemble Kalman Filter (EnKF), avoiding to have to perform the tangent or
 adjoint operators for the observation and evolution operators, as in the simple
-or extended Kalman filter.
+or extended Kalman filters.
 
 It applies to non-linear observation and incremental evolution (process)
 operators with excellent robustness and performance qualities. It can be
@@ -52,6 +52,16 @@ In case of linear of "slightly" non-linear operators, one can easily use the
 to evaluate on small systems. One can verify the linearity of the operators
 with the help of the :ref:`section_ref_algorithm_LinearityTest`.
 
+There exists a lot of variants of this algorithm. Stable and robust ones are proposed here:
+
+- "EnKF" (Ensemble Kalman Filter), original stochastic algorithm, allowing consistent treatment of non-linear evolution operator,
+- "ETKF" (Ensemble-Transform Kalman Filter), deterministic EnKF algorithm, allowing treatment of non-linear evolution operator with a lot less members (one recommends to use a number of members on the order of 10 or even sometimes less),
+- "ETKF-N" (Ensemble-Transform Kalman Filter of finite size N), ETKF algorithm of "finite size N", yhat doesn't need inflation that is often required with the other algorithms,
+- "MLEF" (Maximum Likelihood Kalman Filter), deterministic EnKF scheme, allowing in addition the consistent treament of non-linear observation operator,
+- "IEnKF" (Iterative_EnKF), deterministic EnKF scheme, improving treament of operators non-linearities.
+
+Without being a universal recommandation, one recommend to use EnKF as a reference algorithm, and the other algorithms (in this order) as means to obtain less costly data assimilation with hopefully the same quality.
+
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo02.rst
 
@@ -114,6 +124,8 @@ StoreSupplementaryCalculations
   Example :
   ``{"StoreSupplementaryCalculations":["BMA", "CurrentState"]}``
 
+.. include:: snippets/Variant_EnKF.rst
+
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo04.rst
 
index b85bf180295dbd9eb252e92699d1cd787a70eac1..d2e9229319bc8117ff07d3bd4197849152077400 100644 (file)
@@ -1,4 +1,15 @@
-.. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; BEST1BIN",
+    pair: Minimizer ; BEST1EXP",
+    pair: Minimizer ; RAND1EXP",
+    pair: Minimizer ; RANDTOBEST1EXP
+    pair: Minimizer ; BEST2EXP
+    pair: Minimizer ; RAND2EXP
+    pair: Minimizer ; RANDTOBEST1BIN
+    pair: Minimizer ; BEST2BIN
+    pair: Minimizer ; RAND2BIN
+    pair: Minimizer ; RAND1BIN
 
 Minimizer
   *Predefined name*. This key allows to choose the optimization strategy for
@@ -6,15 +17,15 @@ Minimizer
   the multiples crossover and mutation strategies, are
   "BEST1BIN",
   "BEST1EXP",
-  "RAND1EXP",
-  "RANDTOBEST1EXP",
+  "BEST2BIN",
   "BEST2EXP",
+  "RAND1BIN",
+  "RAND1EXP",
+  "RAND2BIN",
   "RAND2EXP",
   "RANDTOBEST1BIN",
-  "BEST2BIN",
-  "RAND2BIN",
-  "RAND1BIN".
-  It is greatly recommanded to keep the default value.
+  "RANDTOBEST1EXP".
+  It is highly recommended to keep the default value.
 
   Example:
   ``{"Minimizer":"BEST1BIN"}``
index ae8fba210edc76ccb248c9c7cc846c5e3ce8ccf6..4c103b7f4143c55f8ad6761185eed39ec05b27df 100644 (file)
@@ -1,14 +1,21 @@
-.. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; BOBYQA
+    pair: Minimizer ; COBYLA
+    pair: Minimizer ; NEWUOA
+    pair: Minimizer ; POWELL
+    pair: Minimizer ; SIMPLEX
+    pair: Minimizer ; SUBPLEX
 
 Minimizer
   *Predefined name*. This key allows to choose the optimization minimizer. The
   default choice is "BOBYQA", and the possible ones are
-  "BOBYQA" (minimization with or without constraints by quadratic approximation [Powell09]_),
-  "COBYLA" (minimization with or without constraints by linear approximation [Powell94]_ [Powell98]_).
-  "NEWUOA" (minimization with or without constraints by iterative quadratic approximation [Powell04]_),
-  "POWELL" (minimization unconstrained using conjugate directions [Powell64]_),
-  "SIMPLEX" (minimization with or without constraints using Nelder-Mead simplex algorithm [Nelder65]_),
-  "SUBPLEX" (minimization with or without constraints using Nelder-Mead on a sequence of subspaces [Rowan90]_).
+  "BOBYQA" (minimization with or without constraints by quadratic approximation, see [Powell09]_),
+  "COBYLA" (minimization with or without constraints by linear approximation, see [Powell94]_ [Powell98]_).
+  "NEWUOA" (minimization with or without constraints by iterative quadratic approximation, see [Powell04]_),
+  "POWELL" (minimization unconstrained using conjugate directions, see [Powell64]_),
+  "SIMPLEX" (minimization with or without constraints using Nelder-Mead simplex algorithm, see [Nelder65]_),
+  "SUBPLEX" (minimization with or without constraints using Nelder-Mead on a sequence of subspaces, see [Rowan90]_).
   Remark: the "POWELL" method perform a dual outer/inner loops optimization,
   leading then to less control on the cost function evaluation number because
   it is the outer loop limit than is controlled. If precise control on the
index ed4f589e42e39182a5f3dbe55d4d050142de81fb..c412afaed15020ced2d9ecdc9afb85b44244ff23 100644 (file)
@@ -1,9 +1,15 @@
-  .. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; LBFGSB
+    pair: Minimizer ; TNC
+    pair: Minimizer ; CG
+    pair: Minimizer ; BFGS
+    pair: Minimizer ; NCG
 
 Minimizer
   *Predefined name*. This key allows to choose the optimization minimizer. The
   default choice is "LBFGSB", and the possible ones are
-  "LBFGSB" (nonlinear constrained minimizer, see [Byrd95]_, [Morales11]_ and [Zhu97]_),
+  "LBFGSB" (nonlinear constrained minimizer, see [Byrd95]_, [Morales11]_, [Zhu97]_),
   "TNC" (nonlinear constrained minimizer),
   "CG" (nonlinear unconstrained minimizer),
   "BFGS" (nonlinear unconstrained minimizer),
@@ -12,4 +18,3 @@ Minimizer
 
   Example :
   ``{"Minimizer":"LBFGSB"}``
-
diff --git a/doc/en/snippets/Variant_3DVAR.rst b/doc/en/snippets/Variant_3DVAR.rst
new file mode 100644 (file)
index 0000000..f23494e
--- /dev/null
@@ -0,0 +1,19 @@
+.. index::
+    single: Variant
+    pair: Variant ; 3DVAR
+    pair: Variant ; 3DVAR-VAN
+    pair: Variant ; 3DVAR-Incr
+    pair: Variant ; 3DVAR-PSAS
+
+Variant
+  *Predifined name*.  This key allows to choose one of the possible variants
+  for the main algorithm. The default variant is the original "3DVAR", and the
+  possible ones are
+  "3DVAR" (3D Variational analysis, see [Lorenc86]_, [LeDimet86]_, [Talagrand97]_),
+  "3DVAR-VAN" (3D Variational Analysis with No inversion of B, see [Lorenc88]_),
+  "3DVAR-Incr" (Incremental 3DVAR, see [Courtier94]_),
+  "3DVAR-PSAS" (Physical-space Statistical Analysis Scheme for 3DVAR, see [Cohn98]_),
+  It is highly recommended to keep the default value.
+
+  Exemple :
+  ``{"Variant":"3DVAR"}``
diff --git a/doc/en/snippets/Variant_EnKF.rst b/doc/en/snippets/Variant_EnKF.rst
new file mode 100644 (file)
index 0000000..82a6473
--- /dev/null
@@ -0,0 +1,23 @@
+.. index::
+    single: Variant
+    pair: Variant ; EnKF
+    pair: Variant ; ETKF
+    pair: Variant ; ETKF-N
+    pair: Variant ; MLEF
+    pair: Variant ; IEnKF
+
+Variant
+  *Predifined name*.  This key allows to choose one of the possible variants
+  for the main algorithm. The default variant is the original "EnKF", and the
+  possible ones are
+  "EnKF" (Ensemble Kalman Filter),
+  "ETKF" (Ensemble-Transform Kalman Filter),
+  "ETKF-N" (Ensemble-Transform Kalman Filter),
+  "MLEF" (Maximum Likelihood Kalman Filter),
+  "IEnKF" (Iterative_EnKF).
+  One recommends to try the "ETKF-N" or "IEnKF" variants, and to reduce the
+  number of members to about 10 or less for all variants other then the
+  original "EnKF".
+
+  Example :
+  ``{"Variant":"EnKF"}``
index 76f5dfe3bf9be7568bcae9b6c54bb13bf09f3892..a73cae8992c5075fadd34358247970e59b15132d 100644 (file)
@@ -47,6 +47,10 @@ Bibliographie
 
 .. [Chakraborty08] Chakraborty U.K., *Advances in differential evolution*, Studies in computational intelligence, Vol.143, Springer, 2008
 
+.. [Cohn98] Cohn S. E., Da Silva A., Guo J., Sienkiewicz M., Lamich D., *Assessing the effects of data selection with the DAO Physical-space Statistical Analysis System*, Monthly Weather Review, 126, pp.2913–2926, 1998
+
+.. [Courtier94] Courtier P., Thépaut J.-N., Hollingsworth A., *A strategy for operational implementation of 4D-Var, using an incremental approach*, Quarterly Journal of the Royal Meteorological Society, 120, pp.1367–1387, 1994
+
 .. [Das11] Das S., Suganthan P. N., *Differential Evolution: A Survey of the State-of-the-art*, IEEE Transactions on Evolutionary Computation, 15(1), pp.4-31, 2011
 
 .. [Das16] Das S., Mullick S. S., Suganthan P. N., *Recent Advances in Differential Evolution - An Updated Survey*, Swarm and Evolutionary Computation, 27, pp.1-30, 2016
@@ -69,6 +73,12 @@ Bibliographie
 
 .. [Koenker01] Koenker R., Hallock K. F., *Quantile Regression*, Journal of Economic Perspectives, 15(4), pp.143-156, 2001
 
+.. [LeDimet86] Le Dimet F.-X., Talagrand 0., *Variational algorithms for analysis and assimilation of meteorological observations*, Tellus, 38A, pp.97-110, 1986
+
+.. [Lorenc86] Lorenc A. C., *Analysis methods for numerical weather prediction*, Quarterly Journal of the Royal Meteorological Society, 112, pp.1177-1194, 1986
+
+.. [Lorenc88] Lorenc A. C., *Optimal nonlinear objective analysis*, Quarterly Journal of the Royal Meteorological Society, 114, pp.205–240, 1988
+
 .. [Morales11] Morales J. L., Nocedal J., *L-BFGS-B: Remark on Algorithm 778: L-BFGS-B, FORTRAN routines for large scale bound constrained optimization*, ACM Transactions on Mathematical Software, 38(1), 2011
 
 .. [Nelder65] Nelder J. A., Mead R., *A simplex method for function minimization*, The Computer Journal, 7, pp.308-313, 1965
index 641a25de704ea453ea8e2579c4e6c8825eddf1f6..2bb864eb0397420211575f725942c29f9443aebd 100644 (file)
@@ -124,6 +124,8 @@ StoreSupplementaryCalculations
   Exemple :
   ``{"StoreSupplementaryCalculations":["BMA", "CurrentState"]}``
 
+.. include:: snippets/Variant_3DVAR.rst
+
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo04.rst
 
@@ -220,6 +222,11 @@ StoreSupplementaryCalculations
 .. include:: snippets/Header2Algo07.rst
 
 - [Byrd95]_
+- [Cohn98]_
+- [Courtier94]_
+- [LeDimet86]_
+- [Lorenc86]_
+- [Lorenc88]_
 - [Morales11]_
 - [Talagrand97]_
 - [Zhu97]_
index ba788a5d1ee3d6dcc550db35b07eca8f34d69d4d..ab484882f0b71dbbc361ec39899e002c467e0c2e 100644 (file)
@@ -53,12 +53,15 @@ l':ref:`section_ref_algorithm_KalmanFilter`, qui sont souvent largement moins
 coûteux en évaluations sur de petits systèmes. On peut vérifier la linéarité
 des opérateurs à l'aide de l':ref:`section_ref_algorithm_LinearityTest`.
 
-Les variantes de cette algorithme sont nombreuses, et on propose ici les versions stables et robustes suivantes :
-- "EnKF" (Ensemble Kalman Filter), algorithme stochastique, permettant de traiter de manière consistante un opérateur d'évolution non-linéaire,
-- "ETKF" (Ensemble-Transform Kalman Filter), algorithme déterministe d'EnKF, permettant de traiter un opérateur d'évolution non-linéaire avec beaucoup moins de membres,
-- "ETKF-N" (Ensemble-Transform Kalman Filter of finite size N), algorithme d'ETKF dit de "taille finie N", évitant de recourir l'inflation
-- "MLEF" (Maximum Likelihood Kalman Filter), schéma déterministe d'EnKF permettant en plus de traiter de manière consistante un opérateur d'observation non-linéaire),
-- "IEnKF" (Iterative_EnKF),
+Il existe de nombreuses variantes de cet algorithme. On propose ici des formes stables et robustes suivantes :
+
+- "EnKF" (Ensemble Kalman Filter), algorithme stochastique original, permettant de traiter de manière consistante un opérateur d'évolution non-linéaire,
+- "ETKF" (Ensemble-Transform Kalman Filter), algorithme déterministe d'EnKF, permettant de traiter un opérateur d'évolution non-linéaire avec beaucoup moins de membres (on recommande d'utiliser un nombre de membres de l'ordre de 10 ou même parfois moins),
+- "ETKF-N" (Ensemble-Transform Kalman Filter of finite size N), algorithme d'ETKF dit de "taille finie N", évitant de recourir à une inflation souvent nécessaire avec les autres algorithms
+- "MLEF" (Maximum Likelihood Kalman Filter), schéma déterministe d'EnKF, permettant en plus de traiter de manière consistante un opérateur d'observation non-linéaire),
+- "IEnKF" (Iterative_EnKF), schéma déterministe d'EnKF, améliorant le traitement des non-linéarités des opérateurs.
+
+Sans pouvoir prétendre à l'universalité, on recommande d'utiliser l'EnKF comme référence, et les autres algorithmes (dans l'ordre) comme des moyens pour obtenir une assimilation de données plus économique et de qualité éventuellement similaire.
 
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo02.rst
@@ -123,6 +126,8 @@ StoreSupplementaryCalculations
   Exemple :
   ``{"StoreSupplementaryCalculations":["BMA", "CurrentState"]}``
 
+.. include:: snippets/Variant_EnKF.rst
+
 .. ------------------------------------ ..
 .. include:: snippets/Header2Algo04.rst
 
index 013431618ff0ff79202b5b167f3850b6ebc0ab96..74132e3223f654e5fc1c1b233418b44204ffa003 100644 (file)
@@ -1,4 +1,15 @@
-.. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; BEST1BIN",
+    pair: Minimizer ; BEST1EXP",
+    pair: Minimizer ; RAND1EXP",
+    pair: Minimizer ; RANDTOBEST1EXP
+    pair: Minimizer ; BEST2EXP
+    pair: Minimizer ; RAND2EXP
+    pair: Minimizer ; RANDTOBEST1BIN
+    pair: Minimizer ; BEST2BIN
+    pair: Minimizer ; RAND2BIN
+    pair: Minimizer ; RAND1BIN
 
 Minimizer
   *Nom prédéfini*. Cette clé permet de changer la stratégie de minimisation
@@ -7,14 +18,14 @@ Minimizer
   décrites par les clés
   "BEST1BIN",
   "BEST1EXP",
-  "RAND1EXP",
-  "RANDTOBEST1EXP",
+  "BEST2BIN",
   "BEST2EXP",
+  "RAND1BIN",
+  "RAND1EXP",
+  "RAND2BIN",
   "RAND2EXP",
   "RANDTOBEST1BIN",
-  "BEST2BIN",
-  "RAND2BIN",
-  "RAND1BIN".
+  "RANDTOBEST1EXP".
   Il est fortement conseillé de conserver la valeur par défaut.
 
   Exemple :
index ebbc3745858afe1752a406611c77517cd3b7c963..db11d592f699c351517f7a3ea995940df8127379 100644 (file)
@@ -1,14 +1,21 @@
-.. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; BOBYQA
+    pair: Minimizer ; COBYLA
+    pair: Minimizer ; NEWUOA
+    pair: Minimizer ; POWELL
+    pair: Minimizer ; SIMPLEX
+    pair: Minimizer ; SUBPLEX
 
 Minimizer
   *Nom prédéfini*. Cette clé permet de changer le minimiseur pour l'optimiseur.
   Le choix par défaut est "BOBYQA", et les choix possibles sont
-  "BOBYQA" (minimisation avec ou sans contraintes par approximation quadratique [Powell09]_),
-  "COBYLA" (minimisation avec ou sans contraintes par approximation linéaire [Powell94]_ [Powell98]_).
-  "NEWUOA" (minimisation avec ou sans contraintes par approximation quadratique itérative [Powell04]_),
-  "POWELL" (minimisation sans contraintes de type directions conjuguées [Powell64]_),
+  "BOBYQA" (minimisation avec ou sans contraintes par approximation quadratique, voir [Powell09]_),
+  "COBYLA" (minimisation avec ou sans contraintes par approximation linéaire, voir [Powell94]_ [Powell98]_).
+  "NEWUOA" (minimisation avec ou sans contraintes par approximation quadratique itérative, voir [Powell04]_),
+  "POWELL" (minimisation sans contraintes de type directions conjuguées, voir [Powell64]_),
   "SIMPLEX" (minimisation avec ou sans contraintes de type simplexe ou Nelder-Mead, voir [Nelder65]_),
-  "SUBPLEX" (minimisation avec ou sans contraintes de type simplexe sur une suite de sous-espaces [Rowan90]_).
+  "SUBPLEX" (minimisation avec ou sans contraintes de type simplexe sur une suite de sous-espaces, voir [Rowan90]_).
   Remarque : la méthode "POWELL" effectue une optimisation par boucles
   imbriquées interne/externe, conduisant ainsi à un contrôle relaché du nombre
   d'évaluations de la fonctionnelle à optimiser. Si un contrôle précis du
index 2ab061bad5b179b0913520e2dff52a53dc87cf5a..6eec587727be27d8702a9e3401aaaefed81cf2e6 100644 (file)
@@ -1,9 +1,15 @@
-.. index:: single: Minimizer
+.. index::
+    single: Minimizer
+    pair: Minimizer ; LBFGSB
+    pair: Minimizer ; TNC
+    pair: Minimizer ; CG
+    pair: Minimizer ; BFGS
+    pair: Minimizer ; NCG
 
 Minimizer
   *Nom prédéfini*. Cette clé permet de changer le minimiseur pour l'optimiseur.
   Le choix par défaut est "LBFGSB", et les choix possibles sont
-  "LBFGSB" (minimisation non linéaire sous contraintes, voir [Byrd95]_, [Morales11]_ et [Zhu97]_),
+  "LBFGSB" (minimisation non linéaire sous contraintes, voir [Byrd95]_, [Morales11]_, [Zhu97]_),
   "TNC" (minimisation non linéaire sous contraintes),
   "CG" (minimisation non linéaire sans contraintes),
   "BFGS" (minimisation non linéaire sans contraintes),
diff --git a/doc/fr/snippets/Variant_3DVAR.rst b/doc/fr/snippets/Variant_3DVAR.rst
new file mode 100644 (file)
index 0000000..d3a58e3
--- /dev/null
@@ -0,0 +1,19 @@
+.. index::
+    single: Variant
+    pair: Variant ; 3DVAR
+    pair: Variant ; 3DVAR-VAN
+    pair: Variant ; 3DVAR-Incr
+    pair: Variant ; 3DVAR-PSAS
+
+Variant
+  *Nom prédéfini*. Cette clé permet de choisir l'une des variantes possibles
+  pour l'algorithme principal. La variante par défaut est le "3DVAR" d'origine,
+  et les choix possibles sont
+  "3DVAR" (3D Variational analysis, voir [Lorenc86]_, [LeDimet86]_, [Talagrand97]_),
+  "3DVAR-VAN" (3D Variational Analysis with No inversion of B, voir [Lorenc88]_),
+  "3DVAR-Incr" (Incremental 3DVAR, voir [Courtier94]_),
+  "3DVAR-PSAS" (Physical-space Statistical Analysis Scheme for 3DVAR, voir [Cohn98]_),
+  Il est fortement conseillé de conserver la valeur par défaut.
+
+  Exemple :
+  ``{"Variant":"3DVAR"}``
diff --git a/doc/fr/snippets/Variant_EnKF.rst b/doc/fr/snippets/Variant_EnKF.rst
new file mode 100644 (file)
index 0000000..689c90b
--- /dev/null
@@ -0,0 +1,23 @@
+.. index::
+    single: Variant
+    pair: Variant ; EnKF
+    pair: Variant ; ETKF
+    pair: Variant ; ETKF-N
+    pair: Variant ; MLEF
+    pair: Variant ; IEnKF
+
+Variant
+  *Nom prédéfini*. Cette clé permet de choisir l'une des variantes possibles
+  pour l'algorithme principal. La variante par défaut est l'"EnKF" d'origine,
+  et les choix possibles sont
+  "EnKF" (Ensemble Kalman Filter),
+  "ETKF" (Ensemble-Transform Kalman Filter),
+  "ETKF-N" (Ensemble-Transform Kalman Filter),
+  "MLEF" (Maximum Likelihood Kalman Filter),
+  "IEnKF" (Iterative_EnKF).
+  Il est conseillé d'essayer les variantes "ETKF-N" ou "IEnKF", et de réduire
+  le nombre de membres à une dizaine ou moins pour toutes les variantes autres
+  que l'"EnKF" original.
+
+  Exemple :
+  ``{"Variant":"EnKF"}``