Salome HOME
Documentation and functions minor update correction
[modules/adao.git] / doc / fr / ref_algorithm_TangentTest.rst
1 ..
2    Copyright (C) 2008-2018 EDF R&D
3
4    This file is part of SALOME ADAO module.
5
6    This library is free software; you can redistribute it and/or
7    modify it under the terms of the GNU Lesser General Public
8    License as published by the Free Software Foundation; either
9    version 2.1 of the License, or (at your option) any later version.
10
11    This library is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14    Lesser General Public License for more details.
15
16    You should have received a copy of the GNU Lesser General Public
17    License along with this library; if not, write to the Free Software
18    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19
20    See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
22    Author: Jean-Philippe Argaud, jean-philippe.argaud@edf.fr, EDF R&D
23
24 .. index:: single: TangentTest
25 .. _section_ref_algorithm_TangentTest:
26
27 Algorithme de vérification "*TangentTest*"
28 ------------------------------------------
29
30 Description
31 +++++++++++
32
33 Cet algorithme permet de vérifier la qualité de l'opérateur tangent, en
34 calculant un résidu dont les propriétés théoriques sont connues.
35
36 On observe le résidu suivant, provenant du rapport d'incréments utilisant
37 l'opérateur linéaire tangent :
38
39 .. math:: R(\alpha) = \frac{|| F(\mathbf{x}+\alpha*\mathbf{dx}) - F(\mathbf{x}) ||}{|| \alpha * TangentF_x * \mathbf{dx} ||}
40
41 qui doit rester stable en :math:`1+O(\alpha)` jusqu'à ce que l'on atteigne la
42 précision du calcul.
43
44 Lorsque :math:`|R-1|/\alpha` est inférieur ou égal à une valeur stable lorsque
45 :math:`\alpha` varie, le tangent est valide, jusqu'à ce que l'on atteigne la
46 précision du calcul.
47
48 Si :math:`|R-1|/\alpha` est très faible, le code de calcul :math:`F` est
49 vraisemblablement linéaire ou quasi-linéaire (ce que l'on peut vérifier par
50 l':ref:`section_ref_algorithm_LinearityTest`), et le tangent est valide jusqu'à
51 ce que l'on atteigne la précision du calcul.
52
53 On prend :math:`\mathbf{dx}_0=Normal(0,\mathbf{x})` et
54 :math:`\mathbf{dx}=\alpha*\mathbf{dx}_0`. :math:`F` est le code de calcul.
55
56 Commandes requises et optionnelles
57 ++++++++++++++++++++++++++++++++++
58
59 Les commandes requises générales, disponibles dans l'interface en édition, sont
60 les suivantes:
61
62   .. include:: snippets/CheckingPoint.rst
63
64   .. include:: snippets/ObservationOperator.rst
65
66 Les commandes optionnelles générales, disponibles dans l'interface en édition,
67 sont indiquées dans la :ref:`section_ref_checking_keywords`. De plus, les
68 paramètres de la commande "*AlgorithmParameters*" permettent d'indiquer les
69 options particulières, décrites ci-après, de l'algorithme. On se reportera à la
70 :ref:`section_ref_options_Algorithm_Parameters` pour le bon usage de cette
71 commande.
72
73 Les options de l'algorithme sont les suivantes:
74
75   .. include:: snippets/AmplitudeOfInitialDirection.rst
76
77   .. include:: snippets/EpsilonMinimumExponent.rst
78
79   .. include:: snippets/InitialDirection.rst
80
81   .. include:: snippets/SetSeed.rst
82
83   StoreSupplementaryCalculations
84     .. index:: single: StoreSupplementaryCalculations
85
86     Cette liste indique les noms des variables supplémentaires qui peuvent être
87     disponibles à la fin de l'algorithme. Cela implique potentiellement des
88     calculs ou du stockage coûteux. La valeur par défaut est une liste vide,
89     aucune de ces variables n'étant calculée et stockée par défaut. Les noms
90     possibles sont dans la liste suivante : ["CurrentState", "Residu",
91     "SimulatedObservationAtCurrentState"].
92
93     Exemple :
94     ``{"StoreSupplementaryCalculations":["CurrentState"]}``
95
96 Informations et variables disponibles à la fin de l'algorithme
97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
98
99 En sortie, après exécution de l'algorithme, on dispose d'informations et de
100 variables issues du calcul. La description des
101 :ref:`section_ref_output_variables` indique la manière de les obtenir par la
102 méthode nommée ``get`` de la variable "*ADD*" du post-processing. Les variables
103 d'entrée, mises à disposition de l'utilisateur en sortie pour faciliter
104 l'écriture des procédures de post-processing, sont décrites dans
105 l':ref:`subsection_r_o_v_Inventaire`.
106
107 Les sorties non conditionnelles de l'algorithme sont les suivantes:
108
109   .. include:: snippets/Residu.rst
110
111 Les sorties conditionnelles de l'algorithme sont les suivantes:
112
113   .. include:: snippets/CurrentState.rst
114
115   .. include:: snippets/SimulatedObservationAtCurrentState.rst
116
117 Voir aussi
118 ++++++++++
119
120 Références vers d'autres sections :
121   - :ref:`section_ref_algorithm_FunctionTest`
122   - :ref:`section_ref_algorithm_LinearityTest`
123   - :ref:`section_ref_algorithm_AdjointTest`
124   - :ref:`section_ref_algorithm_GradientTest`