.. index:: single: GradientNormTolerance
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
The general required commands, available in the editing user interface, are the
following:
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"].
+ "Innovation", "SigmaObs2", "MahalanobisConsistency", "SimulationQuantiles"].
Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ This list indicates the values of quantile, between 0 and 1, to be estimated
+ by simulation around the optimal state. The sampling uses a multivariate
+ gaussian random sampling, directed by the *a posteriori* covariance matrix.
+ This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is a void list.
+
+ Example : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ This key allow to give an integer in order to fix the seed of the random
+ generator used to generate the ensemble. A convenient value is for example
+ 1000. By default, the seed is left uninitialized, and so use the default
+ initialization from the computer.
+
+ Example : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ This key indicates the number of simulation to be done in order to estimate
+ the quantiles. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is 100, which is often
+ sufficient for correct estimation of common quantiles at 5%, 10%, 90% or
+ 95%.
+
+ Example : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ This key indicates the type of simulation, linear (with the tangent
+ observation operator applied to perturbation increments around the optimal
+ state) or non-linear (with standard observation operator applied to
+ perturbated states), one want to do for each perturbation. It changes mainly
+ the time of each elementary calculation, usually longer in non-linear than
+ in linear. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default value is "Linear", and
+ the possible choices are "Linear" and "NonLinear".
+
+ Example : ``{"SimulationForQuantiles":"Linear"}``
+
See also
++++++++
.. index:: single: ObservationOperator
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
The general required commands, available in the editing user interface, are the
following:
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"].
+ "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency",
+ "SimulationQuantiles"].
Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ This list indicates the values of quantile, between 0 and 1, to be estimated
+ by simulation around the optimal state. The sampling uses a multivariate
+ gaussian random sampling, directed by the *a posteriori* covariance matrix.
+ This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is a void list.
+
+ Example : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ This key allow to give an integer in order to fix the seed of the random
+ generator used to generate the ensemble. A convenient value is for example
+ 1000. By default, the seed is left uninitialized, and so use the default
+ initialization from the computer.
+
+ Example : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ This key indicates the number of simulation to be done in order to estimate
+ the quantiles. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is 100, which is often
+ sufficient for correct estimation of common quantiles at 5%, 10%, 90% or
+ 95%.
+
+ Example : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ This key indicates the type of simulation, linear (with the tangent
+ observation operator applied to perturbation increments around the optimal
+ state) or non-linear (with standard observation operator applied to
+ perturbated states), one want to do for each perturbation. It changes mainly
+ the time of each elementary calculation, usually longer in non-linear than
+ in linear. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default value is "Linear", and
+ the possible choices are "Linear" and "NonLinear".
+
+ Example : ``{"SimulationForQuantiles":"Linear"}``
+
See also
++++++++
.. index:: single: ObservationOperator
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
The general required commands, available in the editing user interface, are the
following:
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"].
+ "Innovation", "SigmaBck2", "SigmaObs2", "MahalanobisConsistency",
+ "SimulationQuantiles"].
Example : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ This list indicates the values of quantile, between 0 and 1, to be estimated
+ by simulation around the optimal state. The sampling uses a multivariate
+ gaussian random sampling, directed by the *a posteriori* covariance matrix.
+ This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is a void list.
+
+ Example : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ This key allow to give an integer in order to fix the seed of the random
+ generator used to generate the ensemble. A convenient value is for example
+ 1000. By default, the seed is left uninitialized, and so use the default
+ initialization from the computer.
+
+ Example : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ This key indicates the number of simulation to be done in order to estimate
+ the quantiles. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default is 100, which is often
+ sufficient for correct estimation of common quantiles at 5%, 10%, 90% or
+ 95%.
+
+ Example : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ This key indicates the type of simulation, linear (with the tangent
+ observation operator applied to perturbation increments around the optimal
+ state) or non-linear (with standard observation operator applied to
+ perturbated states), one want to do for each perturbation. It changes mainly
+ the time of each elementary calculation, usually longer in non-linear than
+ in linear. This option is useful only if the supplementary calculation
+ "SimulationQuantiles" has been chosen. The default value is "Linear", and
+ the possible choices are "Linear" and "NonLinear".
+
+ Example : ``{"SimulationForQuantiles":"Linear"}``
+
See also
++++++++
.. index:: single: GradientNormTolerance
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
Les commandes requises générales, disponibles dans l'interface en édition, sont
les suivantes:
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"].
+ "OMA", "OMB", "Innovation", "SigmaObs2", "MahalanobisConsistency",
+ "SimulationQuantiles"].
Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ Cette liste indique les valeurs de quantile, entre 0 et 1, à estimer par
+ simulation autour de l'état optimal. L'échantillonnage utilise des tirages
+ aléatoires gaussiens multivariés, dirigés par la matrice de covariance a
+ posteriori. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. La valeur par défaut est une liste vide.
+
+ Exemple : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ Cette clé permet de donner un nombre entier pour fixer la graine du
+ générateur aléatoire utilisé pour générer l'ensemble. Un valeur pratique est
+ par exemple 1000. Par défaut, la graine est laissée non initialisée, et elle
+ utilise ainsi l'initialisation par défaut de l'ordinateur.
+
+ Exemple : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ Cette clé indique le nombre de simulations effectuées pour estimer les
+ quantiles. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. Le défaut est 100, ce qui suffit souvent
+ pour une estimation correcte de quantiles courants à 5%, 10%, 90% ou 95%.
+
+ Exemple : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ Cette clé indique le type de simulation, linéaire (avec l'opérateur
+ d'observation tangent appliqué sur des incréments de perturbations autour de
+ l'état optimal) ou non-linéaire (avec l'opérateur d'observation standard
+ appliqué aux états perturbés), que l'on veut faire pour chaque perturbation.
+ Cela change essentiellement le temps de chaque simulation élémentaire,
+ usuellement plus long en non-linéaire qu'en linéaire. Cette option n'est
+ utile que si le calcul supplémentaire "SimulationQuantiles" a été choisi. La
+ valeur par défaut est "Linear", et les choix possibles sont "Linear" et
+ "NonLinear".
+
+ Exemple : ``{"SimulationForQuantiles":"Linear"}``
+
Voir aussi
++++++++++
Cet algorithme est toujours le plus rapide de l'ensemble des algorithmes
d'assimilation d'ADAO. Il est théoriquement réservé aux cas d'opérateurs
d'observation linéaires, même s'il fonctionne parfois dans les cas "faiblement"
-non-linéaire. On peut vérifier la linéarité de l'opérateur d'observation à
+non-linéaires. On peut vérifier la linéarité de l'opérateur d'observation à
l'aide de l':ref:`section_ref_algorithm_LinearityTest`.
-En cas de non-linéarité, même peu marquée, on lui préfèrera aisément
+En cas de non-linéarité, même peu marquée, on lui préférera aisément
l':ref:`section_ref_algorithm_ExtendedBlue` ou
l':ref:`section_ref_algorithm_3DVAR`.
.. index:: single: ObservationOperator
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
Les commandes requises générales, disponibles dans l'interface en édition, sont
les suivantes:
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"].
+ "MahalanobisConsistency", "SimulationQuantiles"].
Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ Cette liste indique les valeurs de quantile, entre 0 et 1, à estimer par
+ simulation autour de l'état optimal. L'échantillonnage utilise des tirages
+ aléatoires gaussiens multivariés, dirigés par la matrice de covariance a
+ posteriori. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. La valeur par défaut est une liste vide.
+
+ Exemple : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ Cette clé permet de donner un nombre entier pour fixer la graine du
+ générateur aléatoire utilisé pour générer l'ensemble. Un valeur pratique est
+ par exemple 1000. Par défaut, la graine est laissée non initialisée, et elle
+ utilise ainsi l'initialisation par défaut de l'ordinateur.
+
+ Exemple : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ Cette clé indique le nombre de simulations effectuées pour estimer les
+ quantiles. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. Le défaut est 100, ce qui suffit souvent
+ pour une estimation correcte de quantiles courants à 5%, 10%, 90% ou 95%.
+
+ Exemple : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ Cette clé indique le type de simulation, linéaire (avec l'opérateur
+ d'observation tangent appliqué sur des incréments de perturbations autour de
+ l'état optimal) ou non-linéaire (avec l'opérateur d'observation standard
+ appliqué aux états perturbés), que l'on veut faire pour chaque perturbation.
+ Cela change essentiellement le temps de chaque simulation élémentaire,
+ usuellement plus long en non-linéaire qu'en linéaire. Cette option n'est
+ utile que si le calcul supplémentaire "SimulationQuantiles" a été choisi. La
+ valeur par défaut est "Linear", et les choix possibles sont "Linear" et
+ "NonLinear".
+
+ Exemple : ``{"SimulationForQuantiles":"Linear"}``
+
Voir aussi
++++++++++
.. index:: single: ObservationOperator
.. index:: single: StoreInternalVariables
.. index:: single: StoreSupplementaryCalculations
+.. index:: single: Quantiles
+.. index:: single: SetSeed
+.. index:: single: NumberOfSamplesForQuantiles
+.. index:: single: SimulationForQuantiles
Les commandes requises générales, disponibles dans l'interface en édition, sont
les suivantes:
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"].
+ "MahalanobisConsistency", "SimulationQuantiles"].
Exemple : ``{"StoreSupplementaryCalculations":["BMA","Innovation"]}``
+ Quantiles
+ Cette liste indique les valeurs de quantile, entre 0 et 1, à estimer par
+ simulation autour de l'état optimal. L'échantillonnage utilise des tirages
+ aléatoires gaussiens multivariés, dirigés par la matrice de covariance a
+ posteriori. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. La valeur par défaut est une liste vide.
+
+ Exemple : ``{"Quantiles":[0.1,0.9]}``
+
+ SetSeed
+ Cette clé permet de donner un nombre entier pour fixer la graine du
+ générateur aléatoire utilisé pour générer l'ensemble. Un valeur pratique est
+ par exemple 1000. Par défaut, la graine est laissée non initialisée, et elle
+ utilise ainsi l'initialisation par défaut de l'ordinateur.
+
+ Exemple : ``{"SetSeed":1000}``
+
+ NumberOfSamplesForQuantiles
+ Cette clé indique le nombre de simulations effectuées pour estimer les
+ quantiles. Cette option n'est utile que si le calcul supplémentaire
+ "SimulationQuantiles" a été choisi. Le défaut est 100, ce qui suffit souvent
+ pour une estimation correcte de quantiles courants à 5%, 10%, 90% ou 95%.
+
+ Exemple : ``{"NumberOfSamplesForQuantiles":100}``
+
+ SimulationForQuantiles
+ Cette clé indique le type de simulation, linéaire (avec l'opérateur
+ d'observation tangent appliqué sur des incréments de perturbations autour de
+ l'état optimal) ou non-linéaire (avec l'opérateur d'observation standard
+ appliqué aux états perturbés), que l'on veut faire pour chaque perturbation.
+ Cela change essentiellement le temps de chaque simulation élémentaire,
+ usuellement plus long en non-linéaire qu'en linéaire. Cette option n'est
+ utile que si le calcul supplémentaire "SimulationQuantiles" a été choisi. La
+ valeur par défaut est "Linear", et les choix possibles sont "Linear" et
+ "NonLinear".
+
+ Exemple : ``{"SimulationForQuantiles":"Linear"}``
+
Voir aussi
++++++++++
default = [],
typecast = tuple,
message = "Liste des valeurs de quantiles",
+ minval = 0.,
+ maxval = 1.,
)
self.defineRequiredParameter(
name = "SetSeed",
default = [],
typecast = tuple,
message = "Liste des valeurs de quantiles",
+ minval = 0.,
+ maxval = 1.,
)
self.defineRequiredParameter(
name = "SetSeed",
default = [],
typecast = tuple,
message = "Liste des valeurs de quantiles",
+ minval = 0.,
+ maxval = 1.,
)
self.defineRequiredParameter(
name = "SetSeed",
if typecast is None: __val = value
else: __val = typecast( value )
#
- if minval is not None and __val < minval:
+ if minval is not None and (numpy.array(__val) < minval).any():
raise ValueError("The parameter named \"%s\" of value \"%s\" can not be less than %s."%(name, __val, minval))
- if maxval is not None and __val > maxval:
+ if maxval is not None and (numpy.array(__val) > maxval).any():
raise ValueError("The parameter named \"%s\" of value \"%s\" can not be greater than %s."%(name, __val, maxval))
if listval is not None:
if typecast is list or typecast is tuple or type(__val) is list or type(__val) is tuple: