Changeset 22993


Ignore:
Timestamp:
07/20/18 20:44:55 (7 years ago)
Author:
seroussi
Message:

CHG: new grounding line class, with migration, melt_interpolation and friction_interpolation

Location:
issm/trunk-jpl
Files:
43 edited

Legend:

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

    r22965 r22993  
    503503
    504504        /*Intermediaries */
    505         int         migration_style,point1;
     505        int         melt_style,point1;
    506506        bool        mainlyfloating;
    507507        IssmDouble  fraction1,fraction2;
     
    521521        /*Retrieve all inputs and parameters*/
    522522        element->GetVerticesCoordinates(&xyz_list);
    523         element->FindParam(&migration_style,GroundinglineMigrationEnum);
     523        element->FindParam(&melt_style,GroundinglineMeltInterpolationEnum);
    524524        element->FindParam(&dt,TimesteppingTimeStepEnum);
    525525        Input* gmb_input           = element->GetInput(BasalforcingsGroundediceMeltingRateEnum);  _assert_(gmb_input);
     
    531531        /*Recover portion of element that is grounded*/
    532532        phi=element->GetGroundedPortion(xyz_list);
    533         if(migration_style==SubelementMigration2Enum){
     533        if(melt_style==SubelementMelt2Enum){
    534534                gllevelset_input=element->GetInput(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
    535535                element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
     
    553553                thickness_input->GetInputValue(&thickness,gauss);
    554554
    555                 if(migration_style==SubelementMigrationEnum){
     555                if(melt_style==SubelementMelt1Enum){
    556556                        if (phi>0.999999999) mb=gmb;
    557557                        else mb=(1-phi)*fmb+phi*gmb; // phi is the fraction of grounded ice so (1-phi) is floating
    558558                }
    559                 else if(migration_style==SubelementMigration2Enum){
     559                else if(melt_style==SubelementMelt2Enum){
    560560                        if(gllevelset>0.) mb=gmb;
    561561                        else mb=fmb;
    562562                }
    563                 else if(migration_style==SubelementMigration3Enum){
     563                else if(melt_style==NoMeltOnPartiallyFloatingEnum){
    564564                        if (phi<0.00000001) mb=fmb;
    565565                        else mb=gmb;
    566566                }
    567                 else{
    568                         if(gllevelset>0) mb=gmb;
     567                else if(melt_style==FullMeltOnPartiallyFloatingEnum){
     568                        if (phi<0.99999999) mb=fmb;
    569569                        else mb=fmb;
    570570                }
     571                else{ _error_("melt interpolation not supported yet"); }
    571572
    572573                for(int i=0;i<numnodes;i++) pe->values[i]+=Jdet*gauss->weight*(thickness+dt*(ms-mb))*basis[i];
  • issm/trunk-jpl/src/c/analyses/StressbalanceAnalysis.cpp

    r22874 r22993  
    12921292        int         dim,domaintype;
    12931293        bool        mainlyfloating;
    1294         int         migration_style,point1;
     1294        int         friction_style,point1;
    12951295        IssmDouble  alpha2,Jdet,fraction1,fraction2;
    12961296        IssmDouble  gllevelset,phi=1.;
     
    13171317        /*Retrieve all inputs and parameters*/
    13181318        element->GetVerticesCoordinates(&xyz_list);
    1319         element->FindParam(&migration_style,GroundinglineMigrationEnum);
     1319        element->FindParam(&friction_style,GroundinglineFrictionInterpolationEnum);
    13201320        Input* surface_input    = element->GetInput(SurfaceEnum); _assert_(surface_input);
    13211321        Input* gllevelset_input = NULL;
     
    13251325
    13261326        /*Recover portion of element that is grounded*/
    1327         if(migration_style==SubelementMigrationEnum) phi=element->GetGroundedPortion(xyz_list);
    1328         if(migration_style==SubelementMigration2Enum){
     1327        if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list);
     1328        if(friction_style==SubelementFriction2Enum){
    13291329                gllevelset_input=element->GetInput(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
    13301330                element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
     
    13401340
    13411341                friction->GetAlpha2(&alpha2,gauss);
    1342                 if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    1343                 if(migration_style==SubelementMigration2Enum){
     1342                if(friction_style==SubelementFriction1Enum) alpha2=phi*alpha2;
     1343                else if(friction_style==SubelementFriction2Enum){
    13441344                        gllevelset_input->GetInputValue(&gllevelset, gauss);
    13451345                        if(gllevelset<0.) alpha2=0.;
    13461346                }
     1347                else if(friction_style==NoFrictionOnPartiallyFloatingEnum){
     1348                        if (phi<0.99999999) alpha2=0.;
     1349                }
     1350                else  _error_("friction interpolation not implemented yet");
    13471351
    13481352                element->NodalFunctions(basis,gauss);
     
    23332337        int         dim;
    23342338        bool        mainlyfloating;
    2335         int         migration_style,point1;
     2339        int         friction_style,point1;
    23362340        IssmDouble  alpha2,Jdet,fraction1,fraction2;
    23372341        IssmDouble  gllevelset,phi=1.;
     
    23522356        /*Retrieve all inputs and parameters*/
    23532357        element->GetVerticesCoordinatesBase(&xyz_list_base);
    2354         element->FindParam(&migration_style,GroundinglineMigrationEnum);
     2358        element->FindParam(&friction_style,GroundinglineFrictionInterpolationEnum);
    23552359        Input* gllevelset_input = NULL;
    23562360
     
    23592363
    23602364        /*Recover portion of element that is grounded*/
    2361         if(migration_style==SubelementMigrationEnum) phi=element->GetGroundedPortion(xyz_list_base);
    2362         if(migration_style==SubelementMigration2Enum){
     2365        if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list_base);
     2366        if(friction_style==SubelementFriction2Enum){
    23632367                gllevelset_input=element->GetInput(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
    23642368                element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
     
    23742378
    23752379                friction->GetAlpha2(&alpha2,gauss);
    2376                 if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    2377                 if(migration_style==SubelementMigration2Enum){
     2380                if(friction_style==SubelementFriction1Enum) alpha2=phi*alpha2;
     2381                else if(friction_style==SubelementFriction2Enum){
    23782382                        gllevelset_input->GetInputValue(&gllevelset, gauss);
    23792383                        if(gllevelset<0.) alpha2=0.;
    23802384                }
     2385                else if(friction_style==NoFrictionOnPartiallyFloatingEnum){
     2386                        if (phi<0.99999999) alpha2=0.;
     2387                }
     2388                else  _error_("friction interpolation not implemented yet");
    23812389
    23822390                element->JacobianDeterminantBase(&Jdet,xyz_list_base,gauss);
     
    37043712        bool        mainlyfloating;
    37053713        int         dim,domaintype;
    3706         int         migration_style,point1;
     3714        int         friction_style,point1;
    37073715        IssmDouble  alpha2,Jdet,fraction1,fraction2;
    37083716        IssmDouble  gllevelset,phi=1.;
     
    37253733        /*Retrieve all inputs and parameters*/
    37263734        element->GetVerticesCoordinatesBase(&xyz_list_base);
    3727         element->FindParam(&migration_style,GroundinglineMigrationEnum);
     3735        element->FindParam(&friction_style,GroundinglineFrictionInterpolationEnum);
    37283736        Input* gllevelset_input = NULL;
    37293737
     
    37323740
    37333741        /*Recover portion of element that is grounded*/
    3734         if(migration_style==SubelementMigrationEnum) phi=element->GetGroundedPortion(xyz_list_base);
    3735         if(migration_style==SubelementMigration2Enum){
    3736                 if(domaintype==Domain2DverticalEnum) _error_("Subelement Migration 2 not implemented yet for Flowline");
     3742        if(!(friction_style==SubelementFriction2Enum)) phi=element->GetGroundedPortion(xyz_list_base);
     3743        if(friction_style==SubelementFriction2Enum){
     3744                if(domaintype==Domain2DverticalEnum) _error_("Subelement Friction 2 not implemented yet for Flowline");
    37373745                gllevelset_input=element->GetInput(MaskGroundediceLevelsetEnum); _assert_(gllevelset_input);
    37383746                element->GetGroundedPart(&point1,&fraction1,&fraction2,&mainlyfloating);
     
    37493757
    37503758                friction->GetAlpha2(&alpha2,gauss);
    3751                 if(migration_style==SubelementMigrationEnum) alpha2=phi*alpha2;
    3752                 if(migration_style==SubelementMigration2Enum){
     3759                if(friction_style==SubelementFriction1Enum) alpha2=phi*alpha2;
     3760                else if(friction_style==SubelementFriction2Enum){
    37533761                        gllevelset_input->GetInputValue(&gllevelset, gauss);
    37543762                        if(gllevelset<0.) alpha2=0.;
    37553763                }
     3764                else if(friction_style==NoFrictionOnPartiallyFloatingEnum){
     3765                        if (phi<0.99999999) alpha2=0.;
     3766                }
     3767                else  _error_("friction interpolation not implemented yet");
    37563768
    37573769                element->JacobianDeterminantBase(&Jdet,xyz_list_base,gauss);
  • issm/trunk-jpl/src/c/classes/Elements/Element.cpp

    r22984 r22993  
    20012001        parameters->FindParam(&migration_style,GroundinglineMigrationEnum);
    20022002
    2003         if(migration_style==SubelementMigrationEnum || migration_style==SubelementMigration2Enum){ //Floating if all nodes are floating
     2003        if(migration_style==SubelementMigrationEnum){ //Floating if all nodes are floating
    20042004                if(this->inputs->Max(MaskGroundediceLevelsetEnum) <= 0.) shelf=true;
    20052005                else shelf=false;
     
    23382338                        if (bed_hydro>r[i]){
    23392339                                /*Unground only if the element is connected to the ice shelf*/
    2340                                 if(migration_style==AggressiveMigrationEnum || migration_style==SubelementMigrationEnum || migration_style==SubelementMigration2Enum){
     2340                                if(migration_style==AggressiveMigrationEnum || migration_style==SubelementMigrationEnum){
    23412341                                        s[i]        = (1-density)*h[i]+sl[i];
    23422342                                        b[i]        = -density*h[i]+sl[i];
  • issm/trunk-jpl/src/c/classes/IoModel.cpp

    r21802 r22993  
    663663                                                this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
    664664                                        } else if(strcmp(record_name,"md.groundingline.migration")==0){
     665                                                this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
     666                                        } else if(strcmp(record_name,"md.groundingline.friction_interpolation")==0){
     667                                                this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
     668                                        } else if(strcmp(record_name,"md.groundingline.melt_interpolation")==0){
    665669                                                this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
    666670                                        } else if(strcmp(record_name,"md.masstransport.hydrostatic_adjustment")==0){
     
    807811                                                } else if(strcmp(record_name,"md.groundingline.migration")==0){
    808812                                                        this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
     813                                                } else if(strcmp(record_name,"md.groundingline.friction_interpolation")==0){
     814                                                        this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
     815                                                } else if(strcmp(record_name,"md.groundingline.melt_interpolation")==0){
     816                                                        this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
    809817                                                } else if(strcmp(record_name,"md.masstransport.hydrostatic_adjustment")==0){
    810818                                                        this->AddConstant(new IoConstant(StringToEnumx(string),record_name));
  • issm/trunk-jpl/src/c/cores/transient_core.cpp

    r22955 r22993  
    363363                if(VerboseSolution()) _printf0_("   computing requested outputs\n");
    364364                femmodel->RequestedOutputsx(&femmodel->results,requested_outputs,numoutputs,save_results);
    365                 if(isgroundingline && (groundingline_migration==SubelementMigrationEnum || groundingline_migration==SubelementMigration2Enum)){
     365                if(isgroundingline && (groundingline_migration==AggressiveMigrationEnum || groundingline_migration==ContactEnum)){
    366366                        int outputs[1] = {MaskGroundediceLevelsetEnum};
    367367                        femmodel->RequestedOutputsx(&femmodel->results,&outputs[0],1,save_results);
  • issm/trunk-jpl/src/c/modules/GroundinglineMigrationx/GroundinglineMigrationx.cpp

    r19094 r22993  
    3737                        phi_ungrounding=ContactFSLevelset(elements,vertices);
    3838                        break;
     39                case SubelementMigrationEnum:
    3940                case AggressiveMigrationEnum:
    40                 case SubelementMigrationEnum:
    41                 case SubelementMigration2Enum:
    4241                case GroundingOnlyEnum:
    4342                        /*Nothing additional to do here, MigrateGroundingLine takes care of everything*/
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp

    r22969 r22993  
    6969                parameters->AddObject(iomodel->CopyConstantObject("md.steadystate.maxiter",SteadystateMaxiterEnum));
    7070                parameters->AddObject(iomodel->CopyConstantObject("md.groundingline.migration",GroundinglineMigrationEnum));
     71                parameters->AddObject(iomodel->CopyConstantObject("md.groundingline.friction_interpolation",GroundinglineFrictionInterpolationEnum));
     72                parameters->AddObject(iomodel->CopyConstantObject("md.groundingline.melt_interpolation",GroundinglineMeltInterpolationEnum));
    7173                parameters->AddObject(iomodel->CopyConstantObject("md.transient.isstressbalance",TransientIsstressbalanceEnum));
    7274                parameters->AddObject(iomodel->CopyConstantObject("md.transient.ismasstransport",TransientIsmasstransportEnum));
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r22974 r22993  
    129129        GiaCrossSectionShapeEnum,
    130130        GroundinglineMigrationEnum,
     131        GroundinglineFrictionInterpolationEnum,
     132        GroundinglineMeltInterpolationEnum,
    131133        HydrologydcEplflipLockEnum,
    132134        HydrologydcEplThickCompEnum,
     
    762764        FSSolverEnum,
    763765        FSvelocityEnum,
     766        FullMeltOnPartiallyFloatingEnum,
    764767        GaussPentaEnum,
    765768        GaussSegEnum,
     
    908911        NodalvalueEnum,
    909912        NodeSIdEnum,
     913        NoFrictionOnPartiallyFloatingEnum,
     914        NoMeltOnPartiallyFloatingEnum,
    910915        NoneApproximationEnum,
    911916        NoneEnum,
     
    11021107        StringExternalResultEnum,
    11031108        StringParamEnum,
    1104         SubelementMigration2Enum,
    1105         SubelementMigration3Enum,
     1109        SubelementFriction1Enum,
     1110        SubelementFriction2Enum,
    11061111        SubelementMigrationEnum,
     1112        SubelementMelt1Enum,
     1113        SubelementMelt2Enum,
    11071114        SurfaceCrevasseEnum,
    11081115        SurfaceSlopeSolutionEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r22974 r22993  
    137137                case GiaCrossSectionShapeEnum : return "GiaCrossSectionShape";
    138138                case GroundinglineMigrationEnum : return "GroundinglineMigration";
     139                case GroundinglineFrictionInterpolationEnum : return "GroundinglineFrictionInterpolation";
     140                case GroundinglineMeltInterpolationEnum : return "GroundinglineMeltInterpolation";
    139141                case HydrologydcEplflipLockEnum : return "HydrologydcEplflipLock";
    140142                case HydrologydcEplThickCompEnum : return "HydrologydcEplThickComp";
     
    766768                case FSSolverEnum : return "FSSolver";
    767769                case FSvelocityEnum : return "FSvelocity";
     770                case FullMeltOnPartiallyFloatingEnum : return "FullMeltOnPartiallyFloating";
    768771                case GaussPentaEnum : return "GaussPenta";
    769772                case GaussSegEnum : return "GaussSeg";
     
    912915                case NodalvalueEnum : return "Nodalvalue";
    913916                case NodeSIdEnum : return "NodeSId";
     917                case NoFrictionOnPartiallyFloatingEnum : return "NoFrictionOnPartiallyFloating";
     918                case NoMeltOnPartiallyFloatingEnum : return "NoMeltOnPartiallyFloating";
    914919                case NoneApproximationEnum : return "NoneApproximation";
    915920                case NoneEnum : return "None";
     
    11061111                case StringExternalResultEnum : return "StringExternalResult";
    11071112                case StringParamEnum : return "StringParam";
    1108                 case SubelementMigration2Enum : return "SubelementMigration2";
    1109                 case SubelementMigration3Enum : return "SubelementMigration3";
     1113                case SubelementFriction1Enum : return "SubelementFriction1";
     1114                case SubelementFriction2Enum : return "SubelementFriction2";
    11101115                case SubelementMigrationEnum : return "SubelementMigration";
     1116                case SubelementMelt1Enum : return "SubelementMelt1";
     1117                case SubelementMelt2Enum : return "SubelementMelt2";
    11111118                case SurfaceCrevasseEnum : return "SurfaceCrevasse";
    11121119                case SurfaceSlopeSolutionEnum : return "SurfaceSlopeSolution";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r22974 r22993  
    140140   }
    141141   if(stage==2){
    142               if (strcmp(name,"HydrologydcEplflipLock")==0) return HydrologydcEplflipLockEnum;
     142              if (strcmp(name,"GroundinglineFrictionInterpolation")==0) return GroundinglineFrictionInterpolationEnum;
     143              else if (strcmp(name,"GroundinglineMeltInterpolation")==0) return GroundinglineMeltInterpolationEnum;
     144              else if (strcmp(name,"HydrologydcEplflipLock")==0) return HydrologydcEplflipLockEnum;
    143145              else if (strcmp(name,"HydrologydcEplThickComp")==0) return HydrologydcEplThickCompEnum;
    144146              else if (strcmp(name,"HydrologydcIsefficientlayer")==0) return HydrologydcIsefficientlayerEnum;
     
    258260              else if (strcmp(name,"SealevelRSLEustatic")==0) return SealevelRSLEustaticEnum;
    259261              else if (strcmp(name,"SealevelUNorthEsa")==0) return SealevelUNorthEsaEnum;
    260               else if (strcmp(name,"SealevelUEastEsa")==0) return SealevelUEastEsaEnum;
    261               else if (strcmp(name,"SealevelNGiaRate")==0) return SealevelNGiaRateEnum;
    262262         else stage=3;
    263263   }
    264264   if(stage==3){
    265               if (strcmp(name,"SealevelUGiaRate")==0) return SealevelUGiaRateEnum;
     265              if (strcmp(name,"SealevelUEastEsa")==0) return SealevelUEastEsaEnum;
     266              else if (strcmp(name,"SealevelNGiaRate")==0) return SealevelNGiaRateEnum;
     267              else if (strcmp(name,"SealevelUGiaRate")==0) return SealevelUGiaRateEnum;
    266268              else if (strcmp(name,"SealevelriseAbstol")==0) return SealevelriseAbstolEnum;
    267269              else if (strcmp(name,"SealevelriseAngularVelocity")==0) return SealevelriseAngularVelocityEnum;
     
    381383              else if (strcmp(name,"TransientIsgroundingline")==0) return TransientIsgroundinglineEnum;
    382384              else if (strcmp(name,"TransientIshydrology")==0) return TransientIshydrologyEnum;
    383               else if (strcmp(name,"TransientIsmasstransport")==0) return TransientIsmasstransportEnum;
    384               else if (strcmp(name,"TransientIsmovingfront")==0) return TransientIsmovingfrontEnum;
    385385         else stage=4;
    386386   }
    387387   if(stage==4){
    388               if (strcmp(name,"TransientIsoceancoupling")==0) return TransientIsoceancouplingEnum;
     388              if (strcmp(name,"TransientIsmasstransport")==0) return TransientIsmasstransportEnum;
     389              else if (strcmp(name,"TransientIsmovingfront")==0) return TransientIsmovingfrontEnum;
     390              else if (strcmp(name,"TransientIsoceancoupling")==0) return TransientIsoceancouplingEnum;
    389391              else if (strcmp(name,"TransientIsslr")==0) return TransientIsslrEnum;
    390392              else if (strcmp(name,"TransientIssmb")==0) return TransientIssmbEnum;
     
    504506              else if (strcmp(name,"InversionVelObs")==0) return InversionVelObsEnum;
    505507              else if (strcmp(name,"InversionVxObs")==0) return InversionVxObsEnum;
    506               else if (strcmp(name,"InversionVyObs")==0) return InversionVyObsEnum;
    507               else if (strcmp(name,"LevelsetfunctionSlopeX")==0) return LevelsetfunctionSlopeXEnum;
    508508         else stage=5;
    509509   }
    510510   if(stage==5){
    511               if (strcmp(name,"LevelsetfunctionSlopeY")==0) return LevelsetfunctionSlopeYEnum;
     511              if (strcmp(name,"InversionVyObs")==0) return InversionVyObsEnum;
     512              else if (strcmp(name,"LevelsetfunctionSlopeX")==0) return LevelsetfunctionSlopeXEnum;
     513              else if (strcmp(name,"LevelsetfunctionSlopeY")==0) return LevelsetfunctionSlopeYEnum;
    512514              else if (strcmp(name,"LoadingforceX")==0) return LoadingforceXEnum;
    513515              else if (strcmp(name,"LoadingforceY")==0) return LoadingforceYEnum;
     
    627629              else if (strcmp(name,"SurfaceAbsVelMisfit")==0) return SurfaceAbsVelMisfitEnum;
    628630              else if (strcmp(name,"SurfaceArea")==0) return SurfaceAreaEnum;
    629               else if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum;
    630               else if (strcmp(name,"Surface")==0) return SurfaceEnum;
    631631         else stage=6;
    632632   }
    633633   if(stage==6){
    634               if (strcmp(name,"SurfaceLogVelMisfit")==0) return SurfaceLogVelMisfitEnum;
     634              if (strcmp(name,"SurfaceAverageVelMisfit")==0) return SurfaceAverageVelMisfitEnum;
     635              else if (strcmp(name,"Surface")==0) return SurfaceEnum;
     636              else if (strcmp(name,"SurfaceLogVelMisfit")==0) return SurfaceLogVelMisfitEnum;
    635637              else if (strcmp(name,"SurfaceLogVxVyMisfit")==0) return SurfaceLogVxVyMisfitEnum;
    636638              else if (strcmp(name,"SurfaceObservation")==0) return SurfaceObservationEnum;
     
    750752              else if (strcmp(name,"ElementSId")==0) return ElementSIdEnum;
    751753              else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum;
    752               else if (strcmp(name,"EplHeadStacked")==0) return EplHeadStackedEnum;
    753               else if (strcmp(name,"EplHead")==0) return EplHeadEnum;
    754754         else stage=7;
    755755   }
    756756   if(stage==7){
    757               if (strcmp(name,"EsaAnalysis")==0) return EsaAnalysisEnum;
     757              if (strcmp(name,"EplHeadStacked")==0) return EplHeadStackedEnum;
     758              else if (strcmp(name,"EplHead")==0) return EplHeadEnum;
     759              else if (strcmp(name,"EsaAnalysis")==0) return EsaAnalysisEnum;
    758760              else if (strcmp(name,"EsaEmotion")==0) return EsaEmotionEnum;
    759761              else if (strcmp(name,"EsaNmotion")==0) return EsaNmotionEnum;
     
    784786              else if (strcmp(name,"FSSolver")==0) return FSSolverEnum;
    785787              else if (strcmp(name,"FSvelocity")==0) return FSvelocityEnum;
     788              else if (strcmp(name,"FullMeltOnPartiallyFloating")==0) return FullMeltOnPartiallyFloatingEnum;
    786789              else if (strcmp(name,"GaussPenta")==0) return GaussPentaEnum;
    787790              else if (strcmp(name,"GaussSeg")==0) return GaussSegEnum;
     
    872875              else if (strcmp(name,"Massconaxpby")==0) return MassconaxpbyEnum;
    873876              else if (strcmp(name,"Masscon")==0) return MassconEnum;
    874               else if (strcmp(name,"Massfluxatgate")==0) return MassfluxatgateEnum;
    875               else if (strcmp(name,"MassFlux")==0) return MassFluxEnum;
    876               else if (strcmp(name,"MasstransportAnalysis")==0) return MasstransportAnalysisEnum;
    877877         else stage=8;
    878878   }
    879879   if(stage==8){
    880               if (strcmp(name,"MasstransportSolution")==0) return MasstransportSolutionEnum;
     880              if (strcmp(name,"Massfluxatgate")==0) return MassfluxatgateEnum;
     881              else if (strcmp(name,"MassFlux")==0) return MassFluxEnum;
     882              else if (strcmp(name,"MasstransportAnalysis")==0) return MasstransportAnalysisEnum;
     883              else if (strcmp(name,"MasstransportSolution")==0) return MasstransportSolutionEnum;
    881884              else if (strcmp(name,"Matdamageice")==0) return MatdamageiceEnum;
    882885              else if (strcmp(name,"Matenhancedice")==0) return MatenhancediceEnum;
     
    933936              else if (strcmp(name,"Nodalvalue")==0) return NodalvalueEnum;
    934937              else if (strcmp(name,"NodeSId")==0) return NodeSIdEnum;
     938              else if (strcmp(name,"NoFrictionOnPartiallyFloating")==0) return NoFrictionOnPartiallyFloatingEnum;
     939              else if (strcmp(name,"NoMeltOnPartiallyFloating")==0) return NoMeltOnPartiallyFloatingEnum;
    935940              else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
    936941              else if (strcmp(name,"None")==0) return NoneEnum;
     
    993998              else if (strcmp(name,"Outputdefinition56")==0) return Outputdefinition56Enum;
    994999              else if (strcmp(name,"Outputdefinition57")==0) return Outputdefinition57Enum;
    995               else if (strcmp(name,"Outputdefinition58")==0) return Outputdefinition58Enum;
     1000         else stage=9;
     1001   }
     1002   if(stage==9){
     1003              if (strcmp(name,"Outputdefinition58")==0) return Outputdefinition58Enum;
    9961004              else if (strcmp(name,"Outputdefinition59")==0) return Outputdefinition59Enum;
    9971005              else if (strcmp(name,"Outputdefinition5")==0) return Outputdefinition5Enum;
    9981006              else if (strcmp(name,"Outputdefinition60")==0) return Outputdefinition60Enum;
    9991007              else if (strcmp(name,"Outputdefinition61")==0) return Outputdefinition61Enum;
    1000          else stage=9;
    1001    }
    1002    if(stage==9){
    1003               if (strcmp(name,"Outputdefinition62")==0) return Outputdefinition62Enum;
     1008              else if (strcmp(name,"Outputdefinition62")==0) return Outputdefinition62Enum;
    10041009              else if (strcmp(name,"Outputdefinition63")==0) return Outputdefinition63Enum;
    10051010              else if (strcmp(name,"Outputdefinition64")==0) return Outputdefinition64Enum;
     
    11161121              else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
    11171122              else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
    1118               else if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum;
     1123         else stage=10;
     1124   }
     1125   if(stage==10){
     1126              if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum;
    11191127              else if (strcmp(name,"SSAFSApproximation")==0) return SSAFSApproximationEnum;
    11201128              else if (strcmp(name,"SSAHOApproximation")==0) return SSAHOApproximationEnum;
    11211129              else if (strcmp(name,"Sset")==0) return SsetEnum;
    11221130              else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
    1123          else stage=10;
    1124    }
    1125    if(stage==10){
    1126               if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
     1131              else if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
    11271132              else if (strcmp(name,"StressbalanceConvergenceNumSteps")==0) return StressbalanceConvergenceNumStepsEnum;
    11281133              else if (strcmp(name,"StressbalanceSIAAnalysis")==0) return StressbalanceSIAAnalysisEnum;
     
    11331138              else if (strcmp(name,"StringExternalResult")==0) return StringExternalResultEnum;
    11341139              else if (strcmp(name,"StringParam")==0) return StringParamEnum;
    1135               else if (strcmp(name,"SubelementMigration2")==0) return SubelementMigration2Enum;
    1136               else if (strcmp(name,"SubelementMigration3")==0) return SubelementMigration3Enum;
     1140              else if (strcmp(name,"SubelementFriction1")==0) return SubelementFriction1Enum;
     1141              else if (strcmp(name,"SubelementFriction2")==0) return SubelementFriction2Enum;
    11371142              else if (strcmp(name,"SubelementMigration")==0) return SubelementMigrationEnum;
     1143              else if (strcmp(name,"SubelementMelt1")==0) return SubelementMelt1Enum;
     1144              else if (strcmp(name,"SubelementMelt2")==0) return SubelementMelt2Enum;
    11381145              else if (strcmp(name,"SurfaceCrevasse")==0) return SurfaceCrevasseEnum;
    11391146              else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum;
  • issm/trunk-jpl/src/m/classes/groundingline.js

    r20927 r22993  
    88        this.setdefaultparameters = function(){// {{{
    99                //Type of migration
    10                 this.migration='None';
     10                this.migration='AggressiveMigration';
     11                this.friction_interpolation='SubelementFriction1';
     12                this.melt_interpolation='NoMeltOnPartiallyFloating';
    1113
    1214        }// }}}
    1315        this.disp= function(){// {{{
    1416                console.log(sprintf('   grounding line migration parameters:'));
    15                 fielddisplay(this,'migration',"type of grounding line migration: 'SoftMigration','AggressiveMigration','SubelementMigration','SubelementMigration2' or 'None'");
    16 
     17                fielddisplay(this,'migration',"type of grounding line migration: 'SubelementMigration','SoftMigration','AggressiveMigration','Contact' or 'None'");
     18                fielddisplay(this,'friction_interpolation',"type of friction interpolation forpartially floating elements: 'NoFrictionOnPartiallyFloating','SubelementFriction1' or 'SubelementFriction2'");
     19                fielddisplay(this,'melt_interpolation',"type of melt interpolation forpartially floating elements: 'NoMeltOnPartiallyFloating','FullMeltOnPartiallyFloating','SubelementMelt1' or 'SubelementMelt2'");
    1720
    1821        }// }}}
     
    2225                this.checkconsistency = function(md,solution,analyses) {// {{{
    2326
    24                         checkfield(md,'fieldname','groundingline.migration','values',['None', 'AggressiveMigration', 'SoftMigration', 'SubelementMigration', 'SubelementMigration2', 'Contact', 'None', 'GroundingOnly']);
     27                        checkfield(md,'fieldname','groundingline.migration','values',['None', 'AggressiveMigration', 'SoftMigration', 'Contact', 'GroundingOnly']);
     28                        checkfield(md,'fieldname','groundingline.friction_interpolation','values',['NoFrictionOnPartiallyFloating', 'SubelementFriction1', 'SubelementFriction2']);
     29                        checkfield(md,'fieldname','groundingline.melt_interpolation','values',['NoMeltOnPartiallyFloating', 'SubelementMelt1', 'SubelementMelt2', 'FullMeltOnPartiallyFloating']);
    2530
    2631                        if (this.migration !='None'){
     
    4247                this.marshall=function(md,prefix,fid) { //{{{
    4348                        WriteData(fid,prefix,'data',this.migration,'name','md.groundingline.migration','format','String');
     49                        WriteData(fid,prefix,'data',this.migration,'name','md.groundingline.friction_interpolation','format','String');
     50                        WriteData(fid,prefix,'data',this.migration,'name','md.groundingline.melt_interpolation','format','String');
    4451                }//}}}
    4552                this.fix=function() { //{{{
     
    4754        //properties
    4855        // {{{
    49         this.migration    = '';
     56        this.migration              = '';
     57        this.friction_interpolation = '';
     58        this.melt_interpolation     = '';
    5059        this.setdefaultparameters();
    5160        //}}}
  • issm/trunk-jpl/src/m/classes/groundingline.m

    r20927 r22993  
    66classdef groundingline
    77        properties (SetAccess=public)
    8                 migration    = '';
     8                migration              = '';
     9                friction_interpolation = '';
     10                melt_interpolation     = '';
    911        end
    1012        methods
     
    2022
    2123                        %Type of migration
    22                         self.migration='None';
     24                        self.migration             = 'SubelementMigration';
     25                        self.friction_interpolation= 'SubelementFriction1';
     26                        self.melt_interpolation    = 'NoMeltOnPartiallyFloating';
    2327
    2428                end % }}}
    2529                function md = checkconsistency(self,md,solution,analyses) % {{{
    2630
    27                         md = checkfield(md,'fieldname','groundingline.migration','values',{'None' 'AggressiveMigration' 'SoftMigration' 'SubelementMigration' 'SubelementMigration2' 'Contact' 'None' 'GroundingOnly'});
     31                        md = checkfield(md,'fieldname','groundingline.migration','values',{'None' 'SubelementMigration' 'AggressiveMigration' 'SoftMigration' 'Contact' 'GroundingOnly'});
     32                        md = checkfield(md,'fieldname','groundingline.friction_interpolation','values',{'NoFrictionOnPartiallyFloating' 'SubelementFriction1' 'SubelementFriction2'});
     33                        md = checkfield(md,'fieldname','groundingline.melt_interpolation','values',{'NoMeltOnPartiallyFloating' 'SubelementMelt1' 'SubelementMelt2' 'FullMeltOnPartiallyFloating'});
    2834
    2935                        if ~strcmp(self.migration,'None'),
     
    4450                function disp(self) % {{{
    4551                        disp(sprintf('   grounding line migration parameters:'));
    46                         fielddisplay(self,'migration','type of grounding line migration: ''SoftMigration'',''AggressiveMigration'',''SubelementMigration'',''SubelementMigration2'' or ''None''');
     52                        fielddisplay(self,'migration','type of grounding line migration: ''SoftMigration'',''SubelementMigration'',''AggressiveMigration'',''Contact'' or ''None''');
     53                        fielddisplay(self,'friction_interpolation','type of friction interpolation for partially floating elements: ''NoFrictionOnPartiallyFloating'',''SubelementFriction1'', or ''SubelementFriction2''');
     54                        fielddisplay(self,'melt_interpolation','type of melt interpolation for partially floating elements: ''NoMeltOnPartiallyFloating'',''SubelementMelt1'',''SubelementMelt2'', or ''FullMeltOnPartiallyFloating''');
    4755
    4856                end % }}}
    4957                function marshall(self,prefix,md,fid) % {{{
    5058                        WriteData(fid,prefix,'data',self.migration,'name','md.groundingline.migration','format','String');
     59                        WriteData(fid,prefix,'data',self.friction_interpolation,'name','md.groundingline.friction_interpolation','format','String');
     60                        WriteData(fid,prefix,'data',self.melt_interpolation,'name','md.groundingline.melt_interpolation','format','String');
    5161                end % }}}
    5262                function savemodeljs(self,fid,modelname) % {{{
    5363               
    5464                        writejsstring(fid,[modelname '.groundingline.migration'],self.migration);
     65                        writejsstring(fid,[modelname '.groundingline.friction_interpolation'],self.migration);
     66                        writejsstring(fid,[modelname '.groundingline.melt_interpolation'],self.migration);
    5567
    5668                end % }}}
  • issm/trunk-jpl/src/m/classes/groundingline.py

    r21303 r22993  
    1515        def __init__(self): # {{{
    1616                self.migration=''
     17                self.friction_interpolation=''
     18                self.melt_interpolation=''
    1719
    1820                #set defaults
     
    2325                string='   grounding line migration parameters:'
    2426
    25                 string="%s\n%s"%(string,fielddisplay(self,'migration','type of grounding line migration: ''SoftMigration'',''AggressiveMigration'',''SubelementMigration'',''SubelementMigration2'',''Contact'',''None'''))
     27                string="%s\n%s"%(string,fielddisplay(self,'migration','type of grounding line migration: ''SoftMigration'',''SubelementMigration'',''AggressiveMigration'',''Contact'',''None'''))
     28                string="%s\n%s"%(string,fielddisplay(self,'migration','type of friction interpolation on partially floating elements: ''SubelementFriction1'',''SubelementFriction2'',''NoFrictionOnPartiallyFloating'''))
     29                string="%s\n%s"%(string,fielddisplay(self,'migration','type of melt interpolation on partially floating elements: ''SubelementMelt1'',''SubelementMelt2'',''NoMeltOnPartiallyFloating'',''FullMeltOnPartiallyFloating'''))
    2630                return string
    2731                #}}}   
     
    2933
    3034                #Type of migration
    31                 self.migration='None'
     35                self.migration='SubelementMigration'
     36                self.friction_interpolation='SubelementFriction1'
     37                self.melt_interpolation='NoMeltOnPartiallyFloating'
    3238
    3339                return self
     
    3541        def checkconsistency(self,md,solution,analyses):    # {{{
    3642
    37                 md = checkfield(md,'fieldname','groundingline.migration','values',['None','AggressiveMigration','SoftMigration','SubelementMigration','SubelementMigration2','Contact','GroundingOnly'])
     43                md = checkfield(md,'fieldname','groundingline.migration','values',['None','SubelementMigration','AggressiveMigration','SoftMigration','Contact','GroundingOnly'])
     44                md = checkfield(md,'fieldname','groundingline.friction_interpolation','values',['SubelementFriction1','SubelementFriction2','NoFrictionOnPartiallyFloating'])
     45                md = checkfield(md,'fieldname','groundingline.melt_interpolation','values',['SubelementMelt1','SubelementMelt2','NoMeltOnPartiallyFloating','FullMeltOnPartiallyFloating'])
    3846
    3947                if not m.strcmp(self.migration,'None'):
     
    5058        def marshall(self,prefix,md,fid):    # {{{
    5159                WriteData(fid,prefix,'data',self.migration,'name','md.groundingline.migration','format','String')
     60                WriteData(fid,prefix,'data',self.migration,'name','md.groundingline.friction_interpolation','format','String')
     61                WriteData(fid,prefix,'data',self.migration,'name','md.groundingline.melt_interpolation','format','String')
    5262        # }}}
  • issm/trunk-jpl/test/NightlyRun/test105.m

    r21056 r22993  
    55md=setflowequation(md,'SSA','all');
    66md.cluster=generic('name',oshostname(),'np',3);
     7md.cluster=generic('name',oshostname(),'np',1);
    78md=solve(md,'Masstransport');
    89
  • issm/trunk-jpl/test/NightlyRun/test423.m

    r21056 r22993  
    3838md.mask.groundedice_levelset=md.geometry.thickness + md.materials.rho_water/md.materials.rho_ice*md.geometry.bed;
    3939md.groundingline.migration='SubelementMigration';
     40md.groundingline.friction_interpolation='SubelementFriction1';
    4041md=solve(md,'Transient');
    4142element_on_iceshelf_subelement=(md.results.TransientSolution.MaskGroundediceLevelset);
    4243vel_subelement=(md.results.TransientSolution.Vel);
    4344
    44 md.groundingline.migration='SubelementMigration2';
     45md.groundingline.friction_interpolation='SubelementFriction2';
    4546md=solve(md,'Transient');
    4647element_on_iceshelf_subelement2=(md.results.TransientSolution.MaskGroundediceLevelset);
  • issm/trunk-jpl/test/NightlyRun/test423.py

    r21408 r22993  
    4949md.mask.groundedice_levelset=md.geometry.thickness + md.materials.rho_water/md.materials.rho_ice*md.geometry.bed
    5050md.groundingline.migration='SubelementMigration'
     51md.groundingline.friction_interpolation='SubelementFriction1'
    5152md=solve(md,'Transient')
    5253element_on_iceshelf_subelement=md.results.TransientSolution[0].MaskGroundediceLevelset
    5354vel_subelement=md.results.TransientSolution[0].Vel
    5455
    55 md.groundingline.migration='SubelementMigration2'
     56md.groundingline.friction_interpolation='SubelementFriction2'
    5657md=solve(md,'Transient')
    5758element_on_iceshelf_subelement2=md.results.TransientSolution[0].MaskGroundediceLevelset
  • issm/trunk-jpl/test/NightlyRun/test433.m

    r21056 r22993  
    3939element_on_iceshelf_subelement=(md.results.TransientSolution.MaskGroundediceLevelset);
    4040
    41 md.groundingline.migration='SubelementMigration2';
     41md.groundingline.migration='SubelementMigration';
     42md.groundingline.friction_interpolation='SubelementFriction2';
    4243md.transient.isstressbalance=1;
    4344md=setflowequation(md,'SSA','all');
  • issm/trunk-jpl/test/NightlyRun/test433.py

    r21408 r22993  
    5050element_on_iceshelf_subelement=md.results.TransientSolution[0].MaskGroundediceLevelset
    5151
     52md.groundingline.migration='SubelementMigration'
     53md.groundingline.friction_interpolation='SubelementMigration2'
     54md=solve(md,'Transient')
     55element_on_iceshelf_subelement2=md.results.TransientSolution[0].MaskGroundediceLevelset
     56
    5257#Fields and tolerances to track changes
    5358field_names     =['ElementOnIceShelfAggressive','ElementOnIceShelfSoft','ElementOnIceShelfSubelement']
  • issm/trunk-jpl/test/NightlyRun/test441.m

    r21790 r22993  
    3939md.transient.issmb=1;
    4040md.transient.requested_outputs={'default','BasalforcingsFloatingiceMeltingRate'};
    41 md.groundingline.migration='SubelementMigration2';
     41md.groundingline.migration='SubelementMigration';
     42md.groundingline.friction_interpolation='SubelementFriction2';
    4243md.timestepping.final_time=30;
    4344md.timestepping.time_step=10;
  • issm/trunk-jpl/test/NightlyRun/test441.py

    r22267 r22993  
    5050md.transient.issmb = 1
    5151md.transient.requested_outputs = ['default','BasalforcingsFloatingiceMeltingRate']
    52 md.groundingline.migration = 'SubelementMigration2'
     52md.groundingline.migration = 'SubelementMigration'
     53md.groundingline.migration = 'SubelementFriction2'
    5354md.timestepping.final_time = 30.
    5455md.timestepping.time_step = 10.
  • issm/trunk-jpl/test/NightlyRun/test442.m

    r21904 r22993  
    4040md.transient.issmb=1;
    4141md.transient.requested_outputs={'default','BasalforcingsFloatingiceMeltingRate'};
    42 md.groundingline.migration='SubelementMigration2';
     42md.groundingline.migration='SubelementMigration';
     43md.groundingline.friction_interpolation='SubelementFriction2';
    4344md.timestepping.final_time=30;
    4445md.timestepping.time_step=10;
  • issm/trunk-jpl/test/NightlyRun/test442.py

    r22348 r22993  
    5151md.transient.issmb = 1
    5252md.transient.requested_outputs = ['default','BasalforcingsFloatingiceMeltingRate']
    53 md.groundingline.migration = 'SubelementMigration2'
     53md.groundingline.migration = 'SubelementMigration'
     54md.groundingline.friction_interpolation= 'SubelementFriction2'
    5455md.timestepping.final_time = 30
    5556md.timestepping.time_step = 10
  • issm/trunk-jpl/test/NightlyRun/test701.m

    r21423 r22993  
    4646md.verbose=verbose('convergence',true);
    4747md.cluster=generic('np',2);
     48md.groundingline.migration='None';
    4849
    4950%Go solve
  • issm/trunk-jpl/test/NightlyRun/test701.py

    r22869 r22993  
    5353md.verbose = verbose('convergence',True)
    5454md.cluster = generic('np',2)
     55md.groundingline.migration='None'
    5556
    5657#Go solve
  • issm/trunk-jpl/test/NightlyRun/test702.m

    r21400 r22993  
    4444md.initialization.pressure=md.constants.g*md.materials.rho_ice*(md.geometry.surface-md.mesh.y);
    4545md.miscellaneous.name = 'test702';
     46md.groundingline.migration='None';
    4647md.cluster=generic('np',2);
    4748
  • issm/trunk-jpl/test/NightlyRun/test703.m

    r21076 r22993  
    5757md.transient.isthermal=0;
    5858md.masstransport.isfreesurface=1;
     59md.groundingline.migration='None';
    5960
    6061%Go solve
  • issm/trunk-jpl/test/NightlyRun/test703.py

    r22870 r22993  
    8787md.transient.isthermal = 0
    8888md.masstransport.isfreesurface = 1
     89md.groundline.migration='None'
    8990
    9091#Go solve
  • issm/trunk-jpl/test/Par/79North.par

    r22567 r22993  
    5151md.steadystate.reltol=0.005;
    5252md.stressbalance.abstol=NaN;
     53md.groundingline.migration='None';
    5354
    5455%Boundary conditions:
  • issm/trunk-jpl/test/Par/79North.py

    r22866 r22993  
    5454md.steadystate.reltol=0.005
    5555md.stressbalance.abstol=float('NaN')
     56md.groundingline.migration='None'
    5657
    5758#Boundary conditions:
  • issm/trunk-jpl/test/Par/IceCube.par

    r22575 r22993  
    3737md.timestepping.time_step=1.;
    3838md.timestepping.final_time=3.;
     39md.groundingline.migration='None';
    3940
    4041%Boundary conditions:
  • issm/trunk-jpl/test/Par/IceCube.py

    r22575 r22993  
    4646md.timestepping.time_step=1.
    4747md.timestepping.final_time=3.
     48md.groundingline.migration='None'
    4849
    4950#Boundary conditions:
  • issm/trunk-jpl/test/Par/Pig.par

    r22567 r22993  
    5151md.steadystate.reltol=1;
    5252md.stressbalance.abstol=NaN;
     53md.groundingline.migration='None';
    5354
    5455%Boundary conditions:
  • issm/trunk-jpl/test/Par/Pig.py

    r22866 r22993  
    5151md.steadystate.reltol=1.
    5252md.stressbalance.abstol=float('nan')
     53md.groundingline.migration='None'
    5354
    5455#Boundary conditions:
  • issm/trunk-jpl/test/Par/SquareSheetConstrained.par

    r22575 r22993  
    5757md.timestepping.time_step=1.;
    5858md.timestepping.final_time=3.;
     59md.groundingline.migration='None';
    5960
    6061%GIA:
  • issm/trunk-jpl/test/Par/SquareSheetConstrained.py

    r22575 r22993  
    5959md.timestepping.time_step=1.
    6060md.timestepping.final_time=3.
     61md.groundingline.migration='None'
    6162
    6263#GIA:
  • issm/trunk-jpl/test/Par/SquareSheetShelf.par

    r22575 r22993  
    5959md.timestepping.time_step=1.;
    6060md.timestepping.final_time=3.;
     61md.groundingline.migration='None';
    6162
    6263%Deal with boundary conditions:
  • issm/trunk-jpl/test/Par/SquareSheetShelf.py

    r22575 r22993  
    6363md.timestepping.time_step=1.
    6464md.timestepping.final_time=3.
     65md.groundingline.migration='None'
    6566
    6667#Deal with boundary conditions:
  • issm/trunk-jpl/test/Par/SquareShelf.par

    r22567 r22993  
    5151md.timestepping.time_step=1;
    5252md.timestepping.final_time=3;
     53md.groundingline.migration='None';
    5354
    5455%Boundary conditions:
  • issm/trunk-jpl/test/Par/SquareShelf.py

    r22567 r22993  
    7272md.timestepping.time_step = 1.
    7373md.timestepping.final_time = 3.
     74md.groundingline.migration = 'None'
    7475
    7576#Boundary conditions:
  • issm/trunk-jpl/test/Par/SquareShelf2.par

    r22567 r22993  
    5151md.timestepping.time_step=1;
    5252md.timestepping.final_time=3;
     53md.groundingline.migration='None';
    5354
    5455%Boundary conditions:
  • issm/trunk-jpl/test/Par/SquareShelf2.py

    r22567 r22993  
    7171md.timestepping.time_step = 1.
    7272md.timestepping.final_time = 3.
     73md.groundingline.migration= 'None'
    7374
    7475#Boundary conditions:
  • issm/trunk-jpl/test/Par/SquareThermal.par

    r19527 r22993  
    22
    33md.timestepping.time_step=0;
     4md.groundingline.migration='None';
    45
    56disp('      creating thickness');
  • issm/trunk-jpl/test/Par/SquareThermal.py

    r22267 r22993  
    66
    77md.timestepping.time_step=0
     8md.groundingline.migration='None'
    89
    910print "      creating thickness"
Note: See TracChangeset for help on using the changeset viewer.