Salome HOME
Documentation de toutes les options du 3DVAR
authorJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 20 Oct 2011 14:20:59 +0000 (16:20 +0200)
committerJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 20 Oct 2011 14:20:59 +0000 (16:20 +0200)
doc/advanced.rst
doc/examples.rst

index 3dc9734b80b1bfa0dfdbacbabe21ee60ec9a7505..1aba956e4801d5c8ef1731dfcc86f4a010d6a896 100644 (file)
@@ -8,7 +8,7 @@ This section presents advanced methods to use the ADAO module, how to get more
 information, or how to use it without the graphical user interface (GUI).
 
 Exporting an ADAO command file (JDC) to YACS in console mode
---------------------------------------------------------------------------------
+------------------------------------------------------------
 
 An export command can use the Python file generated by the editor used to build
 the ADAO command file (JDC). If the ADAO command file is named "Study1.comm",
@@ -31,7 +31,7 @@ It is not necessary to launch and shut down SALOME each time if the application
 is already running.
 
 Running an ADAO calculation scheme in YACS in console mode
---------------------------------------------------------------------------------
+----------------------------------------------------------
 
 This section describes how to execute in console mode a YACS calculation scheme,
 obtained using the ADAO "Export to YACS" function. It uses the standard YACS
@@ -52,7 +52,7 @@ It is not necessary to launch and shut down SALOME each time if the application
 is already running.
 
 Getting more information when running an assimilation calculation
---------------------------------------------------------------------------------
+-----------------------------------------------------------------
 
 When running, the ADAO module is logging useful data and messages. There are two
 ways to obtain theses informations.
index 91e163434fc2cfaa37d794e80543ecf4433f659d..a803bd59c84f20404e45730ef2d61e1408c106d6 100644 (file)
@@ -271,24 +271,34 @@ definition of the ADAO case, which is an keyword of the ASSIMILATION_STUDY. This
 keyword requires a Python dictionary, containing some key/value pairs.
 
 For example, with a 3DVAR algorithm, the possible keys are "*Minimizer*",
-"*MaximumNumberOfSteps*", and "*Bounds*":
+"*MaximumNumberOfSteps*", "ProjectedGradientTolerance", "GradientNormTolerance"
+and "*Bounds*":
 
-#.   The "*Minimizer*" key allows to choose the optimisation minimizer, the
-     default choice being "LBFGSB", and the possible ones "LBFGSB" (nonlinear
+#.   The "*Minimizer*" key allows to choose the optimisation minimizer. The
+     default choice is "LBFGSB", and the possible ones are "LBFGSB" (nonlinear
      constrained minimizer, see [Byrd95] and [Zhu97]), "TNC" (nonlinear
      constrained minimizer), "CG" (nonlinear unconstrained minimizer), "BFGS"
-     (non-linear unconstrained minimizer).
+     (nonlinear unconstrained minimizer), "NCG" (Newton CG minimizer).
 #.   The "*MaximumNumberOfSteps*" key indicates the maximum number of iterations
      allowed for iterative optimisation. The default is 15000, which very
      similar of no limit on iterations. It is then recommended to adapt this
      parameter to the needs on real problems.
+#.   The "ProjectedGradientTolerance" key indicates a limit value, leading to
+     stop successfully the iterative optimisation process when all the components
+     of the projected gradient are under this limit.
+#.   The "GradientNormTolerance" key indicates a limit value, leading to stop
+     successfully the iterative optimisation process when the norm of the
+     gradient is under this limit.
 #.   The "*Bounds*" key allows to define upper and lower bounds for every
      control variable being optimized. Bounds can be given by a list of list of
      pairs of lower/upper bounds for each variable, with possibly ``None`` every
-     time there is no bound.
+     time there is no bound. The bounds can always be specified, but they are
+     taken into account only by the constrained minimizers.
 
 If no bounds at all are required on the control variables, then one can choose
-the "BFGS" or "CG" minimisation algorithm for the 3DVAR algorithm.
+the "BFGS" or "CG" minimisation algorithm for the 3DVAR algorithm. For
+constrained optimisation, the minimizer "LBFGSB" is often more robust, but the
+"TNC" is always more performant.
 
 This dictionary has to be defined, for example, in an external Python script
 file, using the mandatory variable name "*AlgorithmParameters*" for the