2 # Copyright (C) 2010-2011 EDF R&D
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License.
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # Lesser General Public License for more details.
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 # Author: Andre Ribes, andre.ribes@edf.fr, EDF R&D
23 # -- Infos pour le parser --
26 AnalysisFromList = ["String", "Script"]
28 # -- Infos from daCore --
29 AssimData = ["Background", "BackgroundError",
30 "Observation", "ObservationError",
31 "ObservationOperator",
32 "EvolutionModel", "EvolutionError",
33 "AlgorithmParameters"]
36 AssimType["Background"] = ["Vector"]
37 AssimType["BackgroundError"] = ["Matrix"]
38 AssimType["Observation"] = ["Vector"]
39 AssimType["ObservationError"] = ["Matrix"]
40 AssimType["ObservationOperator"] = ["Matrix", "Function"]
41 AssimType["EvolutionModel"] = ["Matrix", "Function"]
42 AssimType["EvolutionError"] = ["Matrix"]
43 AssimType["AlgorithmParameters"] = ["Dict"]
44 AssimType["UserDataInit"] = ["Dict"]
47 FromNumpyList["Vector"] = ["String", "Script"]
48 FromNumpyList["Matrix"] = ["String", "Script"]
49 FromNumpyList["Function"] = ["FunctionDict"]
50 FromNumpyList["Dict"] = ["Script"]
52 # -- Infos from daAlgorithms --
57 # "KalmanFilter", # Removed because EvolutionModel must be available in OptLoop
59 "NonLinearLeastSquares",
63 AlgoDataRequirements = {}
64 AlgoDataRequirements["3DVAR"] = [
65 "Background", "BackgroundError",
66 "Observation", "ObservationError",
67 "ObservationOperator",
69 AlgoDataRequirements["Blue"] = [
70 "Background", "BackgroundError",
71 "Observation", "ObservationError",
72 "ObservationOperator",
74 AlgoDataRequirements["EnsembleBlue"] = [
75 "Background", "BackgroundError",
76 "Observation", "ObservationError",
77 "ObservationOperator",
79 # AlgoDataRequirements["KalmanFilter"] = [
80 # "Background", "BackgroundError",
81 # "Observation", "ObservationError",
82 # "EvolutionModel", "EvolutionError",
83 # "ObservationOperator",
85 AlgoDataRequirements["LinearLeastSquares"] = [
86 "Observation", "ObservationError",
87 "ObservationOperator",
89 AlgoDataRequirements["NonLinearLeastSquares"] = [
91 "Observation", "ObservationError",
92 "ObservationOperator",
94 AlgoDataRequirements["QuantileRegression"] = [
97 "ObservationOperator",
101 AlgoType["3DVAR"] = "Optim"
102 AlgoType["Blue"] = "Optim"
103 AlgoType["EnsembleBlue"] = "Optim"
104 # AlgoType["KalmanFilter"] = "Optim"
105 AlgoType["LinearLeastSquares"] = "Optim"
106 AlgoType["NonLinearLeastSquares"] = "Optim"
107 AlgoType["QuantileRegression"] = "Optim"
109 # Variables qui sont partages avec le generateur de
113 BasicDataInputs = ["String", "Script", "FunctionDict"]
117 DataTypeDict["Vector"] = ["String", "Script"]
118 DataTypeDict["Matrix"] = ["String", "Script"]
119 DataTypeDict["Function"] = ["FunctionDict"]
120 DataTypeDict["Dict"] = ["Script"]
122 DataTypeDefaultDict = {}
123 DataTypeDefaultDict["Vector"] = "Script"
124 DataTypeDefaultDict["Matrix"] = "Script"
125 DataTypeDefaultDict["Function"] = "FunctionDict"
126 DataTypeDefaultDict["Dict"] = "Script"
128 # Assimilation data input
130 AssimDataDict["Background"] = ["Vector"]
131 AssimDataDict["BackgroundError"] = ["Matrix"]
132 AssimDataDict["Observation"] = ["Vector"]
133 AssimDataDict["ObservationError"] = ["Matrix"]
134 AssimDataDict["ObservationOperator"] = ["Matrix", "Function"]
135 AssimDataDict["EvolutionModel"] = ["Matrix", "Function"]
136 AssimDataDict["EvolutionError"] = ["Matrix"]
137 AssimDataDict["AlgorithmParameters"] = ["Dict"]
138 AssimDataDict["UserDataInit"] = ["Dict"]
140 AssimDataDefaultDict = {}
141 AssimDataDefaultDict["Background"] = "Vector"
142 AssimDataDefaultDict["BackgroundError"] = "Matrix"
143 AssimDataDefaultDict["Observation"] = "Vector"
144 AssimDataDefaultDict["ObservationError"] = "Matrix"
145 AssimDataDefaultDict["ObservationOperator"] = "Function"
146 AssimDataDefaultDict["EvolutionModel"] = "Function"
147 AssimDataDefaultDict["EvolutionError"] = "Matrix"
148 AssimDataDefaultDict["AlgorithmParameters"] = "Dict"
149 AssimDataDefaultDict["UserDataInit"] = "Dict"
151 # Assimilation optional nodes
153 OptDict["UserPostAnalysis"] = ["String", "Script"]
155 OptDefaultDict["UserPostAnalysis"] = "Script"
168 "GradientOfCostFunctionJ",
169 "GradientOfCostFunctionJb",
170 "GradientOfCostFunctionJo",
173 "APosterioriCovariance",