source: issm/trunk-jpl/src/c/EnumDefinitions/EnumDefinitions.h@ 13516

Last change on this file since 13516 was 13516, checked in by Eric.Larour, 12 years ago

CHG: modified the way we set keep for trace initialization in AD mode. This is now
decided by the AutodiffKeepEnum boolean, which is initialized by the autodiff class,
instead of this logic happening inside IoModel.cpp.
Also added test3020 which tests forward difference vs AD driver.

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