]> SALOME platform Git repositories - modules/adao.git/commitdiff
Salome HOME
Documentation corrections for outputs V7_5_1 V7_5_1rc2
authorJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 22 Jan 2015 20:59:55 +0000 (21:59 +0100)
committerJean-Philippe ARGAUD <jean-philippe.argaud@edf.fr>
Thu, 22 Jan 2015 20:59:55 +0000 (21:59 +0100)
36 files changed:
doc/en/ref_algorithm_3DVAR.rst
doc/en/ref_algorithm_Blue.rst
doc/en/ref_algorithm_ExtendedBlue.rst
doc/en/ref_algorithm_ExtendedKalmanFilter.rst
doc/en/ref_algorithm_KalmanFilter.rst
doc/en/ref_algorithm_LinearLeastSquares.rst
doc/en/ref_algorithm_NonLinearLeastSquares.rst
doc/en/ref_algorithm_ParticleSwarmOptimization.rst
doc/en/ref_algorithm_QuantileRegression.rst
doc/en/ref_algorithm_UnscentedKalmanFilter.rst
doc/en/ref_options_AlgorithmParameters.rst
doc/en/ref_output_variables.rst
doc/fr/ref_algorithm_3DVAR.rst
doc/fr/ref_algorithm_Blue.rst
doc/fr/ref_algorithm_ExtendedBlue.rst
doc/fr/ref_algorithm_ExtendedKalmanFilter.rst
doc/fr/ref_algorithm_KalmanFilter.rst
doc/fr/ref_algorithm_LinearLeastSquares.rst
doc/fr/ref_algorithm_NonLinearLeastSquares.rst
doc/fr/ref_algorithm_ObserverTest.rst
doc/fr/ref_algorithm_ParticleSwarmOptimization.rst
doc/fr/ref_algorithm_QuantileRegression.rst
doc/fr/ref_algorithm_SamplingTest.rst
doc/fr/ref_algorithm_UnscentedKalmanFilter.rst
doc/fr/ref_options_AlgorithmParameters.rst
doc/fr/ref_output_variables.rst
src/daComposant/daAlgorithms/3DVAR.py
src/daComposant/daAlgorithms/Blue.py
src/daComposant/daAlgorithms/ExtendedBlue.py
src/daComposant/daAlgorithms/ExtendedKalmanFilter.py
src/daComposant/daAlgorithms/KalmanFilter.py
src/daComposant/daAlgorithms/LinearLeastSquares.py
src/daComposant/daAlgorithms/NonLinearLeastSquares.py
src/daComposant/daAlgorithms/ParticleSwarmOptimization.py
src/daComposant/daAlgorithms/QuantileRegression.py
src/daComposant/daAlgorithms/UnscentedKalmanFilter.py

index e3221adf562be659b3b0efe3e01c485c1e5c6375..d25dd6bdbabb7345aaca3f70c909e9fdc4ac463d 100644 (file)
@@ -52,7 +52,6 @@ Optional and required commands
 .. index:: single: CostDecrementTolerance
 .. index:: single: ProjectedGradientTolerance
 .. index:: single: GradientNormTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -157,21 +156,16 @@ The options of the algorithm are the following:
 
     Example : ``{"GradientNormTolerance":1.e-5}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "OMA", "OMB",
-    "Innovation", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles"].
+    are in the following list: ["APosterioriCovariance", "BMA", "CostFunctionJ",
+    "CurrentState", "OMA", "OMB", "Innovation", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum",
+    "SimulationQuantiles"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 59defa9c6fb65481c87c5033495a26f2ee77f1ee..248a37b6d70a4b87a96d68c3f030a08c61c4f3cd 100644 (file)
@@ -51,7 +51,6 @@ Optional and required commands
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -102,22 +101,15 @@ described hereafter, of the algorithm. See
 
 The options of the algorithm are the following:
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "OMA", "OMB",
-    "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency",
-    "SimulationQuantiles"].
+    are in the following list: ["APosterioriCovariance", "BMA", "CostFunctionJ",
+    "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtOptimum", "SimulationQuantiles"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 76b1ce5b1df9ddb9e015609f337e520e78c62dcf..14b629bcd8337395c4e5cb563844c09067122c9c 100644 (file)
@@ -49,7 +49,6 @@ Optional and required commands
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -100,22 +99,15 @@ described hereafter, of the algorithm. See
 
 The options of the algorithm are the following:
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "OMA", "OMB",
-    "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency",
-    "SimulationQuantiles"].
+    are in the following list: ["APosterioriCovariance", "BMA",
+    "CostFunctionJ", "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtOptimum", "SimulationQuantiles"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
@@ -244,13 +236,6 @@ The conditional outputs of the algorithm are the following:
 
     Example : ``so2 = ADD.get("SigmaObs")[-1]``
 
-  SimulationQuantiles
-    *List of vectors*. Each element is a vector corresponding to the observed
-    state which realize the required quantile, in the same order than the
-    quantiles required by the user.
-
-    Example : ``sQuantiles = ADD.get("SimulationQuantiles")[:]``
-
   SimulatedObservationAtBackground
     *List of vectors*. Each element is a vector of observation simulated from
     the background :math:`\mathbf{x}^b`.
@@ -263,6 +248,13 @@ The conditional outputs of the algorithm are the following:
 
     Example : ``hxa = ADD.get("SimulatedObservationAtOptimum")[-1]``
 
+  SimulationQuantiles
+    *List of vectors*. Each element is a vector corresponding to the observed
+    state which realize the required quantile, in the same order than the
+    quantiles required by the user.
+
+    Example : ``sQuantiles = ADD.get("SimulationQuantiles")[:]``
+
 See also
 ++++++++
 
index 16e68a3fa46f1ad974fafa61c3d29e88d962a818..d313387e5173edd02636d73f946daac2e8a71448 100644 (file)
@@ -44,7 +44,6 @@ Optional and required commands
 .. index:: single: Bounds
 .. index:: single: ConstrainedBy
 .. index:: single: EstimationOf
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -106,20 +105,13 @@ The options of the algorithm are the following:
 
     Example : ``{"EstimationOf":"Parameters"}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "Innovation"].
