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

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

NEW and CHG:
added new enums in src/m/enum. Please run source Synchronize.sh when adding new enums in EnumDefinitions.h
new Profiler object that stores unlimited number of tags. easier to handle time profiling anywhere in the
code.
debugged EnvironmentInit, which was duplicating external symbols.
new EnvironmentFinalize, to simplify finalization of environment variables like Petsc and MPI.
simplified issm.cpp accordingly with new Profiler capabilitlie.s

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 SurfaceforcingsHrefEnum,
200 SurfaceforcingsSmbrefEnum,
201 SurfaceforcingsSmbPosMaxEnum,
202 SurfaceforcingsSmbPosMinEnum,
203 SurfaceforcingsAPosEnum,
204 SurfaceforcingsBPosEnum,
205 SurfaceforcingsANegEnum,
206 SurfaceforcingsBNegEnum,
207 ThermalMaxiterEnum,
208 ThermalPenaltyFactorEnum,
209 ThermalPenaltyLockEnum,
210 ThermalPenaltyThresholdEnum,
211 ThermalSpctemperatureEnum,
212 ThermalStabilizationEnum,
213 ThermalIsenthalpyEnum,
214 ThicknessEnum,
215 TimesteppingStartTimeEnum,
216 TimesteppingFinalTimeEnum,
217 TimesteppingCflCoefficientEnum,
218 TimesteppingTimeAdaptEnum,
219 TimesteppingTimeStepEnum,
220 TransientIsdiagnosticEnum,
221 TransientIsgroundinglineEnum,
222 TransientIsprognosticEnum,
223 TransientIsthermalEnum,
224 TransientNumRequestedOutputsEnum,
225 TransientRequestedOutputsEnum,
226 /*}}}*/
227 /*Solutions and Analyses{{{1 */
228 SolutionTypeEnum,
229 AnalysisTypeEnum,
230 ConfigurationTypeEnum,
231 AdjointBalancethicknessAnalysisEnum,
232 AdjointHorizAnalysisEnum,
233 AdjointSolutionEnum,
234 AnalysisCounterEnum,
235 BalancethicknessAnalysisEnum,
236 BalancethicknessSolutionEnum,
237 BedSlopeAnalysisEnum,
238 BedSlopeSolutionEnum,
239 BedSlopeXAnalysisEnum,
240 BedSlopeYAnalysisEnum,
241 DiagnosticHorizAnalysisEnum,
242 DiagnosticHutterAnalysisEnum,
243 DiagnosticSolutionEnum,
244 DiagnosticVertAnalysisEnum,
245 EnthalpyAnalysisEnum,
246 EnthalpySolutionEnum,
247 FlaimAnalysisEnum,
248 FlaimSolutionEnum,
249 HydrologyAnalysisEnum,
250 HydrologySolutionEnum,
251 MeltingAnalysisEnum,
252 NoneAnalysisEnum,
253 PrognosticAnalysisEnum,
254 PrognosticSolutionEnum,
255 SteadystateSolutionEnum,
256 SurfaceSlopeAnalysisEnum,
257 SurfaceSlopeSolutionEnum,
258 SurfaceSlopeXAnalysisEnum,
259 SurfaceSlopeYAnalysisEnum,
260 ThermalAnalysisEnum,
261 ThermalSolutionEnum,
262 TransientSolutionEnum,
263 /*}}}*/
264 /*Approximations {{{1*/
265 ApproximationEnum,
266 NoneApproximationEnum,
267 HutterApproximationEnum,
268 MacAyealApproximationEnum,
269 MacAyealPattynApproximationEnum,
270 MacAyealStokesApproximationEnum,
271 L1L2ApproximationEnum,
272 PattynApproximationEnum,
273 PattynStokesApproximationEnum,
274 StokesApproximationEnum,
275 /*}}}*/
276 /*Datasets {{{1*/
277 ConstraintsEnum,
278 LoadsEnum,
279 MaterialsEnum,
280 NodesEnum,
281 ParametersEnum,
282 VerticesEnum,
283 ResultsEnum,
284 /*}}}*/
285 /*Objects {{{1*/
286 GenericParamEnum,
287 AdolcParamEnum,
288 BoolInputEnum,
289 BoolParamEnum,
290 ContourEnum,
291 ControlInputEnum,
292 DatasetInputEnum,
293 DofIndexingEnum,
294 DoubleInputEnum,
295 DataSetParamEnum,
296 DoubleMatArrayParamEnum,
297 DoubleMatParamEnum,
298 DoubleParamEnum,
299 DoubleVecParamEnum,
300 ElementEnum,
301 ElementResultEnum,
302 ExternalResultEnum,
303 FileParamEnum,
304 HookEnum,
305 IcefrontEnum,
306 InputEnum,
307 IntInputEnum,
308 IntParamEnum,
309 IntVecParamEnum,
310 TransientParamEnum,
311 MacAyeal2dIceFrontEnum,
312 MacAyeal3dIceFrontEnum,
313 MaticeEnum,
314 MatdamageiceEnum,
315 MatparEnum,
316 NodeEnum,
317 NumericalfluxEnum,
318 ParamEnum,
319 L1L2IceFrontEnum,
320 PattynIceFrontEnum,
321 PengridEnum,
322 PenpairEnum,
323 PentaEnum,
324 PentaP1InputEnum,
325 ProfilerEnum,
326 MatrixParamEnum,
327 VectorParamEnum,
328 RiftfrontEnum,
329 SegmentEnum,
330 SegmentRiftfrontEnum,
331 SpcDynamicEnum,
332 SpcStaticEnum,
333 SpcTransientEnum,
334 StokesIceFrontEnum,
335 StringArrayParamEnum,
336 StringParamEnum,
337 TriaEnum,
338 TriaP1InputEnum,
339 VertexEnum,
340 /*}}}*/
341 /*Fill {{{1*/
342 AirEnum,
343 IceEnum,
344 MelangeEnum,
345 WaterEnum,
346 /*}}}*/
347 /*Rift state {{{1*/
348 ClosedEnum,
349 FreeEnum,
350 OpenEnum,
351 /*}}}*/
352 /*Inputs {{{1*/
353 AdjointpEnum,
354 AdjointxEnum,
355 AdjointyEnum,
356 AdjointzEnum,
357 BedSlopeXEnum,
358 BedSlopeYEnum,
359 BoundaryEnum,
360 ConstantEnum,
361 ConvergedEnum,
362 ExtToIuEnum,
363 FillEnum,
364 FractionIncrementEnum,
365 FrictionEnum,
366 GroundinglineMeltingRateEnum,
367 InternalEnum,
368 IuToExtEnum,
369 MassFluxEnum,
370 MaxPenetrationEnum,
371 MeltingOffsetEnum,
372 MisfitEnum,
373 NumberNodeToElementConnectivityEnum,
374 PressureEnum,
375 PressurePicardEnum,
376 QmuPressureEnum,
377 QmuVxEnum,
378 QmuVyEnum,
379 QmuVzEnum,
380 QmuThicknessEnum,
381 QmuBedEnum,
382 QmuSurfaceEnum,
383 QmuMeltingEnum,
384 ResetPenaltiesEnum,
385 SegmentOnIceShelfEnum,
386 SurfaceAbsVelMisfitEnum,
387 SurfaceAreaEnum,
388 SurfaceAverageVelMisfitEnum,
389 SurfaceLogVelMisfitEnum,
390 SurfaceLogVxVyMisfitEnum,
391 SurfaceRelVelMisfitEnum,
392 SurfaceSlopeXEnum,
393 SurfaceSlopeYEnum,
394 TemperatureEnum,
395 TemperatureOldEnum,
396 TemperaturePicardEnum,
397 TemperatureSurfaceEnum,
398 TemperatureBasalEnum,
399 ThicknessAbsMisfitEnum,
400 TypeEnum,
401 VelEnum,
402 VelocityEnum,
403 VxAverageEnum,
404 VxEnum,
405 VxPicardEnum,
406 VyAverageEnum,
407 VyEnum,
408 VyPicardEnum,
409 VzEnum,
410 VzMacAyealEnum,
411 VzPattynEnum,
412 VzPicardEnum,
413 VzStokesEnum,
414 VxMeshEnum,
415 VyMeshEnum,
416 VzMeshEnum,
417 EnthalpyEnum,
418 EnthalpyPicardEnum,
419 ThicknessAbsGradientEnum,
420 ThicknessAlongGradientEnum,
421 ThicknessAcrossGradientEnum,
422 StepResponsesEnum,
423 IntMatParamEnum,
424 RheologyBbarAbsGradientEnum,
425 DragCoefficientAbsGradientEnum,
426 TransientInputEnum,
427 OutputfilenameEnum,
428 WaterfractionEnum,
429 WatercolumnEnum,
430 BasalFrictionEnum,
431 ViscousHeatingEnum,
432 QmuTemperatureEnum,
433 HydrologyWaterVxEnum,
434 HydrologyWaterVyEnum,
435 StressTensorEnum,
436 StressTensorxxEnum,
437 StressTensorxyEnum,
438 StressTensorxzEnum,
439 StressTensoryyEnum,
440 StressTensoryzEnum,
441 StressTensorzzEnum,
442 /*}}}*/
443 /*Element Interpolations{{{1*/
444 P0Enum,
445 P1Enum,
446 P1DGEnum,
447 /*}}}*/
448 /*Results{{{1*/
449 SaveResultsEnum,
450 BoolElementResultEnum,
451 BoolExternalResultEnum,
452 DoubleElementResultEnum,
453 DoubleExternalResultEnum,
454 DoubleMatExternalResultEnum,
455 DoubleVecExternalResultEnum,
456 IntExternalResultEnum,
457 JEnum,
458 PatchEnum,
459 PatchNodesEnum,
460 PatchVerticesEnum,
461 PentaP1ElementResultEnum,
462 PetscVecExternalResultEnum,
463 StringExternalResultEnum,
464 StepEnum,
465 TimeEnum,
466 TriaP1ElementResultEnum,
467 WaterColumnOldEnum,
468 /*}}}*/
469 /*Responses{{{1*/
470 MinVelEnum,
471 MaxVelEnum,
472 MinVxEnum,
473 MaxVxEnum,
474 MaxAbsVxEnum,
475 MinVyEnum,
476 MaxVyEnum,
477 MaxAbsVyEnum,
478 MinVzEnum,
479 MaxVzEnum,
480 MaxAbsVzEnum,
481 IceVolumeEnum,
482 TotalSmbEnum,
483 /*}}}*/
484 /*Convergence{{{1*/
485 RelativeEnum,
486 AbsoluteEnum,
487 IncrementalEnum,
488 /*}}}*/
489 /*Grounding Line{{{1*/
490 AgressiveMigrationEnum,
491 NoneEnum,
492 SoftMigrationEnum,
493 /*}}}*/
494 /*Solver{{{1*/
495 StokesSolverEnum,
496 /*}}}*/
497 /*Parameters{{{1*/
498 AdjointEnum,
499 ColinearEnum,
500 ControlSteadyEnum,
501 FsetEnum,
502 Gradient1Enum,
503 Gradient2Enum,
504 Gradient3Enum,
505 GradientEnum,
506 GroundinglineMigrationEnum,
507 GsetEnum,
508 IndexEnum,
509 IndexedEnum,
510 IntersectEnum,
511 NodalEnum,
512 OldGradientEnum,
513 OutputFilePointerEnum,
514 PetscOptionsAnalysesEnum,
515 PetscOptionsStringsEnum,
516 QmuErrNameEnum,
517 QmuInNameEnum,
518 QmuOutNameEnum,
519 RegularEnum,
520 ScaledEnum,
521 SeparateEnum,
522 SsetEnum,
523 VerboseEnum,
524 /*}}}*/
525 /*Interpolation {{{1*/
526 TriangleInterpEnum,
527 BilinearInterpEnum,
528 NearestInterpEnum,
529 /*}}}*/
530 /*Coordinate Systems{{{1*/
531 XYEnum,
532 XYZPEnum,
533 /*}}}*/
534 /*Options{{{1*/
535 OptionEnum,
536 GenericOptionEnum,
537 OptionCellEnum,
538 OptionCharEnum,
539 OptionStructEnum,
540 OptionDoubleEnum,
541 OptionLogicalEnum,
542 /*}}}*/
543 /*Rheology law (move too Material) {{{1*/
544 PatersonEnum,
545 ArrheniusEnum,
546 /*}}}*/
547 MaximumNumberOfEnums
548};
549
550#endif
Note: See TracBrowser for help on using the repository browser.