2 # Copyright (C) 2010 EDF R&D
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU 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
19 # Author : André RIBES (EDF R&D)
23 # -- Infos pour le parser --
26 AnalysisFromList = ["String", "Script"]
28 # -- Infos from daCore --
29 #AssimData = ["Background", "BackgroundError",
30 # "Observation", "ObservationError", "ObservationOperator", "ObservationOperatorAppliedToX",
31 # "EvolutionModel", "EvolutionError", "AlgorithmParameters"]
33 AssimData = ["Background", "BackgroundError",
34 "Observation", "ObservationError", "ObservationOperator",
35 "EvolutionModel", "EvolutionError", "AlgorithmParameters"]
39 AssimType["Background"] = ["Vector"]
40 AssimType["BackgroundError"] = ["Matrix"]
41 AssimType["Observation"] = ["Vector"]
42 AssimType["ObservationError"] = ["Matrix"]
43 AssimType["ObservationOperator"] = ["Matrix", "Function"]
44 AssimType["AlgorithmParameters"] = ["Dict"]
45 AssimType["UserDataInit"] = ["Dict"]
46 #AssimType["ObservationOperatorAppliedToX"] = ["List"]
49 FromNumpyList["Vector"] = ["String", "Script"]
50 FromNumpyList["Matrix"] = ["String", "Script"]
51 FromNumpyList["Function"] = ["FunctionDict"]
52 FromNumpyList["Dict"] = ["Script"]
54 # -- Infos from daAlgorithms --
55 AssimAlgos = ["Blue", "EnsembleBlue", "Kalman", "LinearLeastSquares", "3DVAR"]
57 AlgoDataRequirements = {}
58 AlgoDataRequirements["Blue"] = ["Background", "BackgroundError",
59 "Observation", "ObservationOperator", "ObservationError"]
61 AlgoDataRequirements["3DVAR"] = ["Background", "BackgroundError",
62 "Observation", "ObservationOperator", "ObservationError"]
64 AlgoType["Blue"] = "Optim"
65 AlgoType["3DVAR"] = "Optim"
66 AlgoType["EnsembleBlue"] = "Optim"
67 AlgoType["Kalman"] = "Optim"
68 AlgoType["LinearLeastSquares"] = "Optim"
69 #AlgoType["Blue"] = "Direct"
72 # Variables qui sont partagés avec le générateur de
76 BasicDataInputs = ["String", "Script", "FunctionDict"]
80 DataTypeDict["Vector"] = ["String", "Script"]
81 DataTypeDict["Matrix"] = ["String", "Script"]
82 DataTypeDict["Function"] = ["FunctionDict"]
83 DataTypeDict["Dict"] = ["Script"]
85 DataTypeDefaultDict = {}
86 DataTypeDefaultDict["Vector"] = "Script"
87 DataTypeDefaultDict["Matrix"] = "Script"
88 DataTypeDefaultDict["Function"] = "FunctionDict"
89 DataTypeDefaultDict["Dict"] = "Script"
91 # Assimilation data input
93 AssimDataDict["Background"] = ["Vector"]
94 AssimDataDict["BackgroundError"] = ["Matrix"]
95 AssimDataDict["Observation"] = ["Vector"]
96 AssimDataDict["ObservationError"] = ["Matrix"]
97 AssimDataDict["ObservationOperator"] = ["Matrix", "Function"]
98 AssimDataDict["AlgorithmParameters"] = ["Dict"]
99 AssimDataDict["UserDataInit"] = ["Dict"]
101 AssimDataDefaultDict = {}
102 AssimDataDefaultDict["Background"] = "Vector"
103 AssimDataDefaultDict["BackgroundError"] = "Matrix"
104 AssimDataDefaultDict["Observation"] = "Vector"
105 AssimDataDefaultDict["ObservationError"] = "Matrix"
106 AssimDataDefaultDict["ObservationOperator"] = "Function"
107 AssimDataDefaultDict["AlgorithmParameters"] = "Dict"
108 AssimDataDefaultDict["UserDataInit"] = "Dict"
110 # Assimilation optional nodes
112 OptDict["UserPostAnalysis"] = ["String", "Script"]
114 OptDefaultDict["UserPostAnalysis"] = "Script"