+    are in the following list: ["APosterioriCovariance", "BMA", "CostFunctionJ",
+    "CurrentState", "Innovation"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
@@ -184,6 +176,8 @@ The conditional outputs of the algorithm are the following:
     the difference between the optimal and the background, and in dynamic the
     evolution increment.
 
+    Exemple : ``d = ADD.get("Innovation")[-1]``
+
 See also
 ++++++++
 
index 64bbc30ebf1c30f195d338985a7674e072c75234..dcd35f85318efd11e3906074fdf4571231b4c355 100644 (file)
@@ -51,7 +51,6 @@ Optional and required commands
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
 .. index:: single: EstimationOf
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -105,20 +104,13 @@ The options of the algorithm are the following:
 
     Example : ``{"EstimationOf":"Parameters"}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "Innovation"].
+    are in the following list: ["APosterioriCovariance", "BMA", "CostFunctionJ",
+    "CurrentState", "Innovation"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
@@ -183,6 +175,8 @@ The conditional outputs of the algorithm are the following:
     the difference between the optimal and the background, and in dynamic the
     evolution increment.
 
+    Exemple : ``d = ADD.get("Innovation")[-1]``
+
 See also
 ++++++++
 
index b287b715fc701529e9a746b20f375737963b4b96..dad7414fb49b961b8f2a1d2fdcceec2cea08853d 100644 (file)
@@ -51,7 +51,6 @@ Optional and required commands
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -87,20 +86,13 @@ described hereafter, of the algorithm. See
 
 The options of the algorithm are the following:
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["OMA"].
+    are in the following list: ["OMA", "CostFunctionJ",
+    "SimulatedObservationAtOptimum"].
 
     Example : ``{"StoreSupplementaryCalculations":["OMA"]}``
 
index 9dfed31397204dcb127cb623d8fcb5b7c380c079..19905f29c6b7ced1acc7de2572e5b7c1938ff36e 100644 (file)
@@ -55,7 +55,6 @@ Optional and required commands
 .. index:: single: CostDecrementTolerance
 .. index:: single: ProjectedGradientTolerance
 .. index:: single: GradientNormTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -149,20 +148,15 @@ The options of the algorithm are the following:
 
     Example : ``{"GradientNormTolerance":1.e-5}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["BMA", "OMA", "OMB", "Innovation"].
+    are in the following list: ["APosterioriCovariance", "BMA",
+    "CostFunctionJ", "CurrentState", "OMA", "OMB", "Innovation", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtCurrentState",
+    "SimulatedObservationAtOptimum"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 136f32866e86b657c5f52517ba203e61b1d3f821..843b6b4ea93037aad68b31c36ea1ed0f1750b24c 100644 (file)
@@ -53,7 +53,6 @@ Optional and required commands
 .. index:: single: QualityCriterion
 .. index:: single: BoxBounds
 .. index:: single: SetSeed
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -154,20 +153,14 @@ The options of the algorithm are the following:
 
     Example : ``{"SetSeed":1000}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["BMA", "OMA", "OMB", "Innovation"].
+    are in the following list: ["BMA", "CostFunctionJ", "CurrentState", "OMA",
+    "OMB", "Innovation", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 406fa5ca4a55eaba9b16355c2d0548503a428cc1..c09e9791d73740f7adbf911a0058fe0b0ec9845d 100644 (file)
@@ -45,7 +45,6 @@ Optional and required commands
 .. index:: single: Minimizer
 .. index:: single: MaximumNumberOfSteps
 .. index:: single: CostDecrementTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -102,20 +101,14 @@ The options of the algorithm are the following:
 
     Example : ``{"CostDecrementTolerance":1.e-7}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["BMA", "OMA", "OMB", "Innovation"].
+    are in the following list: ["BMA", "CostFunctionJ", "CurrentState", "OMA",
+    "OMB", "Innovation", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index cf3b45ba415d1b2b75435074b2dc4e7390d22a52..8f135dc601bfab9d079057af333abf19edea3d49 100644 (file)
@@ -50,7 +50,6 @@ Optional and required commands
 .. index:: single: Beta
 .. index:: single: Kappa
 .. index:: single: Reconditioner
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 The general required commands, available in the editing user interface, are the
@@ -121,20 +120,13 @@ The options of the algorithm are the following:
 
     Example : ``{"Alpha":1,"Beta":2,"Kappa":0,"Reconditioner":1}``
 
-  StoreInternalVariables
-    This Boolean key allows to store default internal variables, mainly the
-    current state during iterative optimization process. Be careful, this can be
-    a numerically costly choice in certain calculation cases. The default is
-    "False".
-
-    Example : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     This list indicates the names of the supplementary variables that can be
     available at the end of the algorithm. It involves potentially costly
     calculations or memory consumptions. The default is a void list, none of
     these variables being calculated and stored by default. The possible names
-    are in the following list: ["APosterioriCovariance", "BMA", "Innovation"].
+    are in the following list: ["APosterioriCovariance", "BMA", "CostFunctionJ",
+    "CurrentState", "Innovation"].
 
     Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 58ea894b9a24fc3797ad6c330714a7e347855fd9..b40d0460e85bc2fcfc39dd56b3b68752246d414f 100644 (file)
@@ -56,7 +56,7 @@ in the EFICAS graphical interface, the user selects this type in the keyword
 In the entry, one must enclose a standard dictionary definition between simple
 quotes, as for example::
 
-    '{"StoreInternalVariables":True,"MaximumNumberOfSteps":25}'
+    '{"MaximumNumberOfSteps":25,"SetSeed":1000}'
 
 It is the recommended way to define algorithmic parameters.
 
@@ -78,7 +78,6 @@ This external Python script file has then to define a variable with the required
 name "*AlgorithmParameters*", as in the following example::
 
     AlgorithmParameters = {
-        "StoreInternalVariables" : True,
         "MaximumNumberOfSteps" : 25,
         "StoreSupplementaryCalculations" : ["APosterioriCovariance","OMA"],
         }
index 8399065fdf741661b8734675ff01f6bf58bb58e3..f45c147a6b685a32d865fd9a7190dfe605a26a52 100644 (file)
@@ -133,7 +133,6 @@ Other usage examples are also given for :ref:`section_u_step4` of the
 Cross compliance of the information available at the output
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-.. index:: single: StoreInternalVariables
 .. index:: single: AlgorithmParameters
 .. index:: single: Stored
 
@@ -147,13 +146,12 @@ calculation. The other information are only present for certain algorithms
 and/or if they have been requested before the execution of the calculation.
 
 It is recalled that the user can request additional information during the
-preparation of its ADAO case, using option "*StoreInternalVariables*" each
-algorithm through the optional control "*AlgorithmParameters*" of ADAO case.
-Reference will be made to the :ref:`section_ref_options_AlgorithmParameters` for
-the proper use of this command, and to the description of each algorithm for
-the information available by algorithm. One can also ask to keep some input
-information by changing the boolean "* * Stored" associated with it in the
-edition of the ADAO case.
+preparation of its ADAO case, using the optional control "*AlgorithmParameters*"
+of ADAO case. Reference will be made to the
+:ref:`section_ref_options_AlgorithmParameters` for the proper use of this
+command, and to the description of each algorithm for the information available
+by algorithm. One can also ask to keep some input information by changing the
+boolean "* * Stored" associated with it in the edition of the ADAO case.
 
 .. _subsection_r_o_v_Inventaire:
 
index 6fe77970675ed6ad91c61fa0435e592589d1d9ab..be8dc6e2c1eab5d2b69d4b9a5ed3ba56a291b0d2 100644 (file)
@@ -53,7 +53,6 @@ Commandes requises et optionnelles
 .. index:: single: CostDecrementTolerance
 .. index:: single: ProjectedGradientTolerance
 .. index:: single: GradientNormTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -163,21 +162,15 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"GradientNormTolerance":1.e-5}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "OMA", "OMB", "Innovation", "SigmaObs2", "MahalanobisConsistency",
+    "CostFunctionJ", "CurrentState", "OMA", "OMB", "Innovation", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum",
     "SimulationQuantiles"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
index 9b520ff0024b8a518c20edd2ba26841b00e9bb5d..ae1205a58a1d0ea90b007660dcbf60dae5b67cfb 100644 (file)
@@ -52,7 +52,6 @@ Commandes requises et optionnelles
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -105,22 +104,15 @@ commande.
 
 Les options de l'algorithme sont les suivantes:
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
-    "MahalanobisConsistency", "SimulationQuantiles"].
+    "CostFunctionJ", "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtOptimum", "SimulationQuantiles"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index dfbee64136dbb3e83560e3e466295f72ba7c1010..5a9ff1bc8f364a89f6479b105550e20c374da97a 100644 (file)
@@ -49,7 +49,6 @@ Commandes requises et optionnelles
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 .. index:: single: Quantiles
 .. index:: single: SetSeed
@@ -102,22 +101,15 @@ commande.
 
 Les options de l'algorithme sont les suivantes:
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
-    "MahalanobisConsistency", "SimulationQuantiles"].
+    "CostFunctionJ", "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtBackground",
+    "SimulatedObservationAtOptimum", "SimulationQuantiles"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 38700a83c03c4a3e646e9527c153c4bd6504e1de..a3ffabbf92e5f172d767ec1519d23286cc28ecf3 100644 (file)
@@ -45,7 +45,6 @@ Commandes requises et optionnelles
 .. index:: single: Bounds
 .. index:: single: ConstrainedBy
 .. index:: single: EstimationOf
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -110,21 +109,13 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"EstimationOf":"Parameters"}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "Innovation"].
+    "CostFunctionJ", "CurrentState", "Innovation"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index c5ae7364868cafab9e373bfeeed4167e29e4868a..195f99c6926899ef9b4f9d8572891ec42cd9955c 100644 (file)
@@ -51,7 +51,6 @@ Commandes requises et optionnelles
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
 .. index:: single: EstimationOf
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -107,21 +106,13 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"EstimationOf":"Parameters"}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "Innovation"].
+    "CostFunctionJ", "CurrentState", "Innovation"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index efee4898198e70a0e8a49498e0a5e3caaf603d91..10bc9ce02ef24882a92de74c5c8f5566aeac2493 100644 (file)
@@ -51,7 +51,6 @@ Commandes requises et optionnelles
 .. index:: single: Observation
 .. index:: single: ObservationError
 .. index:: single: ObservationOperator
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -89,20 +88,13 @@ commande.
 
 Les options de l'algorithme sont les suivantes:
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
-    possibles sont dans la liste suivante : ["OMA"].
+    possibles sont dans la liste suivante : ["OMA", "CostFunctionJ",
+    "SimulatedObservationAtOptimum"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["OMA"]}``
 
