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",
38 AssimType["Background"] = ["Vector"]
39 AssimType["BackgroundError"] = ["Matrix"]
40 AssimType["Observation"] = ["Vector"]
41 AssimType["ObservationError"] = ["Matrix"]
42 AssimType["ObservationOperator"] = ["Matrix", "Function"]
43 AssimType["EvolutionModel"] = ["Matrix", "Function"]
44 AssimType["EvolutionError"] = ["Matrix"]
45 AssimType["AlgorithmParameters"] = ["Dict"]
46 AssimType["UserDataInit"] = ["Dict"]
47 AssimType["CheckingPoint"] = ["Vector"]
50 FromNumpyList["Vector"] = ["String", "Script"]
51 FromNumpyList["Matrix"] = ["String", "Script"]
52 FromNumpyList["Function"] = ["FunctionDict"]
53 FromNumpyList["Dict"] = ["Script"]
55 # -- Infos from daAlgorithms --
60 # "KalmanFilter", # Removed because EvolutionModel must be available in OptLoop
62 "NonLinearLeastSquares",
70 AlgoDataRequirements = {}
71 AlgoDataRequirements["3DVAR"] = [
72 "Background", "BackgroundError",
73 "Observation", "ObservationError",
74 "ObservationOperator",
76 AlgoDataRequirements["Blue"] = [
77 "Background", "BackgroundError",
78 "Observation", "ObservationError",
79 "ObservationOperator",
81 AlgoDataRequirements["EnsembleBlue"] = [
82 "Background", "BackgroundError",
83 "Observation", "ObservationError",
84 "ObservationOperator",
86 # AlgoDataRequirements["KalmanFilter"] = [
87 # "Background", "BackgroundError",
88 # "Observation", "ObservationError",
89 # "EvolutionModel", "EvolutionError",
90 # "ObservationOperator",
92 AlgoDataRequirements["LinearLeastSquares"] = [
93 "Observation", "ObservationError",
94 "ObservationOperator",
96 AlgoDataRequirements["NonLinearLeastSquares"] = [
98 "Observation", "ObservationError",
99 "ObservationOperator",
101 AlgoDataRequirements["QuantileRegression"] = [
104 "ObservationOperator",
106 AlgoDataRequirements["GradientTest"] = [
108 "ObservationOperator",
112 AlgoType["3DVAR"] = "Optim"
113 AlgoType["Blue"] = "Optim"
114 AlgoType["EnsembleBlue"] = "Optim"
115 # AlgoType["KalmanFilter"] = "Optim"
116 AlgoType["LinearLeastSquares"] = "Optim"
117 AlgoType["NonLinearLeastSquares"] = "Optim"
118 AlgoType["QuantileRegression"] = "Optim"
120 # Variables qui sont partages avec le generateur de
124 BasicDataInputs = ["String", "Script", "FunctionDict"]
128 DataTypeDict["Vector"] = ["String", "Script"]
129 DataTypeDict["Matrix"] = ["String", "Script"]
130 DataTypeDict["Function"] = ["FunctionDict"]
131 DataTypeDict["Dict"] = ["Script"]
133 DataTypeDefaultDict = {}
134 DataTypeDefaultDict["Vector"] = "Script"
135 DataTypeDefaultDict["Matrix"] = "Script"
136 DataTypeDefaultDict["Function"] = "FunctionDict"
137 DataTypeDefaultDict["Dict"] = "Script"
139 # Assimilation data input
141 AssimDataDict["Background"] = ["Vector"]
142 AssimDataDict["BackgroundError"] = ["Matrix"]
143 AssimDataDict["Observation"] = ["Vector"]
144 AssimDataDict["ObservationError"] = ["Matrix"]
145 AssimDataDict["ObservationOperator"] = ["Matrix", "Function"]
146 AssimDataDict["EvolutionModel"] = ["Matrix", "Function"]
147 AssimDataDict["EvolutionError"] = ["Matrix"]
148 AssimDataDict["AlgorithmParameters"] = ["Dict"]
149 AssimDataDict["UserDataInit"] = ["Dict"]
150 AssimDataDict["CheckingPoint"] = ["Vector"]
152 AssimDataDefaultDict = {}
153 AssimDataDefaultDict["Background"] = "Vector"
154 AssimDataDefaultDict["BackgroundError"] = "Matrix"
155 AssimDataDefaultDict["Observation"] = "Vector"
156 AssimDataDefaultDict["ObservationError"] = "Matrix"
157 AssimDataDefaultDict["ObservationOperator"] = "Function"
158 AssimDataDefaultDict["EvolutionModel"] = "Function"
159 AssimDataDefaultDict["EvolutionError"] = "Matrix"
160 AssimDataDefaultDict["AlgorithmParameters"] = "Dict"
161 AssimDataDefaultDict["UserDataInit"] = "Dict"
162 AssimDataDefaultDict["CheckingPoint"] = "Vector"
164 # Assimilation optional nodes
166 OptDict["UserPostAnalysis"] = ["String", "Script"]
168 OptDefaultDict["UserPostAnalysis"] = "Script"
181 "GradientOfCostFunctionJ",
182 "GradientOfCostFunctionJb",
183 "GradientOfCostFunctionJo",
186 "APosterioriCovariance",