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