Changeset 22284


Ignore:
Timestamp:
11/30/17 23:43:12 (7 years ago)
Author:
bdef
Message:

CHG:shifting the hydrology routines to requested_output

Location:
issm/trunk-jpl/src/c
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp

    r22277 r22284  
    224224        basalelement->GetVerticesCoordinates(&xyz_list);
    225225        //basalelement->FindParam(&dt,TimesteppingTimeStepEnum);
    226         basalelement ->FindParam(&dt,HydrologydcHydrodtEnum);
     226        basalelement ->FindParam(&dt,HydrologydtEnum);
    227227
    228228        Input* epl_thick_input = basalelement->GetInput(HydrologydcEplThicknessEnum); _assert_(epl_thick_input);
     
    334334        basalelement->GetVerticesCoordinates(&xyz_list);
    335335        //basalelement->FindParam(&dt,TimesteppingTimeStepEnum);       
    336         basalelement ->FindParam(&dt,HydrologydcHydrodtEnum);
     336        basalelement ->FindParam(&dt,HydrologydtEnum);
    337337
    338338        Input* epl_thick_input = basalelement->GetInput(HydrologydcEplThicknessEnum); _assert_(epl_thick_input);
     
    558558                active_element_input->GetInputValue(&active_element);
    559559                //element->FindParam(&dt,TimesteppingTimeStepEnum);
    560                 element ->FindParam(&dt,HydrologydcHydrodtEnum);
     560                element ->FindParam(&dt,HydrologydtEnum);
    561561       
    562562                /*For now, assuming just one way to compute EPL thickness*/
  • issm/trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp

    r22277 r22284  
    5050        parameters->AddObject(new IntParam(HydrologydcPenaltyLockEnum,penalty_lock));
    5151        parameters->AddObject(new IntParam(HydrologydcMaxIterEnum,hydro_maxiter));
    52         parameters->AddObject(new IntParam(HydrologydcStepsPerStepEnum,hydroslices));
     52        parameters->AddObject(new IntParam(HydrologyStepsPerStepEnum,hydroslices));
    5353
    5454        parameters->AddObject(new BoolParam(HydrologydcIsefficientlayerEnum,isefficientlayer));
     
    222222        basalelement ->GetVerticesCoordinates(&xyz_list);
    223223        //basalelement ->FindParam(&dt,TimesteppingTimeStepEnum);
    224         basalelement ->FindParam(&dt,HydrologydcHydrodtEnum);
     224        basalelement ->FindParam(&dt,HydrologydtEnum);
    225225        basalelement ->FindParam(&isefficientlayer,HydrologydcIsefficientlayerEnum);
    226226        Input* SedTrans_input = basalelement->GetInput(HydrologydcSedimentTransmitivityEnum); _assert_(SedTrans_input);
     
    334334        basalelement->GetVerticesCoordinates(&xyz_list);
    335335        //basalelement->FindParam(&dt,TimesteppingTimeStepEnum);
    336         basalelement ->FindParam(&dt,HydrologydcHydrodtEnum);
     336        basalelement ->FindParam(&dt,HydrologydtEnum);
    337337        basalelement->FindParam(&isefficientlayer,HydrologydcIsefficientlayerEnum);
    338338
  • issm/trunk-jpl/src/c/analyses/HydrologyShreveAnalysis.cpp

    r20690 r22284  
    7373
    7474        /*retrieve some parameters: */
    75         int  hydrology_model;
     75        int    hydrology_model;
     76        int    numoutputs;
     77        char** requestedoutputs = NULL;
    7678        iomodel->FindConstant(&hydrology_model,"md.hydrology.model");
    7779
     
    8183        parameters->AddObject(new IntParam(HydrologyModelEnum,hydrology_model));
    8284        parameters->AddObject(iomodel->CopyConstantObject("md.hydrology.stabilization",HydrologyshreveStabilizationEnum));
     85  /*Requested outputs*/
     86  iomodel->FindConstant(&requestedoutputs,&numoutputs,"md.hydrology.requested_outputs");
     87  parameters->AddObject(new IntParam(HydrologyNumRequestedOutputsEnum,numoutputs));
     88  if(numoutputs)parameters->AddObject(new StringArrayParam(HydrologyRequestedOutputsEnum,requestedoutputs,numoutputs));
     89  iomodel->DeleteData(&requestedoutputs,numoutputs,"md.hydrology.requested_outputs");
    8390
    8491}/*}}}*/
  • issm/trunk-jpl/src/c/analyses/HydrologySommersAnalysis.cpp

    r22211 r22284  
    139139
    140140        /*retrieve some parameters: */
    141         int  hydrology_model;
     141        int    hydrology_model;
     142        int    numoutputs;
     143        char** requestedoutputs = NULL;
    142144        iomodel->FindConstant(&hydrology_model,"md.hydrology.model");
    143145
     
    149151   parameters->AddObject(iomodel->CopyConstantObject("md.hydrology.relaxation",HydrologyRelaxationEnum));
    150152        parameters->AddObject(iomodel->CopyConstantObject("md.hydrology.storage",HydrologyStorageEnum));
     153
     154  /*Requested outputs*/
     155  iomodel->FindConstant(&requestedoutputs,&numoutputs,"md.hydrology.requested_outputs");
     156  parameters->AddObject(new IntParam(HydrologyNumRequestedOutputsEnum,numoutputs));
     157  if(numoutputs)parameters->AddObject(new StringArrayParam(HydrologyRequestedOutputsEnum,requestedoutputs,numoutputs));
     158  iomodel->DeleteData(&requestedoutputs,numoutputs,"md.hydrology.requested_outputs");
    151159}/*}}}*/
    152160
  • issm/trunk-jpl/src/c/classes/FemModel.cpp

    r22279 r22284  
    44874487                                Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(j));
    44884488                                TransientInput* stacking_input=NULL;
    4489                                 Input* input=element->inputs->GetInput(HydrologydcStackedNEnum); _assert_(input);
     4489                                Input* input=element->inputs->GetInput(EffectivePressureStackedEnum); _assert_(input);
    44904490                                Input* input_to_stack=element->GetInput(input_enum[i]); _assert_(input_to_stack);
    44914491                                stacking_input=dynamic_cast<TransientInput*>(input);
     
    44964496                                switch(element->ObjectEnum()){
    44974497                                case TriaEnum:
    4498                                         stacking_input->AddTimeInput(new TriaInput(HydrologydcStackedNEnum,&N[0],P1Enum),hydrotime);
     4498                                        stacking_input->AddTimeInput(new TriaInput(EffectivePressureStackedEnum,&N[0],P1Enum),hydrotime);
    44994499                                        break;
    45004500                                case PentaEnum:
    4501                                         stacking_input->AddTimeInput(new PentaInput(HydrologydcStackedNEnum,&N[0],P1Enum),hydrotime);
     4501                                        stacking_input->AddTimeInput(new PentaInput(EffectivePressureStackedEnum,&N[0],P1Enum),hydrotime);
    45024502                                        break;
    45034503                                case TetraEnum:
    4504                                         stacking_input->AddTimeInput(new TetraInput(HydrologydcStackedNEnum,&N[0],P1Enum),hydrotime);
     4504                                        stacking_input->AddTimeInput(new TetraInput(EffectivePressureStackedEnum,&N[0],P1Enum),hydrotime);
    45054505                                        break;
    45064506                                default: _error_("Not implemented yet");
     
    45304530                                stacking_input->GetInputAverageOnTimes(&time_averaged,init_time);
    45314531
    4532                                 element->AddInput(TimeAverageEffectivePressureEnum,&time_averaged[0],P1Enum);
     4532                                element->AddInput(EffectivePressureTimeAverageEnum,&time_averaged[0],P1Enum);
    45334533                                xDelete<IssmDouble>(time_averaged);
    45344534                        }
  • issm/trunk-jpl/src/c/cores/hydrology_core.cpp

    r22281 r22284  
    1515        int  hydrology_model;
    1616        int  solution_type;
     17        int  numoutputs=0;
    1718        bool save_results;
    1819        bool modify_loads=true;
    1920        bool isefficientlayer;
     21        char **requested_outputs = NULL;
    2022
    2123        /*first recover parameters common to all solutions*/
     
    2325        femmodel->parameters->FindParam(&hydrology_model,HydrologyModelEnum);
    2426        femmodel->parameters->FindParam(&solution_type,SolutionTypeEnum);       
     27        femmodel->parameters->FindParam(&numoutputs,HydrologyNumRequestedOutputsEnum);
     28        if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,HydrologyRequestedOutputsEnum);
    2529
    2630        /*Using the Shreve based Model*/
     
    4044                if(save_results){
    4145                        if(VerboseSolution()) _printf0_("   saving results \n");
    42                         int outputs[3] = {WatercolumnEnum,HydrologyWaterVxEnum,HydrologyWaterVyEnum};
    43                         femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],3);
     46                        femmodel->RequestedOutputsx(&femmodel->results,requested_outputs,numoutputs);
    4447                }
    4548        }
     
    4952                /*intermediary: */
    5053                int        step,hydroslices;
    51                 int        numoutputs=0;
    52                 char       **requested_outputs = NULL;
    5354                IssmDouble time,init_time,hydrotime,yts;
    5455                IssmDouble dt,hydrodt;
     
    5758                femmodel->parameters->FindParam(&step,StepEnum);
    5859                femmodel->parameters->FindParam(&time,TimeEnum);
    59                 femmodel->parameters->FindParam(&hydroslices,HydrologydcStepsPerStepEnum);
     60                femmodel->parameters->FindParam(&hydroslices,HydrologyStepsPerStepEnum);
    6061                femmodel->parameters->FindParam(&yts,ConstantsYtsEnum);
    6162                init_time = time-dt; //getting the time back to the start of the timestep
    6263                hydrotime=init_time;
    6364                hydrodt=dt/hydroslices; //computing hydro dt from dt and a divider
    64                 femmodel->parameters->AddObject(new DoubleParam(HydrologydcHydrodtEnum,hydrodt));
    65                 femmodel->parameters->FindParam(&numoutputs,HydrologyNumRequestedOutputsEnum);
    66                 if(numoutputs) femmodel->parameters->FindParam(&requested_outputs,&numoutputs,HydrologyRequestedOutputsEnum);
     65                femmodel->parameters->AddObject(new DoubleParam(HydrologydtEnum,hydrodt));
    6766
    6867                if(dt>0){
    6968                        if(hydroslices>1){
    70                                 int trans_input[1]={HydrologydcStackedNEnum};
     69                                int trans_input[1]={EffectivePressureStackedEnum};
    7170                                femmodel->InitTransientOutputx(&trans_input[0],1);
    7271                        }
     
    8786                        }
    8887                        if(hydroslices>1){
    89                                 int output[1]={HydrologydcStackedNEnum};
     88                                int output[1]={EffectivePressureStackedEnum};
    9089                                femmodel->AverageTransientOutputx(&output[0],init_time,1);
    9190                        }               
     
    105104                        femmodel->RequestedOutputsx(&femmodel->results,requested_outputs,numoutputs);
    106105                }
    107                 /*Free ressources:*/   
    108                 if(numoutputs){
    109                         for(int i=0;i<numoutputs;i++){
    110                                 xDelete<char>(requested_outputs[i]);
    111                         }
    112                         xDelete<char*>(requested_outputs);
    113                 }
    114106        }
    115107       
    116 
    117108        else if (hydrology_model==HydrologysommersEnum){       
    118109                femmodel->SetCurrentConfiguration(HydrologySommersAnalysisEnum);       
     
    126117                if(save_results){
    127118                        if(VerboseSolution()) _printf0_("   saving results \n");
    128                         int outputs[5] = {HydrologyHeadEnum,HydrologyGapHeightEnum,EffectivePressureEnum,HydrologyBasalFluxEnum,DegreeOfChannelizationEnum};
    129                         femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],5);
     119                        femmodel->RequestedOutputsx(&femmodel->results,requested_outputs,numoutputs);
    130120                }
    131121        }
     
    134124                _error_("Hydrology model "<< EnumToStringx(hydrology_model) <<" not supported yet");
    135125        }
     126        /*Free ressources:*/   
     127        if(numoutputs){
     128                for(int i=0;i<numoutputs;i++){
     129                        xDelete<char>(requested_outputs[i]);
     130                }
     131                xDelete<char*>(requested_outputs);
     132        }
    136133}
    137134
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r22277 r22284  
    133133        HydrologyNumRequestedOutputsEnum,
    134134        HydrologyRequestedOutputsEnum,
    135         HydrologydcHydrodtEnum,
    136         HydrologydcStepsPerStepEnum,
     135        HydrologydtEnum,
     136        HydrologyStepsPerStepEnum,
    137137        SedimentHeadEnum,
    138138        SedimentHeadOldEnum,
     139        SedimentHeadStackedEnum,
     140        SedimentHeadTimeAverageEnum,
    139141        SedimentHeadResidualEnum,
    140142        EffectivePressureEnum,
    141         TimeAverageEffectivePressureEnum,
     143        EffectivePressureStackedEnum,
     144        EffectivePressureTimeAverageEnum,
    142145        EplHeadEnum,
    143146        EplHeadOldEnum,
     147        EplHeadStackedEnum,
     148        EplHeadTimeAverageEnum,
    144149        EplHeadSlopeXEnum,
    145150        EplHeadSlopeYEnum,
    146151        EplZigZagCounterEnum,
    147152        MeanEffectivePressureEnum,
    148         HydrologydcStackedNEnum,
    149153        HydrologydcMaxIterEnum,
    150154        HydrologydcRelTolEnum,
     
    163167        HydrologydcEplThicknessEnum,
    164168        HydrologydcEplThicknessOldEnum,
     169        HydrologydcEplThicknessStackedEnum,
     170        HydrologydcEplThicknessTimeAverageEnum,
    165171        HydrologydcEplThickCompEnum,
    166172        HydrologydcEplConductivityEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r22277 r22284  
    139139                case HydrologyNumRequestedOutputsEnum : return "HydrologyNumRequestedOutputs";
    140140                case HydrologyRequestedOutputsEnum : return "HydrologyRequestedOutputs";
    141                 case HydrologydcHydrodtEnum : return "HydrologydcHydrodt";
    142                 case HydrologydcStepsPerStepEnum : return "HydrologydcStepsPerStep";
     141                case HydrologydtEnum : return "Hydrologydt";
     142                case HydrologyStepsPerStepEnum : return "HydrologyStepsPerStep";
    143143                case SedimentHeadEnum : return "SedimentHead";
    144144                case SedimentHeadOldEnum : return "SedimentHeadOld";
     145                case SedimentHeadStackedEnum : return "SedimentHeadStacked";
     146                case SedimentHeadTimeAverageEnum : return "SedimentHeadTimeAverage";
    145147                case SedimentHeadResidualEnum : return "SedimentHeadResidual";
    146148                case EffectivePressureEnum : return "EffectivePressure";
    147                 case TimeAverageEffectivePressureEnum : return "TimeAverageEffectivePressure";
     149                case EffectivePressureStackedEnum : return "EffectivePressureStacked";
     150                case EffectivePressureTimeAverageEnum : return "EffectivePressureTimeAverage";
    148151                case EplHeadEnum : return "EplHead";
    149152                case EplHeadOldEnum : return "EplHeadOld";
     153                case EplHeadStackedEnum : return "EplHeadStacked";
     154                case EplHeadTimeAverageEnum : return "EplHeadTimeAverage";
    150155                case EplHeadSlopeXEnum : return "EplHeadSlopeX";
    151156                case EplHeadSlopeYEnum : return "EplHeadSlopeY";
    152157                case EplZigZagCounterEnum : return "EplZigZagCounter";
    153158                case MeanEffectivePressureEnum : return "MeanEffectivePressure";
    154                 case HydrologydcStackedNEnum : return "HydrologydcStackedN";
    155159                case HydrologydcMaxIterEnum : return "HydrologydcMaxIter";
    156160                case HydrologydcRelTolEnum : return "HydrologydcRelTol";
     
    169173                case HydrologydcEplThicknessEnum : return "HydrologydcEplThickness";
    170174                case HydrologydcEplThicknessOldEnum : return "HydrologydcEplThicknessOld";
     175                case HydrologydcEplThicknessStackedEnum : return "HydrologydcEplThicknessStacked";
     176                case HydrologydcEplThicknessTimeAverageEnum : return "HydrologydcEplThicknessTimeAverage";
    171177                case HydrologydcEplThickCompEnum : return "HydrologydcEplThickComp";
    172178                case HydrologydcEplConductivityEnum : return "HydrologydcEplConductivity";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r22277 r22284  
    142142              if (strcmp(name,"HydrologyNumRequestedOutputs")==0) return HydrologyNumRequestedOutputsEnum;
    143143              else if (strcmp(name,"HydrologyRequestedOutputs")==0) return HydrologyRequestedOutputsEnum;
    144               else if (strcmp(name,"HydrologydcHydrodt")==0) return HydrologydcHydrodtEnum;
    145               else if (strcmp(name,"HydrologydcStepsPerStep")==0) return HydrologydcStepsPerStepEnum;
     144              else if (strcmp(name,"Hydrologydt")==0) return HydrologydtEnum;
     145              else if (strcmp(name,"HydrologyStepsPerStep")==0) return HydrologyStepsPerStepEnum;
    146146              else if (strcmp(name,"SedimentHead")==0) return SedimentHeadEnum;
    147147              else if (strcmp(name,"SedimentHeadOld")==0) return SedimentHeadOldEnum;
     148              else if (strcmp(name,"SedimentHeadStacked")==0) return SedimentHeadStackedEnum;
     149              else if (strcmp(name,"SedimentHeadTimeAverage")==0) return SedimentHeadTimeAverageEnum;
    148150              else if (strcmp(name,"SedimentHeadResidual")==0) return SedimentHeadResidualEnum;
    149151              else if (strcmp(name,"EffectivePressure")==0) return EffectivePressureEnum;
    150               else if (strcmp(name,"TimeAverageEffectivePressure")==0) return TimeAverageEffectivePressureEnum;
     152              else if (strcmp(name,"EffectivePressureStacked")==0) return EffectivePressureStackedEnum;
     153              else if (strcmp(name,"EffectivePressureTimeAverage")==0) return EffectivePressureTimeAverageEnum;
    151154              else if (strcmp(name,"EplHead")==0) return EplHeadEnum;
    152155              else if (strcmp(name,"EplHeadOld")==0) return EplHeadOldEnum;
     156              else if (strcmp(name,"EplHeadStacked")==0) return EplHeadStackedEnum;
     157              else if (strcmp(name,"EplHeadTimeAverage")==0) return EplHeadTimeAverageEnum;
    153158              else if (strcmp(name,"EplHeadSlopeX")==0) return EplHeadSlopeXEnum;
    154159              else if (strcmp(name,"EplHeadSlopeY")==0) return EplHeadSlopeYEnum;
    155160              else if (strcmp(name,"EplZigZagCounter")==0) return EplZigZagCounterEnum;
    156161              else if (strcmp(name,"MeanEffectivePressure")==0) return MeanEffectivePressureEnum;
    157               else if (strcmp(name,"HydrologydcStackedN")==0) return HydrologydcStackedNEnum;
    158162              else if (strcmp(name,"HydrologydcMaxIter")==0) return HydrologydcMaxIterEnum;
    159163              else if (strcmp(name,"HydrologydcRelTol")==0) return HydrologydcRelTolEnum;
     
    172176              else if (strcmp(name,"HydrologydcEplThickness")==0) return HydrologydcEplThicknessEnum;
    173177              else if (strcmp(name,"HydrologydcEplThicknessOld")==0) return HydrologydcEplThicknessOldEnum;
     178              else if (strcmp(name,"HydrologydcEplThicknessStacked")==0) return HydrologydcEplThicknessStackedEnum;
     179              else if (strcmp(name,"HydrologydcEplThicknessTimeAverage")==0) return HydrologydcEplThicknessTimeAverageEnum;
    174180              else if (strcmp(name,"HydrologydcEplThickComp")==0) return HydrologydcEplThickCompEnum;
    175181              else if (strcmp(name,"HydrologydcEplConductivity")==0) return HydrologydcEplConductivityEnum;
     
    254260              else if (strcmp(name,"DamageLaw")==0) return DamageLawEnum;
    255261              else if (strcmp(name,"DamageC1")==0) return DamageC1Enum;
    256               else if (strcmp(name,"DamageC2")==0) return DamageC2Enum;
     262         else stage=3;
     263   }
     264   if(stage==3){
     265              if (strcmp(name,"DamageC2")==0) return DamageC2Enum;
    257266              else if (strcmp(name,"DamageC3")==0) return DamageC3Enum;
    258267              else if (strcmp(name,"DamageC4")==0) return DamageC4Enum;
     
    260269              else if (strcmp(name,"DamageHealing")==0) return DamageHealingEnum;
    261270              else if (strcmp(name,"DamageStressThreshold")==0) return DamageStressThresholdEnum;
    262          else stage=3;
    263    }
    264    if(stage==3){
    265               if (strcmp(name,"DamageKappa")==0) return DamageKappaEnum;
     271              else if (strcmp(name,"DamageKappa")==0) return DamageKappaEnum;
    266272              else if (strcmp(name,"DamageStabilization")==0) return DamageStabilizationEnum;
    267273              else if (strcmp(name,"DamageMaxiter")==0) return DamageMaxiterEnum;
     
    377383              else if (strcmp(name,"GiaMantleViscosity")==0) return GiaMantleViscosityEnum;
    378384              else if (strcmp(name,"GiaLithosphereThickness")==0) return GiaLithosphereThicknessEnum;
    379               else if (strcmp(name,"Thickness")==0) return ThicknessEnum;
     385         else stage=4;
     386   }
     387   if(stage==4){
     388              if (strcmp(name,"Thickness")==0) return ThicknessEnum;
    380389              else if (strcmp(name,"TimesteppingStartTime")==0) return TimesteppingStartTimeEnum;
    381390              else if (strcmp(name,"TimesteppingFinalTime")==0) return TimesteppingFinalTimeEnum;
     
    383392              else if (strcmp(name,"TimesteppingTimeAdapt")==0) return TimesteppingTimeAdaptEnum;
    384393              else if (strcmp(name,"TimesteppingTimeStep")==0) return TimesteppingTimeStepEnum;
    385          else stage=4;
    386    }
    387    if(stage==4){
    388               if (strcmp(name,"TimesteppingInterpForcings")==0) return TimesteppingInterpForcingsEnum;
     394              else if (strcmp(name,"TimesteppingInterpForcings")==0) return TimesteppingInterpForcingsEnum;
    389395              else if (strcmp(name,"TransientIssmb")==0) return TransientIssmbEnum;
    390396              else if (strcmp(name,"TransientIscoupler")==0) return TransientIscouplerEnum;
     
    500506              else if (strcmp(name,"SmbHref")==0) return SmbHrefEnum;
    501507              else if (strcmp(name,"SmbSmbref")==0) return SmbSmbrefEnum;
    502               else if (strcmp(name,"SmbBPos")==0) return SmbBPosEnum;
     508         else stage=5;
     509   }
     510   if(stage==5){
     511              if (strcmp(name,"SmbBPos")==0) return SmbBPosEnum;
    503512              else if (strcmp(name,"SmbBNeg")==0) return SmbBNegEnum;
    504513              else if (strcmp(name,"SMBhenning")==0) return SMBhenningEnum;
     
    506515              else if (strcmp(name,"SmbAccumulation")==0) return SmbAccumulationEnum;
    507516              else if (strcmp(name,"SmbEvaporation")==0) return SmbEvaporationEnum;
    508          else stage=5;
    509    }
    510    if(stage==5){
    511               if (strcmp(name,"SmbRunoff")==0) return SmbRunoffEnum;
     517              else if (strcmp(name,"SmbRunoff")==0) return SmbRunoffEnum;
    512518              else if (strcmp(name,"SMBmeltcomponents")==0) return SMBmeltcomponentsEnum;
    513519              else if (strcmp(name,"SmbMelt")==0) return SmbMeltEnum;
     
    623629              else if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
    624630              else if (strcmp(name,"IntMatExternalResult")==0) return IntMatExternalResultEnum;
    625               else if (strcmp(name,"J")==0) return JEnum;
     631         else stage=6;
     632   }
     633   if(stage==6){
     634              if (strcmp(name,"J")==0) return JEnum;
    626635              else if (strcmp(name,"StringExternalResult")==0) return StringExternalResultEnum;
    627636              else if (strcmp(name,"Step")==0) return StepEnum;
     
    629638              else if (strcmp(name,"WaterColumnOld")==0) return WaterColumnOldEnum;
    630639              else if (strcmp(name,"SurfaceObservation")==0) return SurfaceObservationEnum;
    631          else stage=6;
    632    }
    633    if(stage==6){
    634               if (strcmp(name,"WeightsSurfaceObservation")==0) return WeightsSurfaceObservationEnum;
     640              else if (strcmp(name,"WeightsSurfaceObservation")==0) return WeightsSurfaceObservationEnum;
    635641              else if (strcmp(name,"Outputdefinition")==0) return OutputdefinitionEnum;
    636642              else if (strcmp(name,"Outputdefinition1")==0) return Outputdefinition1Enum;
     
    746752              else if (strcmp(name,"AugmentedLagrangianRlambda")==0) return AugmentedLagrangianRlambdaEnum;
    747753              else if (strcmp(name,"AugmentedLagrangianRholambda")==0) return AugmentedLagrangianRholambdaEnum;
    748               else if (strcmp(name,"AugmentedLagrangianTheta")==0) return AugmentedLagrangianThetaEnum;
     754         else stage=7;
     755   }
     756   if(stage==7){
     757              if (strcmp(name,"AugmentedLagrangianTheta")==0) return AugmentedLagrangianThetaEnum;
    749758              else if (strcmp(name,"None")==0) return NoneEnum;
    750759              else if (strcmp(name,"AggressiveMigration")==0) return AggressiveMigrationEnum;
     
    752761              else if (strcmp(name,"SubelementMigration")==0) return SubelementMigrationEnum;
    753762              else if (strcmp(name,"SubelementMigration2")==0) return SubelementMigration2Enum;
    754          else stage=7;
    755    }
    756    if(stage==7){
    757               if (strcmp(name,"SubelementMigration3")==0) return SubelementMigration3Enum;
     763              else if (strcmp(name,"SubelementMigration3")==0) return SubelementMigration3Enum;
    758764              else if (strcmp(name,"Contact")==0) return ContactEnum;
    759765              else if (strcmp(name,"GroundingOnly")==0) return GroundingOnlyEnum;
     
    869875              else if (strcmp(name,"EsaHElastic")==0) return EsaHElasticEnum;
    870876              else if (strcmp(name,"EsaTransitions")==0) return EsaTransitionsEnum;
    871               else if (strcmp(name,"EsaRequestedOutputs")==0) return EsaRequestedOutputsEnum;
     877         else stage=8;
     878   }
     879   if(stage==8){
     880              if (strcmp(name,"EsaRequestedOutputs")==0) return EsaRequestedOutputsEnum;
    872881              else if (strcmp(name,"EsaNumRequestedOutputs")==0) return EsaNumRequestedOutputsEnum;
    873882              else if (strcmp(name,"TransientAmrFrequency")==0) return TransientAmrFrequencyEnum;
     
    875884              else if (strcmp(name,"AmrRestart")==0) return AmrRestartEnum;
    876885              else if (strcmp(name,"AmrNeopz")==0) return AmrNeopzEnum;
    877          else stage=8;
    878    }
    879    if(stage==8){
    880               if (strcmp(name,"AmrLevelMax")==0) return AmrLevelMaxEnum;
     886              else if (strcmp(name,"AmrLevelMax")==0) return AmrLevelMaxEnum;
    881887              else if (strcmp(name,"AmrLag")==0) return AmrLagEnum;
    882888              else if (strcmp(name,"AmrBamg")==0) return AmrBamgEnum;
     
    992998              else if (strcmp(name,"HydrologyDCEfficientAnalysis")==0) return HydrologyDCEfficientAnalysisEnum;
    993999              else if (strcmp(name,"HydrologySommersAnalysis")==0) return HydrologySommersAnalysisEnum;
    994               else if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
     1000         else stage=9;
     1001   }
     1002   if(stage==9){
     1003              if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
    9951004              else if (strcmp(name,"MeltingAnalysis")==0) return MeltingAnalysisEnum;
    9961005              else if (strcmp(name,"MasstransportAnalysis")==0) return MasstransportAnalysisEnum;
     
    9981007              else if (strcmp(name,"FreeSurfaceBaseAnalysis")==0) return FreeSurfaceBaseAnalysisEnum;
    9991008              else if (strcmp(name,"FreeSurfaceTopAnalysis")==0) return FreeSurfaceTopAnalysisEnum;
    1000          else stage=9;
    1001    }
    1002    if(stage==9){
    1003               if (strcmp(name,"ExtrudeFromBaseAnalysis")==0) return ExtrudeFromBaseAnalysisEnum;
     1009              else if (strcmp(name,"ExtrudeFromBaseAnalysis")==0) return ExtrudeFromBaseAnalysisEnum;
    10041010              else if (strcmp(name,"ExtrudeFromTopAnalysis")==0) return ExtrudeFromTopAnalysisEnum;
    10051011              else if (strcmp(name,"DepthAverageAnalysis")==0) return DepthAverageAnalysisEnum;
  • issm/trunk-jpl/src/c/solutionsequences/solutionsequence_hydro_nonlinear.cpp

    r21476 r22284  
    9090                InputUpdateFromConstantx(femmodel,false,ConvergedEnum);
    9191                femmodel->UpdateConstraintsx();
    92                 femmodel->parameters->SetParam(HydrologySedimentEnum,HydrologyLayerEnum);
     92                //femmodel->parameters->SetParam(HydrologySedimentEnum,HydrologyLayerEnum);
    9393               
    9494                /*Reset constraint on the ZigZag Lock*/
     
    163163                        InputUpdateFromConstantx(femmodel,true,ResetPenaltiesEnum);
    164164                        InputUpdateFromConstantx(femmodel,false,ConvergedEnum);
    165                         femmodel->parameters->SetParam(HydrologyEfficientEnum,HydrologyLayerEnum);
     165                        //femmodel->parameters->SetParam(HydrologyEfficientEnum,HydrologyLayerEnum);
    166166
    167167                        for(;;){
Note: See TracChangeset for help on using the changeset viewer.