2 # Copyright (C) 2008-2015 EDF R&D
4 # This file is part of SALOME ADAO module
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.
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.
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
20 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 # Author: Andre Ribes, andre.ribes@edf.fr, EDF R&D
25 # -- Infos pour le parser --
28 AnalysisFromList = ["String", "Script"]
30 # -- Infos from daCore --
31 AssimData = ["Background", "BackgroundError",
32 "Observation", "ObservationError",
33 "ObservationOperator",
34 "EvolutionModel", "EvolutionError",
35 "AlgorithmParameters",
36 "CheckingPoint", "ControlInput",
40 AssimType["Background"] = ["Vector", "VectorSerie"]
41 AssimType["BackgroundError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
42 AssimType["Observation"] = ["Vector", "VectorSerie"]
43 AssimType["ObservationError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
44 AssimType["ObservationOperator"] = ["Matrix", "Function"]
45 AssimType["EvolutionModel"] = ["Matrix", "Function"]
46 AssimType["EvolutionError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
47 AssimType["AlgorithmParameters"] = ["Dict"]
48 AssimType["UserDataInit"] = ["Dict"]
49 AssimType["CheckingPoint"] = ["Vector"]
50 AssimType["ControlInput"] = ["Vector", "VectorSerie"]
53 FromNumpyList["Vector"] = ["String", "Script"]
54 FromNumpyList["VectorSerie"] = ["String", "Script"]
55 FromNumpyList["Matrix"] = ["String", "Script"]
56 FromNumpyList["ScalarSparseMatrix"] = ["String", "Script"]
57 FromNumpyList["DiagonalSparseMatrix"] = ["String", "Script"]
58 FromNumpyList["Function"] = ["ScriptWithOneFunction", "ScriptWithFunctions", "ScriptWithSwitch", "FunctionDict"]
59 FromNumpyList["Dict"] = ["String", "Script"]
61 # -- Infos from daAlgorithms --
68 "ExtendedKalmanFilter",
69 "UnscentedKalmanFilter",
71 "NonLinearLeastSquares",
73 "ParticleSwarmOptimization",
85 AlgoDataRequirements = {}
86 AlgoDataRequirements["3DVAR"] = [
87 "Background", "BackgroundError",
88 "Observation", "ObservationError",
89 "ObservationOperator",
91 AlgoDataRequirements["Blue"] = [
92 "Background", "BackgroundError",
93 "Observation", "ObservationError",
94 "ObservationOperator",
96 AlgoDataRequirements["ExtendedBlue"] = [
97 "Background", "BackgroundError",
98 "Observation", "ObservationError",
99 "ObservationOperator",
101 AlgoDataRequirements["EnsembleBlue"] = [
102 "Background", "BackgroundError",
103 "Observation", "ObservationError",
104 "ObservationOperator",
106 AlgoDataRequirements["KalmanFilter"] = [
107 "Background", "BackgroundError",
108 "Observation", "ObservationError",
110 AlgoDataRequirements["ExtendedKalmanFilter"] = [
111 "Background", "BackgroundError",
112 "Observation", "ObservationError",
113 "ObservationOperator",
115 AlgoDataRequirements["UnscentedKalmanFilter"] = [
116 "Background", "BackgroundError",
117 "Observation", "ObservationError",
118 "ObservationOperator",
120 AlgoDataRequirements["LinearLeastSquares"] = [
121 "Observation", "ObservationError",
122 "ObservationOperator",
124 AlgoDataRequirements["NonLinearLeastSquares"] = [
126 "Observation", "ObservationError",
127 "ObservationOperator",
129 AlgoDataRequirements["ParticleSwarmOptimization"] = [
130 "Background", "BackgroundError",
131 "Observation", "ObservationError",
132 "ObservationOperator",
134 AlgoDataRequirements["QuantileRegression"] = [
137 "ObservationOperator",
140 AlgoDataRequirements["FunctionTest"] = [
142 "ObservationOperator",
144 AlgoDataRequirements["LinearityTest"] = [
146 "ObservationOperator",
148 AlgoDataRequirements["GradientTest"] = [
150 "ObservationOperator",
152 AlgoDataRequirements["AdjointTest"] = [
154 "ObservationOperator",
156 AlgoDataRequirements["ObserverTest"] = [
159 AlgoDataRequirements["TangentTest"] = [
161 "ObservationOperator",
163 AlgoDataRequirements["SamplingTest"] = [
164 "CheckingPoint", "BackgroundError",
165 "Observation", "ObservationError",
166 "ObservationOperator",
170 AlgoType["3DVAR"] = "Optim"
171 AlgoType["Blue"] = "Optim"
172 AlgoType["ExtendedBlue"] = "Optim"
173 AlgoType["EnsembleBlue"] = "Optim"
174 AlgoType["KalmanFilter"] = "Optim"
175 AlgoType["ExtendedKalmanFilter"] = "Optim"
176 AlgoType["UnscentedKalmanFilter"] = "Optim"
177 AlgoType["LinearLeastSquares"] = "Optim"
178 AlgoType["NonLinearLeastSquares"] = "Optim"
179 AlgoType["ParticleSwarmOptimization"] = "Optim"
180 AlgoType["QuantileRegression"] = "Optim"
182 # Variables qui sont partages avec le generateur de
186 BasicDataInputs = ["String", "Script", "ScriptWithOneFunction", "ScriptWithFunctions", "ScriptWithSwitch", "FunctionDict"]
190 DataTypeDict["Vector"] = ["String", "Script"]
191 DataTypeDict["VectorSerie"] = ["String", "Script"]
192 DataTypeDict["Matrix"] = ["String", "Script"]
193 DataTypeDict["ScalarSparseMatrix"] = ["String", "Script"]
194 DataTypeDict["DiagonalSparseMatrix"] = ["String", "Script"]
195 DataTypeDict["Function"] = ["ScriptWithOneFunction", "ScriptWithFunctions", "ScriptWithSwitch", "FunctionDict"]
196 DataTypeDict["Dict"] = ["String", "Script"]
198 DataTypeDefaultDict = {}
199 DataTypeDefaultDict["Vector"] = "Script"
200 DataTypeDefaultDict["VectorSerie"] = "Script"
201 DataTypeDefaultDict["Matrix"] = "Script"
202 DataTypeDefaultDict["ScalarSparseMatrix"] = "String"
203 DataTypeDefaultDict["DiagonalSparseMatrix"] = "String"
204 DataTypeDefaultDict["Function"] = "ScriptWithOneFunction"
205 DataTypeDefaultDict["Dict"] = "Script"
207 DataSValueDefaultDict = {}
208 DataSValueDefaultDict["ScalarSparseMatrix"] = "1."
210 # Assimilation data input
212 AssimDataDict["Background"] = ["Vector", "VectorSerie"]
213 AssimDataDict["BackgroundError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
214 AssimDataDict["Observation"] = ["Vector", "VectorSerie"]
215 AssimDataDict["ObservationError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
216 AssimDataDict["ObservationOperator"] = ["Matrix", "Function"]
217 AssimDataDict["EvolutionModel"] = ["Matrix", "Function"]
218 AssimDataDict["EvolutionError"] = ["Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
219 AssimDataDict["AlgorithmParameters"] = ["Dict"]
220 AssimDataDict["UserDataInit"] = ["Dict"]
221 AssimDataDict["CheckingPoint"] = ["Vector"]
222 AssimDataDict["ControlInput"] = ["Vector", "VectorSerie"]
224 AssimDataDefaultDict = {}
225 AssimDataDefaultDict["Background"] = "Vector"
226 AssimDataDefaultDict["BackgroundError"] = "ScalarSparseMatrix"
227 AssimDataDefaultDict["Observation"] = "Vector"
228 AssimDataDefaultDict["ObservationError"] = "ScalarSparseMatrix"
229 AssimDataDefaultDict["ObservationOperator"] = "Function"
230 AssimDataDefaultDict["EvolutionModel"] = "Function"
231 AssimDataDefaultDict["EvolutionError"] = "ScalarSparseMatrix"
232 AssimDataDefaultDict["AlgorithmParameters"] = "Dict"
233 AssimDataDefaultDict["UserDataInit"] = "Dict"
234 AssimDataDefaultDict["CheckingPoint"] = "Vector"
235 AssimDataDefaultDict["ControlInput"] = "Vector"
237 StoredAssimData = ["Vector", "VectorSerie", "Matrix", "ScalarSparseMatrix", "DiagonalSparseMatrix"]
239 # Assimilation optional nodes
241 OptDict["UserPostAnalysis"] = ["String", "Script", "Template"]
243 OptDefaultDict["UserPostAnalysis"] = "Template"
249 "InnovationAtCurrentState",
253 "SimulatedObservationAtBackground",
254 "SimulatedObservationAtCurrentState",
255 "SimulatedObservationAtOptimum",
256 "SimulatedObservationAtCurrentOptimum",
263 "GradientOfCostFunctionJ",
264 "GradientOfCostFunctionJb",
265 "GradientOfCostFunctionJo",
268 "APosterioriCorrelations",
269 "APosterioriCovariance",
270 "APosterioriStandardDeviations",
271 "APosterioriVariances",