index 90f5d0242283a1d3c209d4e4cfe183edd6f66dd1..8a575231bb99dbca3a65c263c1a4caea340a941a 100644 (file)
@@ -56,7 +56,6 @@ Commandes requises et optionnelles
 .. index:: single: CostDecrementTolerance
 .. index:: single: ProjectedGradientTolerance
 .. index:: single: GradientNormTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -157,21 +156,15 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"GradientNormTolerance":1.e-5}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "OMA", "OMB", "Innovation", "SigmaObs2", "MahalanobisConsistency"].
+    "CostFunctionJ", "CurrentState", "OMA", "OMB", "Innovation", "SigmaObs2",
+    "MahalanobisConsistency", "SimulatedObservationAtCurrentState",
+    "SimulatedObservationAtOptimum"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 83242c81f2dfd5bcd3d41c1754d625fc005c53b3..dd9873c7492d834954245f4bb65406d9897a71b1 100644 (file)
@@ -46,7 +46,7 @@ Commandes requises et optionnelles
 Les commandes requises générales, disponibles dans l'interface en édition, sont
 les suivantes:
 
-  Observers  
+  Observers
     *Commande obligatoire*. Elle permet de définir des observateurs internes,
     qui sont des fonctions liées à une variable particulière, qui sont exécutées
     chaque fois que cette variable est modifiée. C'est une manière pratique de
