1 | /*
|
---|
2 | * \file EnumDefinitions.h:
|
---|
3 | * \brief: enum functions for our objects
|
---|
4 | */
|
---|
5 |
|
---|
6 | #ifndef _ENUM_DEFINITIONS_
|
---|
7 | #define _ENUM_DEFINITIONS_
|
---|
8 |
|
---|
9 | #include "../modules/EnumToStringx/EnumToStringx.h"
|
---|
10 | #include "../modules/StringToEnumx/StringToEnumx.h"
|
---|
11 |
|
---|
12 | enum definitions{
|
---|
13 | /*Model fields {{{1*/
|
---|
14 | AutodiffForwardEnum,
|
---|
15 | AutodiffIsautodiffEnum,
|
---|
16 | AutodiffReverseEnum,
|
---|
17 | BalancethicknessSpcthicknessEnum,
|
---|
18 | BalancethicknessStabilizationEnum,
|
---|
19 | BalancethicknessThickeningRateEnum,
|
---|
20 | BasalforcingsGeothermalfluxEnum,
|
---|
21 | BasalforcingsMeltingRateCorrectionEnum,
|
---|
22 | BasalforcingsMeltingRateEnum,
|
---|
23 | BathymetryEnum,
|
---|
24 | BedEnum,
|
---|
25 | ConstantsGEnum,
|
---|
26 | ConstantsReferencetemperatureEnum,
|
---|
27 | ConstantsYtsEnum,
|
---|
28 | DiagnosticAbstolEnum,
|
---|
29 | DiagnosticIcefrontEnum,
|
---|
30 | DiagnosticMaxiterEnum,
|
---|
31 | DiagnosticNumRequestedOutputsEnum,
|
---|
32 | DiagnosticPenaltyFactorEnum,
|
---|
33 | DiagnosticReferentialEnum,
|
---|
34 | DiagnosticReltolEnum,
|
---|
35 | DiagnosticRequestedOutputsEnum,
|
---|
36 | DiagnosticRestolEnum,
|
---|
37 | DiagnosticRiftPenaltyLockEnum,
|
---|
38 | DiagnosticRiftPenaltyThresholdEnum,
|
---|
39 | DiagnosticShelfDampeningEnum,
|
---|
40 | DiagnosticSpcvxEnum,
|
---|
41 | DiagnosticSpcvyEnum,
|
---|
42 | DiagnosticSpcvzEnum,
|
---|
43 | DiagnosticStokesreconditioningEnum,
|
---|
44 | DiagnosticVertexPairingEnum,
|
---|
45 | DiagnosticViscosityOvershootEnum,
|
---|
46 | FlowequationBordermacayealEnum,
|
---|
47 | FlowequationBorderpattynEnum,
|
---|
48 | FlowequationBorderstokesEnum,
|
---|
49 | FlowequationElementEquationEnum,
|
---|
50 | FlowequationIshutterEnum,
|
---|
51 | FlowequationIsmacayealpattynEnum,
|
---|
52 | FlowequationIsstokesEnum,
|
---|
53 | FlowequationVertexEquationEnum,
|
---|
54 | FrictionCoefficientEnum,
|
---|
55 | FrictionPEnum,
|
---|
56 | FrictionQEnum,
|
---|
57 | GeometryHydrostaticRatioEnum,
|
---|
58 | HydrologyCREnum,
|
---|
59 | HydrologyKnEnum,
|
---|
60 | HydrologyNEnum,
|
---|
61 | HydrologyPEnum,
|
---|
62 | HydrologyQEnum,
|
---|
63 | HydrologySpcwatercolumnEnum,
|
---|
64 | HydrologyStabilizationEnum,
|
---|
65 | InversionControlParametersEnum,
|
---|
66 | InversionCostFunctionEnum,
|
---|
67 | InversionCostFunctionThresholdEnum,
|
---|
68 | InversionCostFunctionsCoefficientsEnum,
|
---|
69 | InversionCostFunctionsEnum,
|
---|
70 | InversionGradientOnlyEnum,
|
---|
71 | InversionGradientScalingEnum,
|
---|
72 | InversionIscontrolEnum,
|
---|
73 | InversionMaxParametersEnum,
|
---|
74 | InversionMaxiterPerStepEnum,
|
---|
75 | InversionMinParametersEnum,
|
---|
76 | InversionNstepsEnum,
|
---|
77 | InversionNumControlParametersEnum,
|
---|
78 | InversionNumCostFunctionsEnum,
|
---|
79 | InversionStepThresholdEnum,
|
---|
80 | InversionThicknessObsEnum,
|
---|
81 | InversionVelObsEnum,
|
---|
82 | InversionVxObsEnum,
|
---|
83 | InversionVyObsEnum,
|
---|
84 | InversionVzObsEnum,
|
---|
85 | MaskElementonfloatingiceEnum,
|
---|
86 | MaskElementongroundediceEnum,
|
---|
87 | MaskElementonwaterEnum,
|
---|
88 | MaskVertexonfloatingiceEnum,
|
---|
89 | MaskVertexongroundediceEnum,
|
---|
90 | MaskVertexonwaterEnum,
|
---|
91 | MaterialsBetaEnum,
|
---|
92 | MaterialsHeatcapacityEnum,
|
---|
93 | MaterialsLatentheatEnum,
|
---|
94 | MaterialsMeltingpointEnum,
|
---|
95 | MaterialsMixedLayerCapacityEnum,
|
---|
96 | MaterialsRheologyBEnum,
|
---|
97 | MaterialsRheologyBbarEnum,
|
---|
98 | MaterialsRheologyLawEnum,
|
---|
99 | MaterialsRheologyNEnum,
|
---|
100 | MaterialsRhoIceEnum,
|
---|
101 | MaterialsRhoWaterEnum,
|
---|
102 | MaterialsMuWaterEnum,
|
---|
103 | MaterialsThermalExchangeVelocityEnum,
|
---|
104 | MaterialsThermalconductivityEnum,
|
---|
105 | MeshAverageVertexConnectivityEnum,
|
---|
106 | MeshDimensionEnum,
|
---|
107 | MeshEdgesEnum,
|
---|
108 | MeshElementconnectivityEnum,
|
---|
109 | MeshElementonbedEnum,
|
---|
110 | MeshElementonsurfaceEnum,
|
---|
111 | MeshElements2dEnum,
|
---|
112 | MeshElementsEnum,
|
---|
113 | MeshLowerelementsEnum,
|
---|
114 | MeshNumberofedgesEnum,
|
---|
115 | MeshNumberofelements2dEnum,
|
---|
116 | MeshNumberofelementsEnum,
|
---|
117 | MeshNumberoflayersEnum,
|
---|
118 | MeshNumberofvertices2dEnum,
|
---|
119 | MeshNumberofverticesEnum,
|
---|
120 | MeshUpperelementsEnum,
|
---|
121 | MeshVertexonbedEnum,
|
---|
122 | MeshVertexonsurfaceEnum,
|
---|
123 | MeshXEnum,
|
---|
124 | MeshYEnum,
|
---|
125 | MeshZEnum,
|
---|
126 | MiscellaneousNameEnum, //FIXME: only used by qmu, should not be marshalled (already in queueing script)
|
---|
127 | PrognosticHydrostaticAdjustmentEnum,
|
---|
128 | PrognosticPenaltyFactorEnum,
|
---|
129 | PrognosticSpcthicknessEnum,
|
---|
130 | PrognosticStabilizationEnum,
|
---|
131 | PrognosticVertexPairingEnum,
|
---|
132 | QmuIsdakotaEnum,
|
---|
133 | QmuMassFluxSegmentsEnum,
|
---|
134 | QmuNumberofpartitionsEnum,
|
---|
135 | QmuNumberofresponsesEnum,
|
---|
136 | QmuPartitionEnum,
|
---|
137 | QmuResponsedescriptorsEnum,
|
---|
138 | QmuVariabledescriptorsEnum,
|
---|
139 | RiftsNumriftsEnum,
|
---|
140 | RiftsRiftstructEnum,
|
---|
141 | SettingsIoGatherEnum,
|
---|
142 | SettingsLowmemEnum,
|
---|
143 | SettingsOutputFrequencyEnum,
|
---|
144 | SettingsResultsAsPatchesEnum,
|
---|
145 | SettingsWaitonlockEnum,
|
---|
146 | SteadystateMaxiterEnum,
|
---|
147 | SteadystateNumRequestedOutputsEnum,
|
---|
148 | SteadystateReltolEnum,
|
---|
149 | SteadystateRequestedOutputsEnum,
|
---|
150 | SurfaceEnum,
|
---|
151 | SurfaceforcingsAblationRateEnum,
|
---|
152 | SurfaceforcingsAccumulationRateEnum,
|
---|
153 | SurfaceforcingsMassBalanceEnum,
|
---|
154 | ThermalMaxiterEnum,
|
---|
155 | ThermalPenaltyFactorEnum,
|
---|
156 | ThermalPenaltyLockEnum,
|
---|
157 | ThermalPenaltyThresholdEnum,
|
---|
158 | ThermalSpctemperatureEnum,
|
---|
159 | ThermalStabilizationEnum,
|
---|
160 | ThicknessEnum,
|
---|
161 | TimesteppingCflCoefficientEnum,
|
---|
162 | TimesteppingFinalTimeEnum,
|
---|
163 | TimesteppingTimeAdaptEnum,
|
---|
164 | TimesteppingTimeStepEnum,
|
---|
165 | TransientIsdiagnosticEnum,
|
---|
166 | TransientIsgroundinglineEnum,
|
---|
167 | TransientIsprognosticEnum,
|
---|
168 | TransientIsthermalEnum,
|
---|
169 | TransientNumRequestedOutputsEnum,
|
---|
170 | TransientRequestedOutputsEnum,
|
---|
171 | /*}}}*/
|
---|
172 | /*Solutions and Analyses{{{1 */
|
---|
173 | SolutionTypeEnum,
|
---|
174 | AnalysisTypeEnum,
|
---|
175 | ConfigurationTypeEnum,
|
---|
176 | AdjointBalancethicknessAnalysisEnum,
|
---|
177 | AdjointHorizAnalysisEnum,
|
---|
178 | AdjointSolutionEnum,
|
---|
179 | AnalysisCounterEnum,
|
---|
180 | BalancethicknessAnalysisEnum,
|
---|
181 | BalancethicknessSolutionEnum,
|
---|
182 | BedSlopeAnalysisEnum,
|
---|
183 | BedSlopeSolutionEnum,
|
---|
184 | BedSlopeXAnalysisEnum,
|
---|
185 | BedSlopeYAnalysisEnum,
|
---|
186 | DiagnosticHorizAnalysisEnum,
|
---|
187 | DiagnosticHutterAnalysisEnum,
|
---|
188 | DiagnosticSolutionEnum,
|
---|
189 | DiagnosticVertAnalysisEnum,
|
---|
190 | EnthalpyAnalysisEnum,
|
---|
191 | EnthalpySolutionEnum,
|
---|
192 | FlaimAnalysisEnum,
|
---|
193 | FlaimSolutionEnum,
|
---|
194 | HydrologyAnalysisEnum,
|
---|
195 | HydrologySolutionEnum,
|
---|
196 | MeltingAnalysisEnum,
|
---|
197 | NoneAnalysisEnum,
|
---|
198 | PrognosticAnalysisEnum,
|
---|
199 | PrognosticSolutionEnum,
|
---|
200 | SteadystateSolutionEnum,
|
---|
201 | SurfaceSlopeAnalysisEnum,
|
---|
202 | SurfaceSlopeSolutionEnum,
|
---|
203 | SurfaceSlopeXAnalysisEnum,
|
---|
204 | SurfaceSlopeYAnalysisEnum,
|
---|
205 | ThermalAnalysisEnum,
|
---|
206 | ThermalSolutionEnum,
|
---|
207 | TransientSolutionEnum,
|
---|
208 | /*}}}*/
|
---|
209 | /*Approximations {{{1*/
|
---|
210 | ApproximationEnum,
|
---|
211 | HutterApproximationEnum,
|
---|
212 | MacAyealApproximationEnum,
|
---|
213 | MacAyealPattynApproximationEnum,
|
---|
214 | MacAyealStokesApproximationEnum,
|
---|
215 | NoneApproximationEnum,
|
---|
216 | PattynApproximationEnum,
|
---|
217 | PattynStokesApproximationEnum,
|
---|
218 | StokesApproximationEnum,
|
---|
219 | /*}}}*/
|
---|
220 | /*Datasets {{{1*/
|
---|
221 | ConstraintsEnum,
|
---|
222 | LoadsEnum,
|
---|
223 | MaterialsEnum,
|
---|
224 | NodesEnum,
|
---|
225 | ParametersEnum,
|
---|
226 | VerticesEnum,
|
---|
227 | ResultsEnum,
|
---|
228 | /*}}}*/
|
---|
229 | /*Objects {{{1*/
|
---|
230 | BoolInputEnum,
|
---|
231 | BoolParamEnum,
|
---|
232 | ControlInputEnum,
|
---|
233 | DatasetInputEnum,
|
---|
234 | DofIndexingEnum,
|
---|
235 | DoubleInputEnum,
|
---|
236 | DoubleMatArrayParamEnum,
|
---|
237 | DoubleMatParamEnum,
|
---|
238 | DoubleParamEnum,
|
---|
239 | DoubleVecParamEnum,
|
---|
240 | ElementEnum,
|
---|
241 | ElementResultEnum,
|
---|
242 | ExternalResultEnum,
|
---|
243 | FileParamEnum,
|
---|
244 | HookEnum,
|
---|
245 | IcefrontEnum,
|
---|
246 | InputEnum,
|
---|
247 | IntInputEnum,
|
---|
248 | IntParamEnum,
|
---|
249 | IntVecParamEnum,
|
---|
250 | MacAyeal2dIceFrontEnum,
|
---|
251 | MacAyeal3dIceFrontEnum,
|
---|
252 | MaticeEnum,
|
---|
253 | MatparEnum,
|
---|
254 | NodeEnum,
|
---|
255 | NumericalfluxEnum,
|
---|
256 | ParamEnum,
|
---|
257 | PattynIceFrontEnum,
|
---|
258 | PengridEnum,
|
---|
259 | PenpairEnum,
|
---|
260 | PentaEnum,
|
---|
261 | PentaVertexInputEnum,
|
---|
262 | PetscMatParamEnum,
|
---|
263 | PetscVecParamEnum,
|
---|
264 | RiftfrontEnum,
|
---|
265 | SegmentEnum,
|
---|
266 | SegmentRiftfrontEnum,
|
---|
267 | SpcDynamicEnum,
|
---|
268 | SpcStaticEnum,
|
---|
269 | SpcTransientEnum,
|
---|
270 | StokesIceFrontEnum,
|
---|
271 | StringArrayParamEnum,
|
---|
272 | StringParamEnum,
|
---|
273 | TriaEnum,
|
---|
274 | TriaVertexInputEnum,
|
---|
275 | VertexEnum,
|
---|
276 | /*}}}*/
|
---|
277 | /*Fill {{{1*/
|
---|
278 | AirEnum,
|
---|
279 | IceEnum,
|
---|
280 | MelangeEnum,
|
---|
281 | WaterEnum,
|
---|
282 | /*}}}*/
|
---|
283 | /*Rift state {{{1*/
|
---|
284 | ClosedEnum,
|
---|
285 | FreeEnum,
|
---|
286 | OpenEnum,
|
---|
287 | /*}}}*/
|
---|
288 | /*Inputs {{{1*/
|
---|
289 | AdjointpEnum,
|
---|
290 | AdjointxEnum,
|
---|
291 | AdjointyEnum,
|
---|
292 | AdjointzEnum,
|
---|
293 | BedSlopeXEnum,
|
---|
294 | BedSlopeYEnum,
|
---|
295 | BoundaryEnum,
|
---|
296 | ConstantEnum,
|
---|
297 | ConvergedEnum,
|
---|
298 | ExtToIuEnum,
|
---|
299 | FillEnum,
|
---|
300 | FractionIncrementEnum,
|
---|
301 | FrictionEnum,
|
---|
302 | GroundinglineMeltingRateEnum,
|
---|
303 | InternalEnum,
|
---|
304 | IuToExtEnum,
|
---|
305 | MassFluxEnum,
|
---|
306 | MaxPenetrationEnum,
|
---|
307 | MeltingOffsetEnum,
|
---|
308 | MisfitEnum,
|
---|
309 | NumberNodeToElementConnectivityEnum,
|
---|
310 | PressureEnum,
|
---|
311 | PressurePicardEnum,
|
---|
312 | QmuPressureEnum,
|
---|
313 | QmuVxEnum,
|
---|
314 | QmuVyEnum,
|
---|
315 | QmuVzEnum,
|
---|
316 | QmuThicknessEnum,
|
---|
317 | QmuBedEnum,
|
---|
318 | QmuSurfaceEnum,
|
---|
319 | QmuMeltingEnum,
|
---|
320 | ResetPenaltiesEnum,
|
---|
321 | SegmentOnIceShelfEnum,
|
---|
322 | SurfaceAbsVelMisfitEnum,
|
---|
323 | SurfaceAreaEnum,
|
---|
324 | SurfaceAverageVelMisfitEnum,
|
---|
325 | SurfaceLogVelMisfitEnum,
|
---|
326 | SurfaceLogVxVyMisfitEnum,
|
---|
327 | SurfaceRelVelMisfitEnum,
|
---|
328 | SurfaceSlopeXEnum,
|
---|
329 | SurfaceSlopeYEnum,
|
---|
330 | TemperatureEnum,
|
---|
331 | TemperatureOldEnum,
|
---|
332 | TemperaturePicardEnum,
|
---|
333 | ThicknessAbsMisfitEnum,
|
---|
334 | TypeEnum,
|
---|
335 | VelEnum,
|
---|
336 | VelocityEnum,
|
---|
337 | VxAverageEnum,
|
---|
338 | VxEnum,
|
---|
339 | VxPicardEnum,
|
---|
340 | VyAverageEnum,
|
---|
341 | VyEnum,
|
---|
342 | VyPicardEnum,
|
---|
343 | VzEnum,
|
---|
344 | VzMacAyealEnum,
|
---|
345 | VzPattynEnum,
|
---|
346 | VzPicardEnum,
|
---|
347 | VzStokesEnum,
|
---|
348 | VxMeshEnum,
|
---|
349 | VyMeshEnum,
|
---|
350 | VzMeshEnum,
|
---|
351 | EnthalpyEnum,
|
---|
352 | EnthalpyPicardEnum,
|
---|
353 | ThicknessAbsGradientEnum,
|
---|
354 | StepResponsesEnum,
|
---|
355 | IntMatParamEnum,
|
---|
356 | RheologyBbarAbsGradientEnum,
|
---|
357 | DragCoefficientAbsGradientEnum,
|
---|
358 | TransientInputEnum,
|
---|
359 | OutputfilenameEnum,
|
---|
360 | WaterfractionEnum,
|
---|
361 | WatercolumnEnum,
|
---|
362 | BasalFrictionEnum,
|
---|
363 | ViscousHeatingEnum,
|
---|
364 | QmuTemperatureEnum,
|
---|
365 | HydrologyWaterVxEnum,
|
---|
366 | HydrologyWaterVyEnum,
|
---|
367 | IceVolumeEnum,
|
---|
368 | /*}}}*/
|
---|
369 | /*Element Interpolations{{{1*/
|
---|
370 | P0Enum,
|
---|
371 | P1Enum,
|
---|
372 | P1DGEnum,
|
---|
373 | /*}}}*/
|
---|
374 | /*Results{{{1*/
|
---|
375 | BoolElementResultEnum,
|
---|
376 | BoolExternalResultEnum,
|
---|
377 | DoubleElementResultEnum,
|
---|
378 | DoubleExternalResultEnum,
|
---|
379 | DoubleMatExternalResultEnum,
|
---|
380 | DoubleVecExternalResultEnum,
|
---|
381 | IntExternalResultEnum,
|
---|
382 | JEnum,
|
---|
383 | PatchEnum,
|
---|
384 | PatchNodesEnum,
|
---|
385 | PatchVerticesEnum,
|
---|
386 | PentaVertexElementResultEnum,
|
---|
387 | PetscVecExternalResultEnum,
|
---|
388 | StringExternalResultEnum,
|
---|
389 | TimeEnum,
|
---|
390 | TriaVertexElementResultEnum,
|
---|
391 | WaterColumnOldEnum,
|
---|
392 | /*}}}*/
|
---|
393 | /*Responses{{{1*/
|
---|
394 | MinVelEnum,
|
---|
395 | MaxVelEnum,
|
---|
396 | MinVxEnum,
|
---|
397 | MaxVxEnum,
|
---|
398 | MaxAbsVxEnum,
|
---|
399 | MinVyEnum,
|
---|
400 | MaxVyEnum,
|
---|
401 | MaxAbsVyEnum,
|
---|
402 | MinVzEnum,
|
---|
403 | MaxVzEnum,
|
---|
404 | MaxAbsVzEnum,
|
---|
405 | /*}}}*/
|
---|
406 | /*Convergence{{{1*/
|
---|
407 | RelativeEnum,
|
---|
408 | AbsoluteEnum,
|
---|
409 | IncrementalEnum,
|
---|
410 | /*}}}*/
|
---|
411 | /*Grounding Line{{{1*/
|
---|
412 | AgressiveMigrationEnum,
|
---|
413 | NoneEnum,
|
---|
414 | SoftMigrationEnum,
|
---|
415 | /*}}}*/
|
---|
416 | /*Solver{{{1*/
|
---|
417 | StokesSolverEnum,
|
---|
418 | /*}}}*/
|
---|
419 | /*Parameters{{{1*/
|
---|
420 | AdjointEnum,
|
---|
421 | ColinearEnum,
|
---|
422 | ControlSteadyEnum,
|
---|
423 | FsetEnum,
|
---|
424 | Gradient1Enum,
|
---|
425 | Gradient2Enum,
|
---|
426 | Gradient3Enum,
|
---|
427 | GradientEnum,
|
---|
428 | GroundinglineMigrationEnum,
|
---|
429 | GsetEnum,
|
---|
430 | IndexEnum,
|
---|
431 | IndexedEnum,
|
---|
432 | IntersectEnum,
|
---|
433 | NodalEnum,
|
---|
434 | OldGradientEnum,
|
---|
435 | OutputFilePointerEnum,
|
---|
436 | PetscOptionsAnalysesEnum,
|
---|
437 | PetscOptionsStringsEnum,
|
---|
438 | QmuErrNameEnum,
|
---|
439 | QmuInNameEnum,
|
---|
440 | QmuOutNameEnum,
|
---|
441 | RegularEnum,
|
---|
442 | ScaledEnum,
|
---|
443 | SeparateEnum,
|
---|
444 | SsetEnum,
|
---|
445 | VerboseEnum,
|
---|
446 | /*}}}*/
|
---|
447 | /*Interpolation {{{1*/
|
---|
448 | TriangleInterpEnum,
|
---|
449 | BilinearInterpEnum,
|
---|
450 | NearestInterpEnum,
|
---|
451 | /*}}}*/
|
---|
452 | /*Coordinate Systems{{{1*/
|
---|
453 | XYEnum,
|
---|
454 | XYZPEnum,
|
---|
455 | /*}}}*/
|
---|
456 | /*Options{{{1*/
|
---|
457 | OptionEnum,
|
---|
458 | OptionCellEnum,
|
---|
459 | OptionCharEnum,
|
---|
460 | OptionStructEnum,
|
---|
461 | OptionDoubleEnum,
|
---|
462 | OptionLogicalEnum,
|
---|
463 | /*}}}*/
|
---|
464 | /*Rheology law (move too Material) {{{1*/
|
---|
465 | PatersonEnum,
|
---|
466 | ArrheniusEnum,
|
---|
467 | /*}}}*/
|
---|
468 | MaximumNumberOfEnums
|
---|
469 | };
|
---|
470 |
|
---|
471 | /*Functions on enums: */
|
---|
472 | char *EnumToModelField(int en);
|
---|
473 |
|
---|
474 | #endif
|
---|