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