index 110f95124642b4527f45e65a066ada5a1de1fdef..ff6fcb6cdab892b62818c8dfaa9eec60eb596507 100644 (file)
@@ -54,7 +54,6 @@ Commandes requises et optionnelles
 .. index:: single: QualityCriterion
 .. index:: single: BoxBounds
 .. index:: single: SetSeed
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -159,20 +158,15 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"SetSeed":1000}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
-    possibles sont dans la liste suivante : ["BMA", "OMA", "OMB", "Innovation"].
+    possibles sont dans la liste suivante : ["BMA", "CostFunctionJ",
+    "CurrentState", "OMA", "OMB", "Innovation",
+    "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState",
+    "SimulatedObservationAtOptimum"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index fe28ed608be24f5005ecc0db3270f34884862bcb..be80ca497ec2e7844f00240cb4fcb0a63e5dfe8f 100644 (file)
@@ -45,7 +45,6 @@ Commandes requises et optionnelles
 .. index:: single: Minimizer
 .. index:: single: MaximumNumberOfSteps
 .. index:: single: CostDecrementTolerance
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -104,20 +103,15 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"CostDecrementTolerance":1.e-7}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
-    possibles sont dans la liste suivante : ["BMA", "OMA", "OMB", "Innovation"].
+    possibles sont dans la liste suivante : ["BMA", "CostFunctionJ",
+    "CurrentState", "OMA", "OMB", "Innovation",
+    "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState",
+    "SimulatedObservationAtOptimum"]. 
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index dbdc6dfebef327ad9949b5291636e0fdc9ba3f67..b4f689e5675b92df2b25faf021f36e5393f12735 100644 (file)
@@ -155,7 +155,7 @@ Les options de l'algorithme sont les suivantes:
     augmentés. Les critères possibles sont dans la liste suivante, dans laquelle
     les noms équivalents sont indiqués par un signe "=" :
     ["AugmentedWeightedLeastSquares"="AWLS"="DA", "WeightedLeastSquares"="WLS",
-    "LeastSquares"="LS"="L2", "AbsoluteValue"="L1",  "MaximumError"="ME"].
+    "LeastSquares"="LS"="L2", "AbsoluteValue"="L1", "MaximumError"="ME"].
 
     Exemple : ``{"QualityCriterion":"DA"}``
 
