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

Last change on this file since 11322 was 11322, checked in by Mathieu Morlighem, 13 years ago

Added Newton's method for Pattyn, parallel only for now, to be improved

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