Changeset 11400


Ignore:
Timestamp:
02/13/12 07:43:34 (13 years ago)
Author:
Eric.Larour
Message:

Had to split the embedded statements so that compilers such a Visual Studio
can compile.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/modules/StringToEnumx/StringToEnumx.cpp

    r11347 r11400  
    1414int  StringToEnumx(const char* name){
    1515
    16         if (strcmp(name,"AutodiffForward")==0) return AutodiffForwardEnum;
    17         else if (strcmp(name,"AutodiffIsautodiff")==0) return AutodiffIsautodiffEnum;
    18         else if (strcmp(name,"AutodiffReverse")==0) return AutodiffReverseEnum;
    19         else if (strcmp(name,"BalancethicknessSpcthickness")==0) return BalancethicknessSpcthicknessEnum;
    20         else if (strcmp(name,"BalancethicknessStabilization")==0) return BalancethicknessStabilizationEnum;
    21         else if (strcmp(name,"BalancethicknessThickeningRate")==0) return BalancethicknessThickeningRateEnum;
    22         else if (strcmp(name,"BasalforcingsGeothermalflux")==0) return BasalforcingsGeothermalfluxEnum;
    23         else if (strcmp(name,"BasalforcingsMeltingRateCorrection")==0) return BasalforcingsMeltingRateCorrectionEnum;
    24         else if (strcmp(name,"BasalforcingsMeltingRate")==0) return BasalforcingsMeltingRateEnum;
    25         else if (strcmp(name,"Bathymetry")==0) return BathymetryEnum;
    26         else if (strcmp(name,"Bed")==0) return BedEnum;
    27         else if (strcmp(name,"ConstantsG")==0) return ConstantsGEnum;
    28         else if (strcmp(name,"ConstantsReferencetemperature")==0) return ConstantsReferencetemperatureEnum;
    29         else if (strcmp(name,"ConstantsYts")==0) return ConstantsYtsEnum;
    30         else if (strcmp(name,"DiagnosticAbstol")==0) return DiagnosticAbstolEnum;
    31         else if (strcmp(name,"DiagnosticIcefront")==0) return DiagnosticIcefrontEnum;
    32         else if (strcmp(name,"DiagnosticIsnewton")==0) return DiagnosticIsnewtonEnum;
    33         else if (strcmp(name,"DiagnosticMaxiter")==0) return DiagnosticMaxiterEnum;
    34         else if (strcmp(name,"DiagnosticNumRequestedOutputs")==0) return DiagnosticNumRequestedOutputsEnum;
    35         else if (strcmp(name,"DiagnosticPenaltyFactor")==0) return DiagnosticPenaltyFactorEnum;
    36         else if (strcmp(name,"DiagnosticReferential")==0) return DiagnosticReferentialEnum;
    37         else if (strcmp(name,"DiagnosticReltol")==0) return DiagnosticReltolEnum;
    38         else if (strcmp(name,"DiagnosticRequestedOutputs")==0) return DiagnosticRequestedOutputsEnum;
    39         else if (strcmp(name,"DiagnosticRestol")==0) return DiagnosticRestolEnum;
    40         else if (strcmp(name,"DiagnosticRiftPenaltyLock")==0) return DiagnosticRiftPenaltyLockEnum;
    41         else if (strcmp(name,"DiagnosticRiftPenaltyThreshold")==0) return DiagnosticRiftPenaltyThresholdEnum;
    42         else if (strcmp(name,"DiagnosticShelfDampening")==0) return DiagnosticShelfDampeningEnum;
    43         else if (strcmp(name,"DiagnosticSpcvx")==0) return DiagnosticSpcvxEnum;
    44         else if (strcmp(name,"DiagnosticSpcvy")==0) return DiagnosticSpcvyEnum;
    45         else if (strcmp(name,"DiagnosticSpcvz")==0) return DiagnosticSpcvzEnum;
    46         else if (strcmp(name,"DiagnosticStokesreconditioning")==0) return DiagnosticStokesreconditioningEnum;
    47         else if (strcmp(name,"DiagnosticVertexPairing")==0) return DiagnosticVertexPairingEnum;
    48         else if (strcmp(name,"DiagnosticViscosityOvershoot")==0) return DiagnosticViscosityOvershootEnum;
    49         else if (strcmp(name,"FlowequationBordermacayeal")==0) return FlowequationBordermacayealEnum;
    50         else if (strcmp(name,"FlowequationBorderpattyn")==0) return FlowequationBorderpattynEnum;
    51         else if (strcmp(name,"FlowequationBorderstokes")==0) return FlowequationBorderstokesEnum;
    52         else if (strcmp(name,"FlowequationElementEquation")==0) return FlowequationElementEquationEnum;
    53         else if (strcmp(name,"FlowequationIshutter")==0) return FlowequationIshutterEnum;
    54         else if (strcmp(name,"FlowequationIsmacayealpattyn")==0) return FlowequationIsmacayealpattynEnum;
    55         else if (strcmp(name,"FlowequationIsstokes")==0) return FlowequationIsstokesEnum;
    56         else if (strcmp(name,"FlowequationVertexEquation")==0) return FlowequationVertexEquationEnum;
    57         else if (strcmp(name,"FrictionCoefficient")==0) return FrictionCoefficientEnum;
    58         else if (strcmp(name,"FrictionP")==0) return FrictionPEnum;
    59         else if (strcmp(name,"FrictionQ")==0) return FrictionQEnum;
    60         else if (strcmp(name,"GeometryHydrostaticRatio")==0) return GeometryHydrostaticRatioEnum;
    61         else if (strcmp(name,"HydrologyCR")==0) return HydrologyCREnum;
    62         else if (strcmp(name,"HydrologyKn")==0) return HydrologyKnEnum;
    63         else if (strcmp(name,"HydrologyN")==0) return HydrologyNEnum;
    64         else if (strcmp(name,"HydrologyP")==0) return HydrologyPEnum;
    65         else if (strcmp(name,"HydrologyQ")==0) return HydrologyQEnum;
    66         else if (strcmp(name,"HydrologySpcwatercolumn")==0) return HydrologySpcwatercolumnEnum;
    67         else if (strcmp(name,"HydrologyStabilization")==0) return HydrologyStabilizationEnum;
    68         else if (strcmp(name,"InversionControlParameters")==0) return InversionControlParametersEnum;
    69         else if (strcmp(name,"InversionCostFunction")==0) return InversionCostFunctionEnum;
    70         else if (strcmp(name,"InversionCostFunctionThreshold")==0) return InversionCostFunctionThresholdEnum;
    71         else if (strcmp(name,"InversionCostFunctionsCoefficients")==0) return InversionCostFunctionsCoefficientsEnum;
    72         else if (strcmp(name,"InversionCostFunctions")==0) return InversionCostFunctionsEnum;
    73         else if (strcmp(name,"InversionGradientOnly")==0) return InversionGradientOnlyEnum;
    74         else if (strcmp(name,"InversionGradientScaling")==0) return InversionGradientScalingEnum;
    75         else if (strcmp(name,"InversionIscontrol")==0) return InversionIscontrolEnum;
    76         else if (strcmp(name,"InversionTao")==0) return InversionTaoEnum;
    77         else if (strcmp(name,"InversionMaxParameters")==0) return InversionMaxParametersEnum;
    78         else if (strcmp(name,"InversionMaxiterPerStep")==0) return InversionMaxiterPerStepEnum;
    79         else if (strcmp(name,"InversionMinParameters")==0) return InversionMinParametersEnum;
    80         else if (strcmp(name,"InversionNsteps")==0) return InversionNstepsEnum;
    81         else if (strcmp(name,"InversionNumControlParameters")==0) return InversionNumControlParametersEnum;
    82         else if (strcmp(name,"InversionNumCostFunctions")==0) return InversionNumCostFunctionsEnum;
    83         else if (strcmp(name,"InversionStepThreshold")==0) return InversionStepThresholdEnum;
    84         else if (strcmp(name,"InversionThicknessObs")==0) return InversionThicknessObsEnum;
    85         else if (strcmp(name,"InversionVelObs")==0) return InversionVelObsEnum;
    86         else if (strcmp(name,"InversionVxObs")==0) return InversionVxObsEnum;
    87         else if (strcmp(name,"InversionVyObs")==0) return InversionVyObsEnum;
    88         else if (strcmp(name,"InversionVzObs")==0) return InversionVzObsEnum;
    89         else if (strcmp(name,"MaskElementonfloatingice")==0) return MaskElementonfloatingiceEnum;
    90         else if (strcmp(name,"MaskElementongroundedice")==0) return MaskElementongroundediceEnum;
    91         else if (strcmp(name,"MaskElementonwater")==0) return MaskElementonwaterEnum;
    92         else if (strcmp(name,"MaskVertexonfloatingice")==0) return MaskVertexonfloatingiceEnum;
    93         else if (strcmp(name,"MaskVertexongroundedice")==0) return MaskVertexongroundediceEnum;
    94         else if (strcmp(name,"MaskVertexonwater")==0) return MaskVertexonwaterEnum;
    95         else if (strcmp(name,"MaterialsBeta")==0) return MaterialsBetaEnum;
    96         else if (strcmp(name,"MaterialsHeatcapacity")==0) return MaterialsHeatcapacityEnum;
    97         else if (strcmp(name,"MaterialsLatentheat")==0) return MaterialsLatentheatEnum;
    98         else if (strcmp(name,"MaterialsMeltingpoint")==0) return MaterialsMeltingpointEnum;
    99         else if (strcmp(name,"MaterialsMixedLayerCapacity")==0) return MaterialsMixedLayerCapacityEnum;
    100         else if (strcmp(name,"MaterialsRheologyB")==0) return MaterialsRheologyBEnum;
    101         else if (strcmp(name,"MaterialsRheologyBbar")==0) return MaterialsRheologyBbarEnum;
    102         else if (strcmp(name,"MaterialsRheologyLaw")==0) return MaterialsRheologyLawEnum;
    103         else if (strcmp(name,"MaterialsRheologyN")==0) return MaterialsRheologyNEnum;
    104         else if (strcmp(name,"MaterialsRhoIce")==0) return MaterialsRhoIceEnum;
    105         else if (strcmp(name,"MaterialsRhoWater")==0) return MaterialsRhoWaterEnum;
    106         else if (strcmp(name,"MaterialsMuWater")==0) return MaterialsMuWaterEnum;
    107         else if (strcmp(name,"MaterialsThermalExchangeVelocity")==0) return MaterialsThermalExchangeVelocityEnum;
    108         else if (strcmp(name,"MaterialsThermalconductivity")==0) return MaterialsThermalconductivityEnum;
    109         else if (strcmp(name,"MeshAverageVertexConnectivity")==0) return MeshAverageVertexConnectivityEnum;
    110         else if (strcmp(name,"MeshDimension")==0) return MeshDimensionEnum;
    111         else if (strcmp(name,"MeshEdges")==0) return MeshEdgesEnum;
    112         else if (strcmp(name,"MeshElementconnectivity")==0) return MeshElementconnectivityEnum;
    113         else if (strcmp(name,"MeshElementonbed")==0) return MeshElementonbedEnum;
    114         else if (strcmp(name,"MeshElementonsurface")==0) return MeshElementonsurfaceEnum;
    115         else if (strcmp(name,"MeshElements2d")==0) return MeshElements2dEnum;
    116         else if (strcmp(name,"MeshElements")==0) return MeshElementsEnum;
    117         else if (strcmp(name,"MeshLowerelements")==0) return MeshLowerelementsEnum;
    118         else if (strcmp(name,"MeshNumberofedges")==0) return MeshNumberofedgesEnum;
    119         else if (strcmp(name,"MeshNumberofelements2d")==0) return MeshNumberofelements2dEnum;
    120         else if (strcmp(name,"MeshNumberofelements")==0) return MeshNumberofelementsEnum;
    121         else if (strcmp(name,"MeshNumberoflayers")==0) return MeshNumberoflayersEnum;
    122         else if (strcmp(name,"MeshNumberofvertices2d")==0) return MeshNumberofvertices2dEnum;
    123         else if (strcmp(name,"MeshNumberofvertices")==0) return MeshNumberofverticesEnum;
    124         else if (strcmp(name,"MeshUpperelements")==0) return MeshUpperelementsEnum;
    125         else if (strcmp(name,"MeshVertexonbed")==0) return MeshVertexonbedEnum;
    126         else if (strcmp(name,"MeshVertexonsurface")==0) return MeshVertexonsurfaceEnum;
    127         else if (strcmp(name,"MeshX")==0) return MeshXEnum;
    128         else if (strcmp(name,"MeshY")==0) return MeshYEnum;
    129         else if (strcmp(name,"MeshZ")==0) return MeshZEnum;
    130         else if (strcmp(name,"MiscellaneousName")==0) return MiscellaneousNameEnum;
    131         else if (strcmp(name,"PrognosticHydrostaticAdjustment")==0) return PrognosticHydrostaticAdjustmentEnum;
    132         else if (strcmp(name,"PrognosticMinThickness")==0) return PrognosticMinThicknessEnum;
    133         else if (strcmp(name,"PrognosticPenaltyFactor")==0) return PrognosticPenaltyFactorEnum;
    134         else if (strcmp(name,"PrognosticSpcthickness")==0) return PrognosticSpcthicknessEnum;
    135         else if (strcmp(name,"PrognosticStabilization")==0) return PrognosticStabilizationEnum;
    136         else if (strcmp(name,"PrognosticVertexPairing")==0) return PrognosticVertexPairingEnum;
    137         else if (strcmp(name,"QmuIsdakota")==0) return QmuIsdakotaEnum;
    138         else if (strcmp(name,"QmuMassFluxSegments")==0) return QmuMassFluxSegmentsEnum;
    139         else if (strcmp(name,"QmuNumberofpartitions")==0) return QmuNumberofpartitionsEnum;
    140         else if (strcmp(name,"QmuNumberofresponses")==0) return QmuNumberofresponsesEnum;
    141         else if (strcmp(name,"QmuPartition")==0) return QmuPartitionEnum;
    142         else if (strcmp(name,"QmuResponsedescriptors")==0) return QmuResponsedescriptorsEnum;
    143         else if (strcmp(name,"QmuVariabledescriptors")==0) return QmuVariabledescriptorsEnum;
    144         else if (strcmp(name,"RiftsNumrifts")==0) return RiftsNumriftsEnum;
    145         else if (strcmp(name,"RiftsRiftstruct")==0) return RiftsRiftstructEnum;
    146         else if (strcmp(name,"SettingsIoGather")==0) return SettingsIoGatherEnum;
    147         else if (strcmp(name,"SettingsLowmem")==0) return SettingsLowmemEnum;
    148         else if (strcmp(name,"SettingsOutputFrequency")==0) return SettingsOutputFrequencyEnum;
    149         else if (strcmp(name,"SettingsResultsAsPatches")==0) return SettingsResultsAsPatchesEnum;
    150         else if (strcmp(name,"SettingsWaitonlock")==0) return SettingsWaitonlockEnum;
    151         else if (strcmp(name,"SteadystateMaxiter")==0) return SteadystateMaxiterEnum;
    152         else if (strcmp(name,"SteadystateNumRequestedOutputs")==0) return SteadystateNumRequestedOutputsEnum;
    153         else if (strcmp(name,"SteadystateReltol")==0) return SteadystateReltolEnum;
    154         else if (strcmp(name,"SteadystateRequestedOutputs")==0) return SteadystateRequestedOutputsEnum;
    155         else if (strcmp(name,"Surface")==0) return SurfaceEnum;
    156         else if (strcmp(name,"SurfaceforcingsAblationRate")==0) return SurfaceforcingsAblationRateEnum;
    157         else if (strcmp(name,"SurfaceforcingsAccumulationRate")==0) return SurfaceforcingsAccumulationRateEnum;
    158         else if (strcmp(name,"SurfaceforcingsMassBalance")==0) return SurfaceforcingsMassBalanceEnum;
    159         else if (strcmp(name,"ThermalMaxiter")==0) return ThermalMaxiterEnum;
    160         else if (strcmp(name,"ThermalPenaltyFactor")==0) return ThermalPenaltyFactorEnum;
    161         else if (strcmp(name,"ThermalPenaltyLock")==0) return ThermalPenaltyLockEnum;
    162         else if (strcmp(name,"ThermalPenaltyThreshold")==0) return ThermalPenaltyThresholdEnum;
    163         else if (strcmp(name,"ThermalSpctemperature")==0) return ThermalSpctemperatureEnum;
    164         else if (strcmp(name,"ThermalStabilization")==0) return ThermalStabilizationEnum;
    165         else if (strcmp(name,"ThermalIsenthalpy")==0) return ThermalIsenthalpyEnum;
    166         else if (strcmp(name,"Thickness")==0) return ThicknessEnum;
    167         else if (strcmp(name,"TimesteppingCflCoefficient")==0) return TimesteppingCflCoefficientEnum;
    168         else if (strcmp(name,"TimesteppingFinalTime")==0) return TimesteppingFinalTimeEnum;
    169         else if (strcmp(name,"TimesteppingTimeAdapt")==0) return TimesteppingTimeAdaptEnum;
    170         else if (strcmp(name,"TimesteppingTimeStep")==0) return TimesteppingTimeStepEnum;
    171         else if (strcmp(name,"TransientIsdiagnostic")==0) return TransientIsdiagnosticEnum;
    172         else if (strcmp(name,"TransientIsgroundingline")==0) return TransientIsgroundinglineEnum;
    173         else if (strcmp(name,"TransientIsprognostic")==0) return TransientIsprognosticEnum;
    174         else if (strcmp(name,"TransientIsthermal")==0) return TransientIsthermalEnum;
    175         else if (strcmp(name,"TransientNumRequestedOutputs")==0) return TransientNumRequestedOutputsEnum;
    176         else if (strcmp(name,"TransientRequestedOutputs")==0) return TransientRequestedOutputsEnum;
    177         else if (strcmp(name,"SolutionType")==0) return SolutionTypeEnum;
    178         else if (strcmp(name,"AnalysisType")==0) return AnalysisTypeEnum;
    179         else if (strcmp(name,"ConfigurationType")==0) return ConfigurationTypeEnum;
    180         else if (strcmp(name,"AdjointBalancethicknessAnalysis")==0) return AdjointBalancethicknessAnalysisEnum;
    181         else if (strcmp(name,"AdjointHorizAnalysis")==0) return AdjointHorizAnalysisEnum;
    182         else if (strcmp(name,"AdjointSolution")==0) return AdjointSolutionEnum;
    183         else if (strcmp(name,"AnalysisCounter")==0) return AnalysisCounterEnum;
    184         else if (strcmp(name,"BalancethicknessAnalysis")==0) return BalancethicknessAnalysisEnum;
    185         else if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum;
    186         else if (strcmp(name,"BedSlopeAnalysis")==0) return BedSlopeAnalysisEnum;
    187         else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
    188         else if (strcmp(name,"BedSlopeXAnalysis")==0) return BedSlopeXAnalysisEnum;
    189         else if (strcmp(name,"BedSlopeYAnalysis")==0) return BedSlopeYAnalysisEnum;
    190         else if (strcmp(name,"DiagnosticHorizAnalysis")==0) return DiagnosticHorizAnalysisEnum;
    191         else if (strcmp(name,"DiagnosticHutterAnalysis")==0) return DiagnosticHutterAnalysisEnum;
    192         else if (strcmp(name,"DiagnosticSolution")==0) return DiagnosticSolutionEnum;
    193         else if (strcmp(name,"DiagnosticVertAnalysis")==0) return DiagnosticVertAnalysisEnum;
    194         else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum;
    195         else if (strcmp(name,"EnthalpySolution")==0) return EnthalpySolutionEnum;
    196         else if (strcmp(name,"FlaimAnalysis")==0) return FlaimAnalysisEnum;
    197         else if (strcmp(name,"FlaimSolution")==0) return FlaimSolutionEnum;
    198         else if (strcmp(name,"HydrologyAnalysis")==0) return HydrologyAnalysisEnum;
    199         else if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
    200         else if (strcmp(name,"MeltingAnalysis")==0) return MeltingAnalysisEnum;
    201         else if (strcmp(name,"NoneAnalysis")==0) return NoneAnalysisEnum;
    202         else if (strcmp(name,"PrognosticAnalysis")==0) return PrognosticAnalysisEnum;
    203         else if (strcmp(name,"PrognosticSolution")==0) return PrognosticSolutionEnum;
    204         else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
    205         else if (strcmp(name,"SurfaceSlopeAnalysis")==0) return SurfaceSlopeAnalysisEnum;
    206         else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum;
    207         else if (strcmp(name,"SurfaceSlopeXAnalysis")==0) return SurfaceSlopeXAnalysisEnum;
    208         else if (strcmp(name,"SurfaceSlopeYAnalysis")==0) return SurfaceSlopeYAnalysisEnum;
    209         else if (strcmp(name,"ThermalAnalysis")==0) return ThermalAnalysisEnum;
    210         else if (strcmp(name,"ThermalSolution")==0) return ThermalSolutionEnum;
    211         else if (strcmp(name,"TransientSolution")==0) return TransientSolutionEnum;
    212         else if (strcmp(name,"Approximation")==0) return ApproximationEnum;
    213         else if (strcmp(name,"HutterApproximation")==0) return HutterApproximationEnum;
    214         else if (strcmp(name,"MacAyealApproximation")==0) return MacAyealApproximationEnum;
    215         else if (strcmp(name,"MacAyealPattynApproximation")==0) return MacAyealPattynApproximationEnum;
    216         else if (strcmp(name,"MacAyealStokesApproximation")==0) return MacAyealStokesApproximationEnum;
    217         else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
    218         else if (strcmp(name,"PattynApproximation")==0) return PattynApproximationEnum;
    219         else if (strcmp(name,"PattynStokesApproximation")==0) return PattynStokesApproximationEnum;
    220         else if (strcmp(name,"StokesApproximation")==0) return StokesApproximationEnum;
    221         else if (strcmp(name,"Constraints")==0) return ConstraintsEnum;
    222         else if (strcmp(name,"Loads")==0) return LoadsEnum;
    223         else if (strcmp(name,"Materials")==0) return MaterialsEnum;
    224         else if (strcmp(name,"Nodes")==0) return NodesEnum;
    225         else if (strcmp(name,"Parameters")==0) return ParametersEnum;
    226         else if (strcmp(name,"Vertices")==0) return VerticesEnum;
    227         else if (strcmp(name,"Results")==0) return ResultsEnum;
    228         else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
    229         else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
    230         else if (strcmp(name,"ControlInput")==0) return ControlInputEnum;
    231         else if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum;
    232         else if (strcmp(name,"DofIndexing")==0) return DofIndexingEnum;
    233         else if (strcmp(name,"DoubleInput")==0) return DoubleInputEnum;
    234         else if (strcmp(name,"DoubleMatArrayParam")==0) return DoubleMatArrayParamEnum;
    235         else if (strcmp(name,"DoubleMatParam")==0) return DoubleMatParamEnum;
    236         else if (strcmp(name,"DoubleParam")==0) return DoubleParamEnum;
    237         else if (strcmp(name,"DoubleVecParam")==0) return DoubleVecParamEnum;
    238         else if (strcmp(name,"Element")==0) return ElementEnum;
    239         else if (strcmp(name,"ElementResult")==0) return ElementResultEnum;
    240         else if (strcmp(name,"ExternalResult")==0) return ExternalResultEnum;
    241         else if (strcmp(name,"FileParam")==0) return FileParamEnum;
    242         else if (strcmp(name,"Hook")==0) return HookEnum;
    243         else if (strcmp(name,"Icefront")==0) return IcefrontEnum;
    244         else if (strcmp(name,"Input")==0) return InputEnum;
    245         else if (strcmp(name,"IntInput")==0) return IntInputEnum;
    246         else if (strcmp(name,"IntParam")==0) return IntParamEnum;
    247         else if (strcmp(name,"IntVecParam")==0) return IntVecParamEnum;
    248         else if (strcmp(name,"MacAyeal2dIceFront")==0) return MacAyeal2dIceFrontEnum;
    249         else if (strcmp(name,"MacAyeal3dIceFront")==0) return MacAyeal3dIceFrontEnum;
    250         else if (strcmp(name,"Matice")==0) return MaticeEnum;
    251         else if (strcmp(name,"Matpar")==0) return MatparEnum;
    252         else if (strcmp(name,"Node")==0) return NodeEnum;
    253         else if (strcmp(name,"Numericalflux")==0) return NumericalfluxEnum;
    254         else if (strcmp(name,"Param")==0) return ParamEnum;
    255         else if (strcmp(name,"PattynIceFront")==0) return PattynIceFrontEnum;
    256         else if (strcmp(name,"Pengrid")==0) return PengridEnum;
    257         else if (strcmp(name,"Penpair")==0) return PenpairEnum;
    258         else if (strcmp(name,"Penta")==0) return PentaEnum;
    259         else if (strcmp(name,"PentaP1Input")==0) return PentaP1InputEnum;
    260         else if (strcmp(name,"PetscMatParam")==0) return PetscMatParamEnum;
    261         else if (strcmp(name,"PetscVecParam")==0) return PetscVecParamEnum;
    262         else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum;
    263         else if (strcmp(name,"Segment")==0) return SegmentEnum;
    264         else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
    265         else if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
    266         else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
    267         else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
    268         else if (strcmp(name,"StokesIceFront")==0) return StokesIceFrontEnum;
    269         else if (strcmp(name,"StringArrayParam")==0) return StringArrayParamEnum;
    270         else if (strcmp(name,"StringParam")==0) return StringParamEnum;
    271         else if (strcmp(name,"Tria")==0) return TriaEnum;
    272         else if (strcmp(name,"TriaP1Input")==0) return TriaP1InputEnum;
    273         else if (strcmp(name,"Vertex")==0) return VertexEnum;
    274         else if (strcmp(name,"Air")==0) return AirEnum;
    275         else if (strcmp(name,"Ice")==0) return IceEnum;
    276         else if (strcmp(name,"Melange")==0) return MelangeEnum;
    277         else if (strcmp(name,"Water")==0) return WaterEnum;
    278         else if (strcmp(name,"Closed")==0) return ClosedEnum;
    279         else if (strcmp(name,"Free")==0) return FreeEnum;
    280         else if (strcmp(name,"Open")==0) return OpenEnum;
    281         else if (strcmp(name,"Adjointp")==0) return AdjointpEnum;
    282         else if (strcmp(name,"Adjointx")==0) return AdjointxEnum;
    283         else if (strcmp(name,"Adjointy")==0) return AdjointyEnum;
    284         else if (strcmp(name,"Adjointz")==0) return AdjointzEnum;
    285         else if (strcmp(name,"BedSlopeX")==0) return BedSlopeXEnum;
    286         else if (strcmp(name,"BedSlopeY")==0) return BedSlopeYEnum;
    287         else if (strcmp(name,"Boundary")==0) return BoundaryEnum;
    288         else if (strcmp(name,"Constant")==0) return ConstantEnum;
    289         else if (strcmp(name,"Converged")==0) return ConvergedEnum;
    290         else if (strcmp(name,"ExtToIu")==0) return ExtToIuEnum;
    291         else if (strcmp(name,"Fill")==0) return FillEnum;
    292         else if (strcmp(name,"FractionIncrement")==0) return FractionIncrementEnum;
    293         else if (strcmp(name,"Friction")==0) return FrictionEnum;
    294         else if (strcmp(name,"GroundinglineMeltingRate")==0) return GroundinglineMeltingRateEnum;
    295         else if (strcmp(name,"Internal")==0) return InternalEnum;
    296         else if (strcmp(name,"IuToExt")==0) return IuToExtEnum;
    297         else if (strcmp(name,"MassFlux")==0) return MassFluxEnum;
    298         else if (strcmp(name,"MaxPenetration")==0) return MaxPenetrationEnum;
    299         else if (strcmp(name,"MeltingOffset")==0) return MeltingOffsetEnum;
    300         else if (strcmp(name,"Misfit")==0) return MisfitEnum;
    301         else if (strcmp(name,"NumberNodeToElementConnectivity")==0) return NumberNodeToElementConnectivityEnum;
    302         else if (strcmp(name,"Pressure")==0) return PressureEnum;
    303         else if (strcmp(name,"PressurePicard")==0) return PressurePicardEnum;
    304         else if (strcmp(name,"QmuPressure")==0) return QmuPressureEnum;
    305         else if (strcmp(name,"QmuVx")==0) return QmuVxEnum;
    306         else if (strcmp(name,"QmuVy")==0) return QmuVyEnum;
    307         else if (strcmp(name,"QmuVz")==0) return QmuVzEnum;
    308         else if (strcmp(name,"QmuThickness")==0) return QmuThicknessEnum;
    309         else if (strcmp(name,"QmuBed")==0) return QmuBedEnum;
    310         else if (strcmp(name,"QmuSurface")==0) return QmuSurfaceEnum;
    311         else if (strcmp(name,"QmuMelting")==0) return QmuMeltingEnum;
    312         else if (strcmp(name,"ResetPenalties")==0) return ResetPenaltiesEnum;
    313         else if (strcmp(name,"SegmentOnIceShelf")==0) return SegmentOnIceShelfEnum;
    314         else if (strcmp(name,"SurfaceAbsVelMisfit")==0) return SurfaceAbsVelMisfitEnum;
    315         else if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum;
    316         else if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum;
    317         else if (strcmp(name,"SurfaceLogVelMisfit")==0) return SurfaceLogVelMisfitEnum;
    318         else if (strcmp(name,"SurfaceLogVxVyMisfit")==0) return SurfaceLogVxVyMisfitEnum;
    319         else if (strcmp(name,"SurfaceRelVelMisfit")==0) return SurfaceRelVelMisfitEnum;
    320         else if (strcmp(name,"SurfaceSlopeX")==0) return SurfaceSlopeXEnum;
    321         else if (strcmp(name,"SurfaceSlopeY")==0) return SurfaceSlopeYEnum;
    322         else if (strcmp(name,"Temperature")==0) return TemperatureEnum;
    323         else if (strcmp(name,"TemperatureOld")==0) return TemperatureOldEnum;
    324         else if (strcmp(name,"TemperaturePicard")==0) return TemperaturePicardEnum;
    325         else if (strcmp(name,"ThicknessAbsMisfit")==0) return ThicknessAbsMisfitEnum;
    326         else if (strcmp(name,"Type")==0) return TypeEnum;
    327         else if (strcmp(name,"Vel")==0) return VelEnum;
    328         else if (strcmp(name,"Velocity")==0) return VelocityEnum;
    329         else if (strcmp(name,"VxAverage")==0) return VxAverageEnum;
    330         else if (strcmp(name,"Vx")==0) return VxEnum;
    331         else if (strcmp(name,"VxPicard")==0) return VxPicardEnum;
    332         else if (strcmp(name,"VyAverage")==0) return VyAverageEnum;
    333         else if (strcmp(name,"Vy")==0) return VyEnum;
    334         else if (strcmp(name,"VyPicard")==0) return VyPicardEnum;
    335         else if (strcmp(name,"Vz")==0) return VzEnum;
    336         else if (strcmp(name,"VzMacAyeal")==0) return VzMacAyealEnum;
    337         else if (strcmp(name,"VzPattyn")==0) return VzPattynEnum;
    338         else if (strcmp(name,"VzPicard")==0) return VzPicardEnum;
    339         else if (strcmp(name,"VzStokes")==0) return VzStokesEnum;
    340         else if (strcmp(name,"VxMesh")==0) return VxMeshEnum;
    341         else if (strcmp(name,"VyMesh")==0) return VyMeshEnum;
    342         else if (strcmp(name,"VzMesh")==0) return VzMeshEnum;
    343         else if (strcmp(name,"Enthalpy")==0) return EnthalpyEnum;
    344         else if (strcmp(name,"EnthalpyPicard")==0) return EnthalpyPicardEnum;
    345         else if (strcmp(name,"ThicknessAbsGradient")==0) return ThicknessAbsGradientEnum;
    346         else if (strcmp(name,"StepResponses")==0) return StepResponsesEnum;
    347         else if (strcmp(name,"IntMatParam")==0) return IntMatParamEnum;
    348         else if (strcmp(name,"RheologyBbarAbsGradient")==0) return RheologyBbarAbsGradientEnum;
    349         else if (strcmp(name,"DragCoefficientAbsGradient")==0) return DragCoefficientAbsGradientEnum;
    350         else if (strcmp(name,"TransientInput")==0) return TransientInputEnum;
    351         else if (strcmp(name,"Outputfilename")==0) return OutputfilenameEnum;
    352         else if (strcmp(name,"Waterfraction")==0) return WaterfractionEnum;
    353         else if (strcmp(name,"Watercolumn")==0) return WatercolumnEnum;
    354         else if (strcmp(name,"BasalFriction")==0) return BasalFrictionEnum;
    355         else if (strcmp(name,"ViscousHeating")==0) return ViscousHeatingEnum;
    356         else if (strcmp(name,"QmuTemperature")==0) return QmuTemperatureEnum;
    357         else if (strcmp(name,"HydrologyWaterVx")==0) return HydrologyWaterVxEnum;
    358         else if (strcmp(name,"HydrologyWaterVy")==0) return HydrologyWaterVyEnum;
    359         else if (strcmp(name,"StressTensor")==0) return StressTensorEnum;
    360         else if (strcmp(name,"StressTensorxx")==0) return StressTensorxxEnum;
    361         else if (strcmp(name,"StressTensorxy")==0) return StressTensorxyEnum;
    362         else if (strcmp(name,"StressTensorxz")==0) return StressTensorxzEnum;
    363         else if (strcmp(name,"StressTensoryy")==0) return StressTensoryyEnum;
    364         else if (strcmp(name,"StressTensoryz")==0) return StressTensoryzEnum;
    365         else if (strcmp(name,"StressTensorzz")==0) return StressTensorzzEnum;
    366         else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
    367         else if (strcmp(name,"P0")==0) return P0Enum;
    368         else if (strcmp(name,"P1")==0) return P1Enum;
    369         else if (strcmp(name,"P1DG")==0) return P1DGEnum;
    370         else if (strcmp(name,"BoolElementResult")==0) return BoolElementResultEnum;
    371         else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
    372         else if (strcmp(name,"DoubleElementResult")==0) return DoubleElementResultEnum;
    373         else if (strcmp(name,"DoubleExternalResult")==0) return DoubleExternalResultEnum;
    374         else if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
    375         else if (strcmp(name,"DoubleVecExternalResult")==0) return DoubleVecExternalResultEnum;
    376         else if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
    377         else if (strcmp(name,"J")==0) return JEnum;
    378         else if (strcmp(name,"Patch")==0) return PatchEnum;
    379         else if (strcmp(name,"PatchNodes")==0) return PatchNodesEnum;
    380         else if (strcmp(name,"PatchVertices")==0) return PatchVerticesEnum;
    381         else if (strcmp(name,"PentaP1ElementResult")==0) return PentaP1ElementResultEnum;
    382         else if (strcmp(name,"PetscVecExternalResult")==0) return PetscVecExternalResultEnum;
    383         else if (strcmp(name,"StringExternalResult")==0) return StringExternalResultEnum;
    384         else if (strcmp(name,"Time")==0) return TimeEnum;
    385         else if (strcmp(name,"TriaP1ElementResult")==0) return TriaP1ElementResultEnum;
    386         else if (strcmp(name,"WaterColumnOld")==0) return WaterColumnOldEnum;
    387         else if (strcmp(name,"MinVel")==0) return MinVelEnum;
    388         else if (strcmp(name,"MaxVel")==0) return MaxVelEnum;
    389         else if (strcmp(name,"MinVx")==0) return MinVxEnum;
    390         else if (strcmp(name,"MaxVx")==0) return MaxVxEnum;
    391         else if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
    392         else if (strcmp(name,"MinVy")==0) return MinVyEnum;
    393         else if (strcmp(name,"MaxVy")==0) return MaxVyEnum;
    394         else if (strcmp(name,"MaxAbsVy")==0) return MaxAbsVyEnum;
    395         else if (strcmp(name,"MinVz")==0) return MinVzEnum;
    396         else if (strcmp(name,"MaxVz")==0) return MaxVzEnum;
    397         else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
    398         else if (strcmp(name,"Relative")==0) return RelativeEnum;
    399         else if (strcmp(name,"Absolute")==0) return AbsoluteEnum;
    400         else if (strcmp(name,"Incremental")==0) return IncrementalEnum;
    401         else if (strcmp(name,"AgressiveMigration")==0) return AgressiveMigrationEnum;
    402         else if (strcmp(name,"None")==0) return NoneEnum;
    403         else if (strcmp(name,"SoftMigration")==0) return SoftMigrationEnum;
    404         else if (strcmp(name,"StokesSolver")==0) return StokesSolverEnum;
    405         else if (strcmp(name,"Adjoint")==0) return AdjointEnum;
    406         else if (strcmp(name,"Colinear")==0) return ColinearEnum;
    407         else if (strcmp(name,"ControlSteady")==0) return ControlSteadyEnum;
    408         else if (strcmp(name,"Fset")==0) return FsetEnum;
    409         else if (strcmp(name,"Gradient1")==0) return Gradient1Enum;
    410         else if (strcmp(name,"Gradient2")==0) return Gradient2Enum;
    411         else if (strcmp(name,"Gradient3")==0) return Gradient3Enum;
    412         else if (strcmp(name,"Gradient")==0) return GradientEnum;
    413         else if (strcmp(name,"GroundinglineMigration")==0) return GroundinglineMigrationEnum;
    414         else if (strcmp(name,"Gset")==0) return GsetEnum;
    415         else if (strcmp(name,"Index")==0) return IndexEnum;
    416         else if (strcmp(name,"Indexed")==0) return IndexedEnum;
    417         else if (strcmp(name,"Intersect")==0) return IntersectEnum;
    418         else if (strcmp(name,"Nodal")==0) return NodalEnum;
    419         else if (strcmp(name,"OldGradient")==0) return OldGradientEnum;
    420         else if (strcmp(name,"OutputFilePointer")==0) return OutputFilePointerEnum;
    421         else if (strcmp(name,"PetscOptionsAnalyses")==0) return PetscOptionsAnalysesEnum;
    422         else if (strcmp(name,"PetscOptionsStrings")==0) return PetscOptionsStringsEnum;
    423         else if (strcmp(name,"QmuErrName")==0) return QmuErrNameEnum;
    424         else if (strcmp(name,"QmuInName")==0) return QmuInNameEnum;
    425         else if (strcmp(name,"QmuOutName")==0) return QmuOutNameEnum;
    426         else if (strcmp(name,"Regular")==0) return RegularEnum;
    427         else if (strcmp(name,"Scaled")==0) return ScaledEnum;
    428         else if (strcmp(name,"Separate")==0) return SeparateEnum;
    429         else if (strcmp(name,"Sset")==0) return SsetEnum;
    430         else if (strcmp(name,"Verbose")==0) return VerboseEnum;
    431         else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
    432         else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
    433         else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
    434         else if (strcmp(name,"XY")==0) return XYEnum;
    435         else if (strcmp(name,"XYZP")==0) return XYZPEnum;
    436         else if (strcmp(name,"Option")==0) return OptionEnum;
    437         else if (strcmp(name,"OptionCell")==0) return OptionCellEnum;
    438         else if (strcmp(name,"OptionChar")==0) return OptionCharEnum;
    439         else if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
    440         else if (strcmp(name,"OptionDouble")==0) return OptionDoubleEnum;
    441         else if (strcmp(name,"OptionLogical")==0) return OptionLogicalEnum;
    442         else if (strcmp(name,"Paterson")==0) return PatersonEnum;
    443         else if (strcmp(name,"Arrhenius")==0) return ArrheniusEnum;
    444         else _error_("Enum %s not found",name);
     16        int stage=0;
     17
     18        if(stage==0){
     19
     20                if (strcmp(name,"AutodiffForward")==0) return AutodiffForwardEnum;
     21                else if (strcmp(name,"AutodiffIsautodiff")==0) return AutodiffIsautodiffEnum;
     22                else if (strcmp(name,"AutodiffReverse")==0) return AutodiffReverseEnum;
     23                else if (strcmp(name,"BalancethicknessSpcthickness")==0) return BalancethicknessSpcthicknessEnum;
     24                else if (strcmp(name,"BalancethicknessStabilization")==0) return BalancethicknessStabilizationEnum;
     25                else if (strcmp(name,"BalancethicknessThickeningRate")==0) return BalancethicknessThickeningRateEnum;
     26                else if (strcmp(name,"BasalforcingsGeothermalflux")==0) return BasalforcingsGeothermalfluxEnum;
     27                else if (strcmp(name,"BasalforcingsMeltingRateCorrection")==0) return BasalforcingsMeltingRateCorrectionEnum;
     28                else if (strcmp(name,"BasalforcingsMeltingRate")==0) return BasalforcingsMeltingRateEnum;
     29                else if (strcmp(name,"Bathymetry")==0) return BathymetryEnum;
     30                else if (strcmp(name,"Bed")==0) return BedEnum;
     31                else if (strcmp(name,"ConstantsG")==0) return ConstantsGEnum;
     32                else if (strcmp(name,"ConstantsReferencetemperature")==0) return ConstantsReferencetemperatureEnum;
     33                else if (strcmp(name,"ConstantsYts")==0) return ConstantsYtsEnum;
     34                else if (strcmp(name,"DiagnosticAbstol")==0) return DiagnosticAbstolEnum;
     35                else if (strcmp(name,"DiagnosticIcefront")==0) return DiagnosticIcefrontEnum;
     36                else if (strcmp(name,"DiagnosticIsnewton")==0) return DiagnosticIsnewtonEnum;
     37                else if (strcmp(name,"DiagnosticMaxiter")==0) return DiagnosticMaxiterEnum;
     38                else if (strcmp(name,"DiagnosticNumRequestedOutputs")==0) return DiagnosticNumRequestedOutputsEnum;
     39                else if (strcmp(name,"DiagnosticPenaltyFactor")==0) return DiagnosticPenaltyFactorEnum;
     40                else if (strcmp(name,"DiagnosticReferential")==0) return DiagnosticReferentialEnum;
     41                else if (strcmp(name,"DiagnosticReltol")==0) return DiagnosticReltolEnum;
     42                else if (strcmp(name,"DiagnosticRequestedOutputs")==0) return DiagnosticRequestedOutputsEnum;
     43                else if (strcmp(name,"DiagnosticRestol")==0) return DiagnosticRestolEnum;
     44                else if (strcmp(name,"DiagnosticRiftPenaltyLock")==0) return DiagnosticRiftPenaltyLockEnum;
     45                else if (strcmp(name,"DiagnosticRiftPenaltyThreshold")==0) return DiagnosticRiftPenaltyThresholdEnum;
     46                else if (strcmp(name,"DiagnosticShelfDampening")==0) return DiagnosticShelfDampeningEnum;
     47                else if (strcmp(name,"DiagnosticSpcvx")==0) return DiagnosticSpcvxEnum;
     48                else if (strcmp(name,"DiagnosticSpcvy")==0) return DiagnosticSpcvyEnum;
     49                else if (strcmp(name,"DiagnosticSpcvz")==0) return DiagnosticSpcvzEnum;
     50                else if (strcmp(name,"DiagnosticStokesreconditioning")==0) return DiagnosticStokesreconditioningEnum;
     51                else if (strcmp(name,"DiagnosticVertexPairing")==0) return DiagnosticVertexPairingEnum;
     52                else if (strcmp(name,"DiagnosticViscosityOvershoot")==0) return DiagnosticViscosityOvershootEnum;
     53                else if (strcmp(name,"FlowequationBordermacayeal")==0) return FlowequationBordermacayealEnum;
     54                else if (strcmp(name,"FlowequationBorderpattyn")==0) return FlowequationBorderpattynEnum;
     55                else if (strcmp(name,"FlowequationBorderstokes")==0) return FlowequationBorderstokesEnum;
     56                else if (strcmp(name,"FlowequationElementEquation")==0) return FlowequationElementEquationEnum;
     57                else if (strcmp(name,"FlowequationIshutter")==0) return FlowequationIshutterEnum;
     58                else if (strcmp(name,"FlowequationIsmacayealpattyn")==0) return FlowequationIsmacayealpattynEnum;
     59                else if (strcmp(name,"FlowequationIsstokes")==0) return FlowequationIsstokesEnum;
     60                else if (strcmp(name,"FlowequationVertexEquation")==0) return FlowequationVertexEquationEnum;
     61                else if (strcmp(name,"FrictionCoefficient")==0) return FrictionCoefficientEnum;
     62                else if (strcmp(name,"FrictionP")==0) return FrictionPEnum;
     63                else if (strcmp(name,"FrictionQ")==0) return FrictionQEnum;
     64                else if (strcmp(name,"GeometryHydrostaticRatio")==0) return GeometryHydrostaticRatioEnum;
     65                else if (strcmp(name,"HydrologyCR")==0) return HydrologyCREnum;
     66                else if (strcmp(name,"HydrologyKn")==0) return HydrologyKnEnum;
     67                else if (strcmp(name,"HydrologyN")==0) return HydrologyNEnum;
     68                else if (strcmp(name,"HydrologyP")==0) return HydrologyPEnum;
     69                else if (strcmp(name,"HydrologyQ")==0) return HydrologyQEnum;
     70                else if (strcmp(name,"HydrologySpcwatercolumn")==0) return HydrologySpcwatercolumnEnum;
     71                else if (strcmp(name,"HydrologyStabilization")==0) return HydrologyStabilizationEnum;
     72                else if (strcmp(name,"InversionControlParameters")==0) return InversionControlParametersEnum;
     73                else if (strcmp(name,"InversionCostFunction")==0) return InversionCostFunctionEnum;
     74                else if (strcmp(name,"InversionCostFunctionThreshold")==0) return InversionCostFunctionThresholdEnum;
     75                else if (strcmp(name,"InversionCostFunctionsCoefficients")==0) return InversionCostFunctionsCoefficientsEnum;
     76                else if (strcmp(name,"InversionCostFunctions")==0) return InversionCostFunctionsEnum;
     77                else if (strcmp(name,"InversionGradientOnly")==0) return InversionGradientOnlyEnum;
     78                else if (strcmp(name,"InversionGradientScaling")==0) return InversionGradientScalingEnum;
     79                else if (strcmp(name,"InversionIscontrol")==0) return InversionIscontrolEnum;
     80                else if (strcmp(name,"InversionTao")==0) return InversionTaoEnum;
     81                else if (strcmp(name,"InversionMaxParameters")==0) return InversionMaxParametersEnum;
     82                else if (strcmp(name,"InversionMaxiterPerStep")==0) return InversionMaxiterPerStepEnum;
     83                else if (strcmp(name,"InversionMinParameters")==0) return InversionMinParametersEnum;
     84                else if (strcmp(name,"InversionNsteps")==0) return InversionNstepsEnum;
     85                else if (strcmp(name,"InversionNumControlParameters")==0) return InversionNumControlParametersEnum;
     86                else if (strcmp(name,"InversionNumCostFunctions")==0) return InversionNumCostFunctionsEnum;
     87                else if (strcmp(name,"InversionStepThreshold")==0) return InversionStepThresholdEnum;
     88                else if (strcmp(name,"InversionThicknessObs")==0) return InversionThicknessObsEnum;
     89                else if (strcmp(name,"InversionVelObs")==0) return InversionVelObsEnum;
     90                else if (strcmp(name,"InversionVxObs")==0) return InversionVxObsEnum;
     91                else if (strcmp(name,"InversionVyObs")==0) return InversionVyObsEnum;
     92                else if (strcmp(name,"InversionVzObs")==0) return InversionVzObsEnum;
     93                else if (strcmp(name,"MaskElementonfloatingice")==0) return MaskElementonfloatingiceEnum;
     94                else if (strcmp(name,"MaskElementongroundedice")==0) return MaskElementongroundediceEnum;
     95                else if (strcmp(name,"MaskElementonwater")==0) return MaskElementonwaterEnum;
     96                else if (strcmp(name,"MaskVertexonfloatingice")==0) return MaskVertexonfloatingiceEnum;
     97                else if (strcmp(name,"MaskVertexongroundedice")==0) return MaskVertexongroundediceEnum;
     98                else if (strcmp(name,"MaskVertexonwater")==0) return MaskVertexonwaterEnum;
     99                else if (strcmp(name,"MaterialsBeta")==0) return MaterialsBetaEnum;
     100                else if (strcmp(name,"MaterialsHeatcapacity")==0) return MaterialsHeatcapacityEnum;
     101                else if (strcmp(name,"MaterialsLatentheat")==0) return MaterialsLatentheatEnum;
     102                else if (strcmp(name,"MaterialsMeltingpoint")==0) return MaterialsMeltingpointEnum;
     103                else if (strcmp(name,"MaterialsMixedLayerCapacity")==0) return MaterialsMixedLayerCapacityEnum;
     104                else if (strcmp(name,"MaterialsRheologyB")==0) return MaterialsRheologyBEnum;
     105                else if (strcmp(name,"MaterialsRheologyBbar")==0) return MaterialsRheologyBbarEnum;
     106                else if (strcmp(name,"MaterialsRheologyLaw")==0) return MaterialsRheologyLawEnum;
     107                else if (strcmp(name,"MaterialsRheologyN")==0) return MaterialsRheologyNEnum;
     108                else if (strcmp(name,"MaterialsRhoIce")==0) return MaterialsRhoIceEnum;
     109                else if (strcmp(name,"MaterialsRhoWater")==0) return MaterialsRhoWaterEnum;
     110                else if (strcmp(name,"MaterialsMuWater")==0) return MaterialsMuWaterEnum;
     111                else if (strcmp(name,"MaterialsThermalExchangeVelocity")==0) return MaterialsThermalExchangeVelocityEnum;
     112                else if (strcmp(name,"MaterialsThermalconductivity")==0) return MaterialsThermalconductivityEnum;
     113                else if (strcmp(name,"MeshAverageVertexConnectivity")==0) return MeshAverageVertexConnectivityEnum;
     114                else if (strcmp(name,"MeshDimension")==0) return MeshDimensionEnum;
     115                else if (strcmp(name,"MeshEdges")==0) return MeshEdgesEnum;
     116                else if (strcmp(name,"MeshElementconnectivity")==0) return MeshElementconnectivityEnum;
     117                else if (strcmp(name,"MeshElementonbed")==0) return MeshElementonbedEnum;
     118                else if (strcmp(name,"MeshElementonsurface")==0) return MeshElementonsurfaceEnum;
     119                else if (strcmp(name,"MeshElements2d")==0) return MeshElements2dEnum;
     120                else if (strcmp(name,"MeshElements")==0) return MeshElementsEnum;
     121                else if (strcmp(name,"MeshLowerelements")==0) return MeshLowerelementsEnum;
     122                else if (strcmp(name,"MeshNumberofedges")==0) return MeshNumberofedgesEnum;
     123                else if (strcmp(name,"MeshNumberofelements2d")==0) return MeshNumberofelements2dEnum;
     124                else if (strcmp(name,"MeshNumberofelements")==0) return MeshNumberofelementsEnum;
     125                else if (strcmp(name,"MeshNumberoflayers")==0) return MeshNumberoflayersEnum;
     126                else if (strcmp(name,"MeshNumberofvertices2d")==0) return MeshNumberofvertices2dEnum;
     127                else if (strcmp(name,"MeshNumberofvertices")==0) return MeshNumberofverticesEnum;
     128                else if (strcmp(name,"MeshUpperelements")==0) return MeshUpperelementsEnum;
     129                else if (strcmp(name,"MeshVertexonbed")==0) return MeshVertexonbedEnum;
     130                else if (strcmp(name,"MeshVertexonsurface")==0) return MeshVertexonsurfaceEnum;
     131                else if (strcmp(name,"MeshX")==0) return MeshXEnum;
     132                else if (strcmp(name,"MeshY")==0) return MeshYEnum;
     133                else if (strcmp(name,"MeshZ")==0) return MeshZEnum;
     134                else if (strcmp(name,"MiscellaneousName")==0) return MiscellaneousNameEnum;
     135                else if (strcmp(name,"PrognosticHydrostaticAdjustment")==0) return PrognosticHydrostaticAdjustmentEnum;
     136                else if (strcmp(name,"PrognosticMinThickness")==0) return PrognosticMinThicknessEnum;
     137                else if (strcmp(name,"PrognosticPenaltyFactor")==0) return PrognosticPenaltyFactorEnum;
     138                else if (strcmp(name,"PrognosticSpcthickness")==0) return PrognosticSpcthicknessEnum;
     139                else if (strcmp(name,"PrognosticStabilization")==0) return PrognosticStabilizationEnum;
     140                else if (strcmp(name,"PrognosticVertexPairing")==0) return PrognosticVertexPairingEnum;
     141                else stage=1;
     142        }
     143
     144        if(stage==1){
     145
     146                if (strcmp(name,"QmuIsdakota")==0) return QmuIsdakotaEnum;
     147                else if (strcmp(name,"QmuMassFluxSegments")==0) return QmuMassFluxSegmentsEnum;
     148                else if (strcmp(name,"QmuNumberofpartitions")==0) return QmuNumberofpartitionsEnum;
     149                else if (strcmp(name,"QmuNumberofresponses")==0) return QmuNumberofresponsesEnum;
     150                else if (strcmp(name,"QmuPartition")==0) return QmuPartitionEnum;
     151                else if (strcmp(name,"QmuResponsedescriptors")==0) return QmuResponsedescriptorsEnum;
     152                else if (strcmp(name,"QmuVariabledescriptors")==0) return QmuVariabledescriptorsEnum;
     153                else if (strcmp(name,"RiftsNumrifts")==0) return RiftsNumriftsEnum;
     154                else if (strcmp(name,"RiftsRiftstruct")==0) return RiftsRiftstructEnum;
     155                else if (strcmp(name,"SettingsIoGather")==0) return SettingsIoGatherEnum;
     156                else if (strcmp(name,"SettingsLowmem")==0) return SettingsLowmemEnum;
     157                else if (strcmp(name,"SettingsOutputFrequency")==0) return SettingsOutputFrequencyEnum;
     158                else if (strcmp(name,"SettingsResultsAsPatches")==0) return SettingsResultsAsPatchesEnum;
     159                else if (strcmp(name,"SettingsWaitonlock")==0) return SettingsWaitonlockEnum;
     160                else if (strcmp(name,"SteadystateMaxiter")==0) return SteadystateMaxiterEnum;
     161                else if (strcmp(name,"SteadystateNumRequestedOutputs")==0) return SteadystateNumRequestedOutputsEnum;
     162                else if (strcmp(name,"SteadystateReltol")==0) return SteadystateReltolEnum;
     163                else if (strcmp(name,"SteadystateRequestedOutputs")==0) return SteadystateRequestedOutputsEnum;
     164                else if (strcmp(name,"Surface")==0) return SurfaceEnum;
     165                else if (strcmp(name,"SurfaceforcingsAblationRate")==0) return SurfaceforcingsAblationRateEnum;
     166                else if (strcmp(name,"SurfaceforcingsAccumulationRate")==0) return SurfaceforcingsAccumulationRateEnum;
     167                else if (strcmp(name,"SurfaceforcingsMassBalance")==0) return SurfaceforcingsMassBalanceEnum;
     168                else if (strcmp(name,"ThermalMaxiter")==0) return ThermalMaxiterEnum;
     169                else if (strcmp(name,"ThermalPenaltyFactor")==0) return ThermalPenaltyFactorEnum;
     170                else if (strcmp(name,"ThermalPenaltyLock")==0) return ThermalPenaltyLockEnum;
     171                else if (strcmp(name,"ThermalPenaltyThreshold")==0) return ThermalPenaltyThresholdEnum;
     172                else if (strcmp(name,"ThermalSpctemperature")==0) return ThermalSpctemperatureEnum;
     173                else if (strcmp(name,"ThermalStabilization")==0) return ThermalStabilizationEnum;
     174                else if (strcmp(name,"ThermalIsenthalpy")==0) return ThermalIsenthalpyEnum;
     175                else if (strcmp(name,"Thickness")==0) return ThicknessEnum;
     176                else if (strcmp(name,"TimesteppingCflCoefficient")==0) return TimesteppingCflCoefficientEnum;
     177                else if (strcmp(name,"TimesteppingFinalTime")==0) return TimesteppingFinalTimeEnum;
     178                else if (strcmp(name,"TimesteppingTimeAdapt")==0) return TimesteppingTimeAdaptEnum;
     179                else if (strcmp(name,"TimesteppingTimeStep")==0) return TimesteppingTimeStepEnum;
     180                else if (strcmp(name,"TransientIsdiagnostic")==0) return TransientIsdiagnosticEnum;
     181                else if (strcmp(name,"TransientIsgroundingline")==0) return TransientIsgroundinglineEnum;
     182                else if (strcmp(name,"TransientIsprognostic")==0) return TransientIsprognosticEnum;
     183                else if (strcmp(name,"TransientIsthermal")==0) return TransientIsthermalEnum;
     184                else if (strcmp(name,"TransientNumRequestedOutputs")==0) return TransientNumRequestedOutputsEnum;
     185                else if (strcmp(name,"TransientRequestedOutputs")==0) return TransientRequestedOutputsEnum;
     186                else if (strcmp(name,"SolutionType")==0) return SolutionTypeEnum;
     187                else if (strcmp(name,"AnalysisType")==0) return AnalysisTypeEnum;
     188                else if (strcmp(name,"ConfigurationType")==0) return ConfigurationTypeEnum;
     189                else if (strcmp(name,"AdjointBalancethicknessAnalysis")==0) return AdjointBalancethicknessAnalysisEnum;
     190                else if (strcmp(name,"AdjointHorizAnalysis")==0) return AdjointHorizAnalysisEnum;
     191                else if (strcmp(name,"AdjointSolution")==0) return AdjointSolutionEnum;
     192                else if (strcmp(name,"AnalysisCounter")==0) return AnalysisCounterEnum;
     193                else if (strcmp(name,"BalancethicknessAnalysis")==0) return BalancethicknessAnalysisEnum;
     194                else if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum;
     195                else if (strcmp(name,"BedSlopeAnalysis")==0) return BedSlopeAnalysisEnum;
     196                else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
     197                else if (strcmp(name,"BedSlopeXAnalysis")==0) return BedSlopeXAnalysisEnum;
     198                else if (strcmp(name,"BedSlopeYAnalysis")==0) return BedSlopeYAnalysisEnum;
     199                else if (strcmp(name,"DiagnosticHorizAnalysis")==0) return DiagnosticHorizAnalysisEnum;
     200                else if (strcmp(name,"DiagnosticHutterAnalysis")==0) return DiagnosticHutterAnalysisEnum;
     201                else if (strcmp(name,"DiagnosticSolution")==0) return DiagnosticSolutionEnum;
     202                else if (strcmp(name,"DiagnosticVertAnalysis")==0) return DiagnosticVertAnalysisEnum;
     203                else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum;
     204                else if (strcmp(name,"EnthalpySolution")==0) return EnthalpySolutionEnum;
     205                else if (strcmp(name,"FlaimAnalysis")==0) return FlaimAnalysisEnum;
     206                else if (strcmp(name,"FlaimSolution")==0) return FlaimSolutionEnum;
     207                else if (strcmp(name,"HydrologyAnalysis")==0) return HydrologyAnalysisEnum;
     208                else if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
     209                else if (strcmp(name,"MeltingAnalysis")==0) return MeltingAnalysisEnum;
     210                else if (strcmp(name,"NoneAnalysis")==0) return NoneAnalysisEnum;
     211                else if (strcmp(name,"PrognosticAnalysis")==0) return PrognosticAnalysisEnum;
     212                else if (strcmp(name,"PrognosticSolution")==0) return PrognosticSolutionEnum;
     213                else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
     214                else if (strcmp(name,"SurfaceSlopeAnalysis")==0) return SurfaceSlopeAnalysisEnum;
     215                else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum;
     216                else if (strcmp(name,"SurfaceSlopeXAnalysis")==0) return SurfaceSlopeXAnalysisEnum;
     217                else if (strcmp(name,"SurfaceSlopeYAnalysis")==0) return SurfaceSlopeYAnalysisEnum;
     218                else if (strcmp(name,"ThermalAnalysis")==0) return ThermalAnalysisEnum;
     219                else if (strcmp(name,"ThermalSolution")==0) return ThermalSolutionEnum;
     220                else if (strcmp(name,"TransientSolution")==0) return TransientSolutionEnum;
     221                else if (strcmp(name,"Approximation")==0) return ApproximationEnum;
     222                else if (strcmp(name,"HutterApproximation")==0) return HutterApproximationEnum;
     223                else if (strcmp(name,"MacAyealApproximation")==0) return MacAyealApproximationEnum;
     224                else if (strcmp(name,"MacAyealPattynApproximation")==0) return MacAyealPattynApproximationEnum;
     225                else if (strcmp(name,"MacAyealStokesApproximation")==0) return MacAyealStokesApproximationEnum;
     226                else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
     227                else if (strcmp(name,"PattynApproximation")==0) return PattynApproximationEnum;
     228                else if (strcmp(name,"PattynStokesApproximation")==0) return PattynStokesApproximationEnum;
     229                else if (strcmp(name,"StokesApproximation")==0) return StokesApproximationEnum;
     230                else if (strcmp(name,"Constraints")==0) return ConstraintsEnum;
     231                else if (strcmp(name,"Loads")==0) return LoadsEnum;
     232                else if (strcmp(name,"Materials")==0) return MaterialsEnum;
     233                else if (strcmp(name,"Nodes")==0) return NodesEnum;
     234                else if (strcmp(name,"Parameters")==0) return ParametersEnum;
     235                else if (strcmp(name,"Vertices")==0) return VerticesEnum;
     236                else if (strcmp(name,"Results")==0) return ResultsEnum;
     237                else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
     238                else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
     239                else if (strcmp(name,"ControlInput")==0) return ControlInputEnum;
     240                else if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum;
     241                else if (strcmp(name,"DofIndexing")==0) return DofIndexingEnum;
     242                else if (strcmp(name,"DoubleInput")==0) return DoubleInputEnum;
     243                else if (strcmp(name,"DoubleMatArrayParam")==0) return DoubleMatArrayParamEnum;
     244                else if (strcmp(name,"DoubleMatParam")==0) return DoubleMatParamEnum;
     245                else if (strcmp(name,"DoubleParam")==0) return DoubleParamEnum;
     246                else if (strcmp(name,"DoubleVecParam")==0) return DoubleVecParamEnum;
     247                else if (strcmp(name,"Element")==0) return ElementEnum;
     248                else if (strcmp(name,"ElementResult")==0) return ElementResultEnum;
     249                else if (strcmp(name,"ExternalResult")==0) return ExternalResultEnum;
     250                else if (strcmp(name,"FileParam")==0) return FileParamEnum;
     251                else if (strcmp(name,"Hook")==0) return HookEnum;
     252                else if (strcmp(name,"Icefront")==0) return IcefrontEnum;
     253                else if (strcmp(name,"Input")==0) return InputEnum;
     254                else if (strcmp(name,"IntInput")==0) return IntInputEnum;
     255                else if (strcmp(name,"IntParam")==0) return IntParamEnum;
     256                else if (strcmp(name,"IntVecParam")==0) return IntVecParamEnum;
     257                else if (strcmp(name,"MacAyeal2dIceFront")==0) return MacAyeal2dIceFrontEnum;
     258                else if (strcmp(name,"MacAyeal3dIceFront")==0) return MacAyeal3dIceFrontEnum;
     259                else if (strcmp(name,"Matice")==0) return MaticeEnum;
     260                else if (strcmp(name,"Matpar")==0) return MatparEnum;
     261                else if (strcmp(name,"Node")==0) return NodeEnum;
     262                else if (strcmp(name,"Numericalflux")==0) return NumericalfluxEnum;
     263                else if (strcmp(name,"Param")==0) return ParamEnum;
     264                else if (strcmp(name,"PattynIceFront")==0) return PattynIceFrontEnum;
     265                else if (strcmp(name,"Pengrid")==0) return PengridEnum;
     266                else stage=2;
     267        }
     268        if(stage==2){
     269                if (strcmp(name,"Penpair")==0) return PenpairEnum;
     270                else if (strcmp(name,"Penta")==0) return PentaEnum;
     271                else if (strcmp(name,"PentaP1Input")==0) return PentaP1InputEnum;
     272                else if (strcmp(name,"PetscMatParam")==0) return PetscMatParamEnum;
     273                else if (strcmp(name,"PetscVecParam")==0) return PetscVecParamEnum;
     274                else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum;
     275                else if (strcmp(name,"Segment")==0) return SegmentEnum;
     276                else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
     277                else if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
     278                else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
     279                else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
     280                else if (strcmp(name,"StokesIceFront")==0) return StokesIceFrontEnum;
     281                else if (strcmp(name,"StringArrayParam")==0) return StringArrayParamEnum;
     282                else if (strcmp(name,"StringParam")==0) return StringParamEnum;
     283                else if (strcmp(name,"Tria")==0) return TriaEnum;
     284                else if (strcmp(name,"TriaP1Input")==0) return TriaP1InputEnum;
     285                else if (strcmp(name,"Vertex")==0) return VertexEnum;
     286                else if (strcmp(name,"Air")==0) return AirEnum;
     287                else if (strcmp(name,"Ice")==0) return IceEnum;
     288                else if (strcmp(name,"Melange")==0) return MelangeEnum;
     289                else if (strcmp(name,"Water")==0) return WaterEnum;
     290                else if (strcmp(name,"Closed")==0) return ClosedEnum;
     291                else if (strcmp(name,"Free")==0) return FreeEnum;
     292                else if (strcmp(name,"Open")==0) return OpenEnum;
     293                else if (strcmp(name,"Adjointp")==0) return AdjointpEnum;
     294                else if (strcmp(name,"Adjointx")==0) return AdjointxEnum;
     295                else if (strcmp(name,"Adjointy")==0) return AdjointyEnum;
     296                else if (strcmp(name,"Adjointz")==0) return AdjointzEnum;
     297                else if (strcmp(name,"BedSlopeX")==0) return BedSlopeXEnum;
     298                else if (strcmp(name,"BedSlopeY")==0) return BedSlopeYEnum;
     299                else if (strcmp(name,"Boundary")==0) return BoundaryEnum;
     300                else if (strcmp(name,"Constant")==0) return ConstantEnum;
     301                else if (strcmp(name,"Converged")==0) return ConvergedEnum;
     302                else if (strcmp(name,"ExtToIu")==0) return ExtToIuEnum;
     303                else if (strcmp(name,"Fill")==0) return FillEnum;
     304                else if (strcmp(name,"FractionIncrement")==0) return FractionIncrementEnum;
     305                else if (strcmp(name,"Friction")==0) return FrictionEnum;
     306                else if (strcmp(name,"GroundinglineMeltingRate")==0) return GroundinglineMeltingRateEnum;
     307                else if (strcmp(name,"Internal")==0) return InternalEnum;
     308                else if (strcmp(name,"IuToExt")==0) return IuToExtEnum;
     309                else if (strcmp(name,"MassFlux")==0) return MassFluxEnum;
     310                else if (strcmp(name,"MaxPenetration")==0) return MaxPenetrationEnum;
     311                else if (strcmp(name,"MeltingOffset")==0) return MeltingOffsetEnum;
     312                else if (strcmp(name,"Misfit")==0) return MisfitEnum;
     313                else if (strcmp(name,"NumberNodeToElementConnectivity")==0) return NumberNodeToElementConnectivityEnum;
     314                else if (strcmp(name,"Pressure")==0) return PressureEnum;
     315                else if (strcmp(name,"PressurePicard")==0) return PressurePicardEnum;
     316                else if (strcmp(name,"QmuPressure")==0) return QmuPressureEnum;
     317                else if (strcmp(name,"QmuVx")==0) return QmuVxEnum;
     318                else if (strcmp(name,"QmuVy")==0) return QmuVyEnum;
     319                else if (strcmp(name,"QmuVz")==0) return QmuVzEnum;
     320                else if (strcmp(name,"QmuThickness")==0) return QmuThicknessEnum;
     321                else if (strcmp(name,"QmuBed")==0) return QmuBedEnum;
     322                else if (strcmp(name,"QmuSurface")==0) return QmuSurfaceEnum;
     323                else if (strcmp(name,"QmuMelting")==0) return QmuMeltingEnum;
     324                else if (strcmp(name,"ResetPenalties")==0) return ResetPenaltiesEnum;
     325                else if (strcmp(name,"SegmentOnIceShelf")==0) return SegmentOnIceShelfEnum;
     326                else if (strcmp(name,"SurfaceAbsVelMisfit")==0) return SurfaceAbsVelMisfitEnum;
     327                else if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum;
     328                else if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum;
     329                else if (strcmp(name,"SurfaceLogVelMisfit")==0) return SurfaceLogVelMisfitEnum;
     330                else if (strcmp(name,"SurfaceLogVxVyMisfit")==0) return SurfaceLogVxVyMisfitEnum;
     331                else if (strcmp(name,"SurfaceRelVelMisfit")==0) return SurfaceRelVelMisfitEnum;
     332                else if (strcmp(name,"SurfaceSlopeX")==0) return SurfaceSlopeXEnum;
     333                else if (strcmp(name,"SurfaceSlopeY")==0) return SurfaceSlopeYEnum;
     334                else if (strcmp(name,"Temperature")==0) return TemperatureEnum;
     335                else if (strcmp(name,"TemperatureOld")==0) return TemperatureOldEnum;
     336                else if (strcmp(name,"TemperaturePicard")==0) return TemperaturePicardEnum;
     337                else if (strcmp(name,"ThicknessAbsMisfit")==0) return ThicknessAbsMisfitEnum;
     338                else if (strcmp(name,"Type")==0) return TypeEnum;
     339                else if (strcmp(name,"Vel")==0) return VelEnum;
     340                else if (strcmp(name,"Velocity")==0) return VelocityEnum;
     341                else if (strcmp(name,"VxAverage")==0) return VxAverageEnum;
     342                else if (strcmp(name,"Vx")==0) return VxEnum;
     343                else if (strcmp(name,"VxPicard")==0) return VxPicardEnum;
     344                else if (strcmp(name,"VyAverage")==0) return VyAverageEnum;
     345                else if (strcmp(name,"Vy")==0) return VyEnum;
     346                else if (strcmp(name,"VyPicard")==0) return VyPicardEnum;
     347                else if (strcmp(name,"Vz")==0) return VzEnum;
     348                else if (strcmp(name,"VzMacAyeal")==0) return VzMacAyealEnum;
     349                else if (strcmp(name,"VzPattyn")==0) return VzPattynEnum;
     350                else if (strcmp(name,"VzPicard")==0) return VzPicardEnum;
     351                else if (strcmp(name,"VzStokes")==0) return VzStokesEnum;
     352                else if (strcmp(name,"VxMesh")==0) return VxMeshEnum;
     353                else if (strcmp(name,"VyMesh")==0) return VyMeshEnum;
     354                else if (strcmp(name,"VzMesh")==0) return VzMeshEnum;
     355                else if (strcmp(name,"Enthalpy")==0) return EnthalpyEnum;
     356                else if (strcmp(name,"EnthalpyPicard")==0) return EnthalpyPicardEnum;
     357                else if (strcmp(name,"ThicknessAbsGradient")==0) return ThicknessAbsGradientEnum;
     358                else if (strcmp(name,"StepResponses")==0) return StepResponsesEnum;
     359                else if (strcmp(name,"IntMatParam")==0) return IntMatParamEnum;
     360                else if (strcmp(name,"RheologyBbarAbsGradient")==0) return RheologyBbarAbsGradientEnum;
     361                else if (strcmp(name,"DragCoefficientAbsGradient")==0) return DragCoefficientAbsGradientEnum;
     362                else if (strcmp(name,"TransientInput")==0) return TransientInputEnum;
     363                else if (strcmp(name,"Outputfilename")==0) return OutputfilenameEnum;
     364                else if (strcmp(name,"Waterfraction")==0) return WaterfractionEnum;
     365                else if (strcmp(name,"Watercolumn")==0) return WatercolumnEnum;
     366                else if (strcmp(name,"BasalFriction")==0) return BasalFrictionEnum;
     367                else if (strcmp(name,"ViscousHeating")==0) return ViscousHeatingEnum;
     368                else if (strcmp(name,"QmuTemperature")==0) return QmuTemperatureEnum;
     369                else if (strcmp(name,"HydrologyWaterVx")==0) return HydrologyWaterVxEnum;
     370                else if (strcmp(name,"HydrologyWaterVy")==0) return HydrologyWaterVyEnum;
     371                else if (strcmp(name,"StressTensor")==0) return StressTensorEnum;
     372                else if (strcmp(name,"StressTensorxx")==0) return StressTensorxxEnum;
     373                else if (strcmp(name,"StressTensorxy")==0) return StressTensorxyEnum;
     374                else if (strcmp(name,"StressTensorxz")==0) return StressTensorxzEnum;
     375                else if (strcmp(name,"StressTensoryy")==0) return StressTensoryyEnum;
     376                else if (strcmp(name,"StressTensoryz")==0) return StressTensoryzEnum;
     377                else if (strcmp(name,"StressTensorzz")==0) return StressTensorzzEnum;
     378                else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
     379                else if (strcmp(name,"P0")==0) return P0Enum;
     380                else if (strcmp(name,"P1")==0) return P1Enum;
     381                else if (strcmp(name,"P1DG")==0) return P1DGEnum;
     382                else if (strcmp(name,"BoolElementResult")==0) return BoolElementResultEnum;
     383                else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
     384                else if (strcmp(name,"DoubleElementResult")==0) return DoubleElementResultEnum;
     385                else if (strcmp(name,"DoubleExternalResult")==0) return DoubleExternalResultEnum;
     386                else if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
     387                else if (strcmp(name,"DoubleVecExternalResult")==0) return DoubleVecExternalResultEnum;
     388                else if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
     389                else stage==3;
     390        }
     391        if(stage==3){
     392                if (strcmp(name,"J")==0) return JEnum;
     393                else if (strcmp(name,"Patch")==0) return PatchEnum;
     394                else if (strcmp(name,"PatchNodes")==0) return PatchNodesEnum;
     395                else if (strcmp(name,"PatchVertices")==0) return PatchVerticesEnum;
     396                else if (strcmp(name,"PentaP1ElementResult")==0) return PentaP1ElementResultEnum;
     397                else if (strcmp(name,"PetscVecExternalResult")==0) return PetscVecExternalResultEnum;
     398                else if (strcmp(name,"StringExternalResult")==0) return StringExternalResultEnum;
     399                else if (strcmp(name,"Time")==0) return TimeEnum;
     400                else if (strcmp(name,"TriaP1ElementResult")==0) return TriaP1ElementResultEnum;
     401                else if (strcmp(name,"WaterColumnOld")==0) return WaterColumnOldEnum;
     402                else if (strcmp(name,"MinVel")==0) return MinVelEnum;
     403                else if (strcmp(name,"MaxVel")==0) return MaxVelEnum;
     404                else if (strcmp(name,"MinVx")==0) return MinVxEnum;
     405                else if (strcmp(name,"MaxVx")==0) return MaxVxEnum;
     406                else if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
     407                else if (strcmp(name,"MinVy")==0) return MinVyEnum;
     408                else if (strcmp(name,"MaxVy")==0) return MaxVyEnum;
     409                else if (strcmp(name,"MaxAbsVy")==0) return MaxAbsVyEnum;
     410                else if (strcmp(name,"MinVz")==0) return MinVzEnum;
     411                else if (strcmp(name,"MaxVz")==0) return MaxVzEnum;
     412                else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
     413                else if (strcmp(name,"Relative")==0) return RelativeEnum;
     414                else if (strcmp(name,"Absolute")==0) return AbsoluteEnum;
     415                else if (strcmp(name,"Incremental")==0) return IncrementalEnum;
     416                else if (strcmp(name,"AgressiveMigration")==0) return AgressiveMigrationEnum;
     417                else if (strcmp(name,"None")==0) return NoneEnum;
     418                else if (strcmp(name,"SoftMigration")==0) return SoftMigrationEnum;
     419                else if (strcmp(name,"StokesSolver")==0) return StokesSolverEnum;
     420                else if (strcmp(name,"Adjoint")==0) return AdjointEnum;
     421                else if (strcmp(name,"Colinear")==0) return ColinearEnum;
     422                else if (strcmp(name,"ControlSteady")==0) return ControlSteadyEnum;
     423                else if (strcmp(name,"Fset")==0) return FsetEnum;
     424                else if (strcmp(name,"Gradient1")==0) return Gradient1Enum;
     425                else if (strcmp(name,"Gradient2")==0) return Gradient2Enum;
     426                else if (strcmp(name,"Gradient3")==0) return Gradient3Enum;
     427                else if (strcmp(name,"Gradient")==0) return GradientEnum;
     428                else if (strcmp(name,"GroundinglineMigration")==0) return GroundinglineMigrationEnum;
     429                else if (strcmp(name,"Gset")==0) return GsetEnum;
     430                else if (strcmp(name,"Index")==0) return IndexEnum;
     431                else if (strcmp(name,"Indexed")==0) return IndexedEnum;
     432                else if (strcmp(name,"Intersect")==0) return IntersectEnum;
     433                else if (strcmp(name,"Nodal")==0) return NodalEnum;
     434                else if (strcmp(name,"OldGradient")==0) return OldGradientEnum;
     435                else if (strcmp(name,"OutputFilePointer")==0) return OutputFilePointerEnum;
     436                else if (strcmp(name,"PetscOptionsAnalyses")==0) return PetscOptionsAnalysesEnum;
     437                else if (strcmp(name,"PetscOptionsStrings")==0) return PetscOptionsStringsEnum;
     438                else if (strcmp(name,"QmuErrName")==0) return QmuErrNameEnum;
     439                else if (strcmp(name,"QmuInName")==0) return QmuInNameEnum;
     440                else if (strcmp(name,"QmuOutName")==0) return QmuOutNameEnum;
     441                else if (strcmp(name,"Regular")==0) return RegularEnum;
     442                else if (strcmp(name,"Scaled")==0) return ScaledEnum;
     443                else if (strcmp(name,"Separate")==0) return SeparateEnum;
     444                else if (strcmp(name,"Sset")==0) return SsetEnum;
     445                else if (strcmp(name,"Verbose")==0) return VerboseEnum;
     446                else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
     447                else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
     448                else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
     449                else if (strcmp(name,"XY")==0) return XYEnum;
     450                else if (strcmp(name,"XYZP")==0) return XYZPEnum;
     451                else if (strcmp(name,"Option")==0) return OptionEnum;
     452                else if (strcmp(name,"OptionCell")==0) return OptionCellEnum;
     453                else if (strcmp(name,"OptionChar")==0) return OptionCharEnum;
     454                else if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
     455                else if (strcmp(name,"OptionDouble")==0) return OptionDoubleEnum;
     456                else if (strcmp(name,"OptionLogical")==0) return OptionLogicalEnum;
     457                else if (strcmp(name,"Paterson")==0) return PatersonEnum;
     458                else if (strcmp(name,"Arrhenius")==0) return ArrheniusEnum;
     459                else _error_("Enum %s not found",name);
     460        }
    445461
    446462}
Note: See TracChangeset for help on using the changeset viewer.