index b7f39304e28817fef5a2f2ebdb4d96d1dea6df34..d8d13d31fc1866846f4c59dc472ed1dfb85a74cd 100644 (file)
@@ -50,7 +50,6 @@ Commandes requises et optionnelles
 .. index:: single: Beta
 .. index:: single: Kappa
 .. index:: single: Reconditioner
-.. index:: single: StoreInternalVariables
 .. index:: single: StoreSupplementaryCalculations
 
 Les commandes requises générales, disponibles dans l'interface en édition, sont
@@ -125,21 +124,13 @@ Les options de l'algorithme sont les suivantes:
 
     Exemple : ``{"Alpha":1,"Beta":2,"Kappa":0,"Reconditioner":1}``
 
-  StoreInternalVariables
-    Cette clé booléenne permet de stocker les variables internes par défaut,
-    principalement l'état courant lors d'un processus itératif. Attention, cela
-    peut être un choix numériquement coûteux dans certains cas de calculs. La
-    valeur par défaut est "False".
-
-    Exemple : ``{"StoreInternalVariables":True}``
-
   StoreSupplementaryCalculations
     Cette liste indique les noms des variables supplémentaires qui peuvent être
     disponibles à la fin de l'algorithme. Cela implique potentiellement des
     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
     possibles sont dans la liste suivante : ["APosterioriCovariance", "BMA",
-    "Innovation"].
+    "CostFunctionJ", "CurrentState", "Innovation"].
 
     Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
 
index 919fd282b343f13d44093456a92e6068f1bd80d8..2c347e592d4ea6286412588e488d74d1d26e1ed4 100644 (file)
@@ -57,7 +57,7 @@ suit :
 Dans le champs de saisie, il faut utiliser des guillemets simples pour une
 définition standard de dictionnaire, comme par exemple::
 
-    '{"StoreInternalVariables":True,"MaximumNumberOfSteps":25}'
+    '{"MaximumNumberOfSteps":25,"SetSeed":1000}'
 
 C'est la manière recommandée pour définir des paramètres algorithmiques.
 
@@ -79,7 +79,6 @@ Ce fichier script Python externe doit d
 "*AlgorithmParameters*", à la manière de l'exemple qui suit::
 
     AlgorithmParameters = {
-        "StoreInternalVariables" : True,
         "MaximumNumberOfSteps" : 25,
         "StoreSupplementaryCalculations" : ["APosterioriCovariance","OMA"],
         }
index 5941bf2afe831ae4b3b834735e5cc33b1d5fbd62..7565fbea05681e018ea158e35082eb24b5f27d82 100644 (file)
@@ -137,7 +137,6 @@ la partie :ref:`section_using`, ou en partie :ref:`section_examples`.
 Conditionnalité des informations disponibles en sortie
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
-.. index:: single: StoreInternalVariables
 .. index:: single: AlgorithmParameters
 .. index:: single: Stored
 
@@ -151,9 +150,8 @@ calcul. Les autres informations ne sont pr
 et/ou que si elles ont été réclamées avant l'exécution du calcul.
 
 On rappelle que l'utilisateur peut réclamer des informations supplémentaires
-lors de l'établissement de son cas ADAO, en utilisant l'option
-"*StoreInternalVariables*" de chaque algorithme à travers la commande
-optionnelle "*AlgorithmParameters*" du cas ADAO. On se reportera à la
+lors de l'établissement de son cas ADAO, en utilisant la commande optionnelle
+"*AlgorithmParameters*" du cas ADAO. On se reportera à la
 :ref:`section_ref_options_AlgorithmParameters` pour le bon usage de cette
 commande, et à la description de chaque algorithme pour les informations
 disponibles par algorithme. On peut aussi demander à conserver certaines
index 2ac2931765485dad1d0383039fa8e0ef464314b2..ba53af8ff8c920eef6a99c430925d6d6382d467f 100644 (file)
@@ -72,7 +72,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "Innovation", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
+            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "CurrentState", "CostFunctionJ", "Innovation", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
             )
         self.defineRequiredParameter(
             name     = "Quantiles",
@@ -160,7 +160,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             Jb  = 0.5 * (_X - Xb).T * BI * (_X - Xb)
             Jo  = 0.5 * (Y - _HX).T * RI * (Y - _HX)
             J   = float( Jb ) + float( Jo )
-            if self._parameters["StoreInternalVariables"]:
+            if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["CurrentState"].store( _X )
             if "SimulatedObservationAtCurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["SimulatedObservationAtCurrentState"].store( _HX )
@@ -256,7 +256,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         #
         # Correction pour pallier a un bug de TNC sur le retour du Minimum
         # ----------------------------------------------------------------
-        if self._parameters["StoreInternalVariables"]:
+        if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
             Minimum = self.StoredVariables["CurrentState"][IndexMin]
         #
         # Obtention de l'analyse
index d3d056711d0d5fa2b84f5a3e372eb0eeb64df617..d3ca8c0b9ed46dba1abc177551ed3c8984a9ec0b 100644 (file)
@@ -39,7 +39,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtOptimum"]
+            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "CostFunctionJ", "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtOptimum"]
             )
         self.defineRequiredParameter(
             name     = "Quantiles",
@@ -127,6 +127,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         # Calcul de la fonction coût
         # --------------------------
         if self._parameters["StoreInternalVariables"] or \
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"] or \
            "OMA"                           in self._parameters["StoreSupplementaryCalculations"] or \
            "SigmaObs2"                     in self._parameters["StoreSupplementaryCalculations"] or \
            "MahalanobisConsistency"        in self._parameters["StoreSupplementaryCalculations"] or \
@@ -135,7 +136,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             HXa = Hm * Xa
             oma = Y - HXa
         if self._parameters["StoreInternalVariables"] or \
-           "MahalanobisConsistency" in self._parameters["StoreSupplementaryCalculations"]:
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"] or \
+           "MahalanobisConsistency"        in self._parameters["StoreSupplementaryCalculations"]:
             Jb  = 0.5 * (Xa - Xb).T * BI * (Xa - Xb)
             Jo  = 0.5 * oma.T * RI * oma
             J   = float( Jb ) + float( Jo )
index aaa8534e32db9cf2ea96ed8b0481282a3fbc334c..ea93f62c7465c34a16a7d8cec7d3ee5bdf9dd396 100644 (file)
@@ -39,7 +39,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtOptimum"]
+            listval  = ["APosterioriCovariance", "BMA", "OMA", "OMB", "CostFunctionJ", "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles", "SimulatedObservationAtBackground", "SimulatedObservationAtOptimum"]
             )
         self.defineRequiredParameter(
             name     = "Quantiles",
@@ -128,6 +128,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         # Calcul de la fonction coût
         # --------------------------
         if self._parameters["StoreInternalVariables"] or \
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"] or \
            "OMA"                           in self._parameters["StoreSupplementaryCalculations"] or \
            "SigmaObs2"                     in self._parameters["StoreSupplementaryCalculations"] or \
            "MahalanobisConsistency"        in self._parameters["StoreSupplementaryCalculations"] or \
@@ -136,7 +137,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             HXa  = numpy.matrix(numpy.ravel( H( Xa ) )).T
             oma = Y - HXa
         if self._parameters["StoreInternalVariables"] or \
-           "MahalanobisConsistency" in self._parameters["StoreSupplementaryCalculations"]:
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"] or \
+           "MahalanobisConsistency"        in self._parameters["StoreSupplementaryCalculations"]:
             Jb  = 0.5 * (Xa - Xb).T * BI * (Xa - Xb)
             Jo  = 0.5 * oma.T * RI * oma
             J   = float( Jb ) + float( Jo )
index b994436a42219103ad477e8d7d93fff2e82d3442..781163054b994bc1f38acb70e6d475158fe7a950 100644 (file)
@@ -53,7 +53,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "Innovation"]
+            listval  = ["APosterioriCovariance", "BMA", "CurrentState", "CostFunctionJ", "Innovation"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -175,7 +175,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
                 Jb  = 0.5 * (Xn - Xb).T * BI * (Xn - Xb)
                 Jo  = 0.5 * d.T * RI * d
                 J   = float( Jb ) + float( Jo )
-                self.StoredVariables["CurrentState"].store( Xn )
+                if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
+                    self.StoredVariables["CurrentState"].store( Xn )
                 self.StoredVariables["CostFunctionJb"].store( Jb )
                 self.StoredVariables["CostFunctionJo"].store( Jo )
                 self.StoredVariables["CostFunctionJ" ].store( J )
index 1b8331d97afbc263eae9c747c1e52ae8482d6666..cc267e5a8965dbb8fa5ee2804dbb5e2957ae2d84 100644 (file)
@@ -46,7 +46,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "Innovation"]
+            listval  = ["APosterioriCovariance", "BMA", "CurrentState", "CostFunctionJ", "Innovation"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -78,8 +78,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         else:
             Cm = None
         #
-        # Nombre de pas du Kalman identique au nombre de pas d'observations
-        # -----------------------------------------------------------------
+        # Nombre de pas identique au nombre de pas d'observations
+        # -------------------------------------------------------
         if hasattr(Y,"stepnumber"):
             duration = Y.stepnumber()
         else:
@@ -150,7 +150,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
                 Jb  = 0.5 * (Xn - Xb).T * BI * (Xn - Xb)
                 Jo  = 0.5 * d.T * RI * d
                 J   = float( Jb ) + float( Jo )
-                self.StoredVariables["CurrentState"].store( Xn )
+                if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
+                    self.StoredVariables["CurrentState"].store( Xn )
                 self.StoredVariables["CostFunctionJb"].store( Jb )
                 self.StoredVariables["CostFunctionJo"].store( Jo )
                 self.StoredVariables["CostFunctionJ" ].store( J )
index 20931adef028140095f8e5562d99e185731e3865..d6ddcfde799ddcad6d5b66755eaf646e5266d9fa 100644 (file)
@@ -39,7 +39,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["OMA", "SimulatedObservationAtOptimum"]
+            listval  = ["OMA", "CostFunctionJ", "SimulatedObservationAtOptimum"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -67,11 +67,13 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         # Calcul de la fonction coût
         # --------------------------
         if self._parameters["StoreInternalVariables"] or \
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"] or \
            "OMA"                           in self._parameters["StoreSupplementaryCalculations"] or \
            "SimulatedObservationAtOptimum" in self._parameters["StoreSupplementaryCalculations"]:
             HXa = Hm * Xa
             oma = Y - HXa
-        if self._parameters["StoreInternalVariables"]:
+        if self._parameters["StoreInternalVariables"] or \
+           "CostFunctionJ"                 in self._parameters["StoreSupplementaryCalculations"]:
             Jb  = 0.
             Jo  = 0.5 * oma.T * RI * oma
             J   = float( Jb ) + float( Jo )
index 0d08f260b45c222fc43ccad0a955827ef7d69c37..c894d51363c5d000f8c18a8c08c348a86083b59d 100644 (file)
@@ -72,7 +72,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["BMA", "OMA", "OMB", "Innovation", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
+            listval  = ["BMA", "OMA", "OMB", "CurrentState", "CostFunctionJ", "Innovation", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -134,7 +134,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             Jb  = 0.
             Jo  = 0.5 * (Y - _HX).T * RI * (Y - _HX)
             J   = float( Jb ) + float( Jo )
-            if self._parameters["StoreInternalVariables"]:
+            if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["CurrentState"].store( _X )
             if "SimulatedObservationAtCurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["SimulatedObservationAtCurrentState"].store( _HX )
@@ -159,7 +159,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             Jb  = 0.
             Jo  = 0.5 * (Y - _HX).T * RI * (Y - _HX)
             J   = float( Jb ) + float( Jo )
-            if self._parameters["StoreInternalVariables"]:
+            if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["CurrentState"].store( _X )
             self.StoredVariables["CostFunctionJb"].store( Jb )
             self.StoredVariables["CostFunctionJo"].store( Jo )
@@ -266,7 +266,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         #
         # Correction pour pallier a un bug de TNC sur le retour du Minimum
         # ----------------------------------------------------------------
-        if self._parameters["StoreInternalVariables"]:
+        if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
             Minimum = self.StoredVariables["CurrentState"][IndexMin]
         #
         # Obtention de l'analyse
index 6d4cc5acfcf8fdcdbe9255c953d719ef61910847..215d7d7ca26cf9f4a311011cf52d497e09f80064 100644 (file)
@@ -84,7 +84,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["BMA", "OMA", "OMB", "Innovation", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
+            listval  = ["BMA", "OMA", "OMB", "CurrentState", "CostFunctionJ", "Innovation", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -145,13 +145,6 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             #
             J   = float( Jb ) + float( Jo )
             #
-            if self._parameters["StoreInternalVariables"]:
-                self.StoredVariables["CurrentState"].store( _X )
-                self.StoredVariables["CostFunctionJb"].store( Jb )
-                self.StoredVariables["CostFunctionJo"].store( Jo )
-                self.StoredVariables["CostFunctionJ" ].store( J )
-            if "SimulatedObservationAtCurrentState" in self._parameters["StoreSupplementaryCalculations"]:
-                self.StoredVariables["SimulatedObservationAtCurrentState"].store( _HX )
             return J
         #
         # Point de démarrage de l'optimisation : Xini = Xb
@@ -195,7 +188,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
                 qBest = copy.copy( quality )
         logging.debug("%s Initialisation, Insecte = %s, Qualité = %s"%(self._name, str(Best), str(qBest)))
         #
-        if self._parameters["StoreInternalVariables"]:
+        if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
             self.StoredVariables["CurrentState"].store( Best )
         self.StoredVariables["CostFunctionJb"].store( 0. )
         self.StoredVariables["CostFunctionJo"].store( 0. )
@@ -220,8 +213,12 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
                         qBest = copy.copy( quality )
             logging.debug("%s Etape %i, Insecte = %s, Qualité = %s"%(self._name, n, str(Best), str(qBest)))
             #
-            if self._parameters["StoreInternalVariables"]:
+            if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["CurrentState"].store( Best )
+            if "SimulatedObservationAtCurrentState" in self._parameters["StoreSupplementaryCalculations"]:
+                _HmX = Hm( numpy.asmatrix(numpy.ravel( Best )).T )
+                _HmX = numpy.asmatrix(numpy.ravel( _HmX )).T
+                self.StoredVariables["SimulatedObservationAtCurrentState"].store( _HmX )
             self.StoredVariables["CostFunctionJb"].store( 0. )
             self.StoredVariables["CostFunctionJo"].store( 0. )
             self.StoredVariables["CostFunctionJ" ].store( qBest )
@@ -246,9 +243,9 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         if "Innovation" in self._parameters["StoreSupplementaryCalculations"]:
             self.StoredVariables["Innovation"].store( numpy.ravel(d) )
         if "BMA" in self._parameters["StoreSupplementaryCalculations"]:
-            self.StoredVariables["BMA"].store( numpy.ravel(Xb - Xa) )
+            self.StoredVariables["BMA"].store( numpy.ravel(Xb) - numpy.ravel(Xa) )
         if "OMA" in self._parameters["StoreSupplementaryCalculations"]:
-            self.StoredVariables["OMA"].store( numpy.ravel(Y - HXa) )
+            self.StoredVariables["OMA"].store( numpy.ravel(Y) - numpy.ravel(HXa) )
         if "OMB" in self._parameters["StoreSupplementaryCalculations"]:
             self.StoredVariables["OMB"].store( numpy.ravel(d) )
         if "SimulatedObservationAtBackground" in self._parameters["StoreSupplementaryCalculations"]:
index 482216f216baa3eca88a0067c7d9e64eaab5e1a2..b6a8504dbc6e07ecb224a62edda77b275e5bac50 100644 (file)
@@ -67,7 +67,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["BMA", "OMA", "OMB", "Innovation", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
+            listval  = ["BMA", "OMA", "OMB", "CurrentState", "CostFunctionJ", "Innovation", "SimulatedObservationAtBackground", "SimulatedObservationAtCurrentState", "SimulatedObservationAtOptimum"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -112,7 +112,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             Jb  = 0.
             Jo  = 0.
             J   = Jb + Jo
-            if self._parameters["StoreInternalVariables"]:
+            if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["CurrentState"].store( _X )
             if "SimulatedObservationAtCurrentState" in self._parameters["StoreSupplementaryCalculations"]:
                 self.StoredVariables["SimulatedObservationAtCurrentState"].store( _HX )
index bb881715c2c2bcd14adfdaee95faa43df1972737..9cbd4f5f2e9c38f5737a50b71f8c7c678738ae3a 100644 (file)
@@ -82,7 +82,7 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
             default  = [],
             typecast = tuple,
             message  = "Liste de calculs supplémentaires à stocker et/ou effectuer",
-            listval  = ["APosterioriCovariance", "BMA", "Innovation"]
+            listval  = ["APosterioriCovariance", "BMA", "CurrentState", "CostFunctionJ", "Innovation"]
             )
 
     def run(self, Xb=None, Y=None, U=None, HO=None, EM=None, CM=None, R=None, B=None, Q=None, Parameters=None):
@@ -140,8 +140,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
         else:
             Cm = None
         #
-        # Nombre de pas du Kalman identique au nombre de pas d'observations
-        # -----------------------------------------------------------------
+        # Nombre de pas identique au nombre de pas d'observations
+        # -------------------------------------------------------
         if hasattr(Y,"stepnumber"):
             duration = Y.stepnumber()
         else:
@@ -271,7 +271,8 @@ class ElementaryAlgorithm(BasicObjects.Algorithm):
                 Jb  = 0.5 * (Xn - Xb).T * BI * (Xn - Xb)
                 Jo  = 0.5 * d.T * RI * d
                 J   = float( Jb ) + float( Jo )
-                self.StoredVariables["CurrentState"].store( Xn )
+                if self._parameters["StoreInternalVariables"] or "CurrentState" in self._parameters["StoreSupplementaryCalculations"]:
+                    self.StoredVariables["CurrentState"].store( Xn )
                 self.StoredVariables["CostFunctionJb"].store( Jb )
                 self.StoredVariables["CostFunctionJo"].store( Jo )
                 self.StoredVariables["CostFunctionJ" ].store( J )