Changeset 9612


Ignore:
Timestamp:
09/06/11 12:22:11 (14 years ago)
Author:
seroussi
Message:

moved fields into basalforcings

Location:
issm/trunk/src
Files:
4 added
3 deleted
33 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/EnumDefinitions/EnumDefinitions.h

    r9610 r9612  
    1818        SurfaceforcingsAblationRateEnum,
    1919        SurfaceforcingsMassBalanceEnum,
     20        BasalforcingsMeltingRateEnum,
     21        BasalforcingsMeltingRateCorrectionEnum,
     22        BasalforcingsGeothermalfluxEnum,
    2023        FrictionCoefficientEnum,
    2124        FrictionPEnum,
     
    202205        MeltingOffsetEnum,
    203206        GroundinglineMeltingRateEnum,
    204         BasalMeltingRateEnum,
    205207        MisfitEnum,
    206208        NodeOnBedEnum,
     
    309311        RhoWaterEnum,
    310312        GravityEnum,
    311         BasalMeltingRateCorrectionEnum,
    312313        MixedLayerCapacityEnum,
    313314        ThermalExchangeVelocityEnum,
     
    450451        MeltingpointEnum,
    451452        DhdtEnum,
    452         GeothermalfluxEnum,
    453453        IsprognosticEnum,
    454454        IsdiagnosticEnum,
  • issm/trunk/src/c/EnumDefinitions/EnumToModelField.cpp

    r9610 r9612  
    2222                case VyEnum : return "vy";
    2323                case VyObsEnum : return "vy_obs";
    24                 case BasalMeltingRateEnum : return "basal_melting_rate";
     24                case BasalforcingsMeltingRateEnum : return "basal_melting_rate";
    2525      case SurfaceforcingsAccumulationRateEnum : return "surface_accumulation_rate";
    2626                case SurfaceforcingsAblationRateEnum : return "surface_ablation_rate";
  • issm/trunk/src/c/modules/EnumToStringx/EnumToStringx.cpp

    r9610 r9612  
    2222                case SurfaceforcingsAblationRateEnum : return "SurfaceforcingsAblationRate";
    2323                case SurfaceforcingsMassBalanceEnum : return "SurfaceforcingsMassBalance";
     24                case BasalforcingsMeltingRateEnum : return "BasalforcingsMeltingRate";
     25                case BasalforcingsMeltingRateCorrectionEnum : return "BasalforcingsMeltingRateCorrection";
     26                case BasalforcingsGeothermalfluxEnum : return "BasalforcingsGeothermalflux";
    2427                case FrictionCoefficientEnum : return "FrictionCoefficient";
    2528                case FrictionPEnum : return "FrictionP";
     
    169172                case MeltingOffsetEnum : return "MeltingOffset";
    170173                case GroundinglineMeltingRateEnum : return "GroundinglineMeltingRate";
    171                 case BasalMeltingRateEnum : return "BasalMeltingRate";
    172174                case MisfitEnum : return "Misfit";
    173175                case NodeOnBedEnum : return "NodeOnBed";
     
    262264                case RhoWaterEnum : return "RhoWater";
    263265                case GravityEnum : return "Gravity";
    264                 case BasalMeltingRateCorrectionEnum : return "BasalMeltingRateCorrection";
    265266                case MixedLayerCapacityEnum : return "MixedLayerCapacity";
    266267                case ThermalExchangeVelocityEnum : return "ThermalExchangeVelocity";
     
    391392                case MeltingpointEnum : return "Meltingpoint";
    392393                case DhdtEnum : return "Dhdt";
    393                 case GeothermalfluxEnum : return "Geothermalflux";
    394394                case IsprognosticEnum : return "Isprognostic";
    395395                case IsdiagnosticEnum : return "Isdiagnostic";
  • issm/trunk/src/c/modules/ModelProcessorx/Balancethickness/UpdateElementsBalancethickness.cpp

    r9607 r9612  
    4141        iomodel->FetchDataToInput(elements,VxEnum);
    4242        iomodel->FetchDataToInput(elements,VyEnum);
    43         iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
     43        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
    4444        iomodel->FetchDataToInput(elements,SurfaceforcingsAccumulationRateEnum);
    4545        iomodel->FetchDataToInput(elements,SurfaceforcingsAblationRateEnum);
  • issm/trunk/src/c/modules/ModelProcessorx/DiagnosticHoriz/UpdateElementsDiagnosticHoriz.cpp

    r9610 r9612  
    7070                iomodel->FetchDataToInput(elements,SurfaceforcingsAblationRateEnum);
    7171                iomodel->FetchDataToInput(elements,SurfaceforcingsMassBalanceEnum);
    72                 iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
     72                iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
    7373                iomodel->FetchDataToInput(elements,NodeOnStokesEnum);
    7474        }
  • issm/trunk/src/c/modules/ModelProcessorx/DiagnosticVert/UpdateElementsDiagnosticVert.cpp

    r9607 r9612  
    4747        iomodel->FetchDataToInput(elements,ElementOnSurfaceEnum);
    4848        iomodel->FetchDataToInput(elements,ElementOnWaterEnum);
    49         iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
     49        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
    5050        iomodel->FetchDataToInput(elements,SurfaceforcingsAccumulationRateEnum);
    5151        iomodel->FetchDataToInput(elements,SurfaceforcingsAblationRateEnum);
  • issm/trunk/src/c/modules/ModelProcessorx/Enthalpy/UpdateElementsEnthalpy.cpp

    r9610 r9612  
    5555        iomodel->FetchDataToInput(elements,TemperatureEnum);
    5656        iomodel->FetchDataToInput(elements,WaterfractionEnum);
    57         iomodel->FetchDataToInput(elements,GeothermalfluxEnum);
     57        iomodel->FetchDataToInput(elements,BasalforcingsGeothermalfluxEnum);
    5858        iomodel->FetchDataToInput(elements,VxEnum);
    5959        iomodel->FetchDataToInput(elements,VyEnum);
  • issm/trunk/src/c/modules/ModelProcessorx/Hydrology/UpdateElementsHydrology.cpp

    r9610 r9612  
    4747        iomodel->FetchDataToInput(elements,PressureEnum);
    4848        iomodel->FetchDataToInput(elements,TemperatureEnum);
    49         iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
     49        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
    5050        iomodel->FetchDataToInput(elements,WatercolumnEnum);
    51         iomodel->FetchDataToInput(elements,GeothermalfluxEnum);
     51        iomodel->FetchDataToInput(elements,BasalforcingsGeothermalfluxEnum);
    5252        iomodel->FetchDataToInput(elements,VxEnum);
    5353        iomodel->FetchDataToInput(elements,VyEnum);
  • issm/trunk/src/c/modules/ModelProcessorx/Melting/UpdateElementsMelting.cpp

    r9610 r9612  
    5656        iomodel->FetchDataToInput(elements,SurfaceforcingsAblationRateEnum);
    5757        iomodel->FetchDataToInput(elements,SurfaceforcingsMassBalanceEnum);
    58         iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
     58        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
    5959        iomodel->FetchDataToInput(elements,PressureEnum);
    6060       
  • issm/trunk/src/c/modules/ModelProcessorx/Prognostic/UpdateElementsPrognostic.cpp

    r9607 r9612  
    4444        iomodel->FetchDataToInput(elements,SurfaceforcingsAblationRateEnum);
    4545        iomodel->FetchDataToInput(elements,SurfaceforcingsMassBalanceEnum);
    46         iomodel->FetchDataToInput(elements,BasalMeltingRateEnum);
    47         iomodel->FetchDataToInput(elements,BasalMeltingRateCorrectionEnum);
     46        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateEnum);
     47        iomodel->FetchDataToInput(elements,BasalforcingsMeltingRateCorrectionEnum);
    4848        iomodel->FetchDataToInput(elements,VxEnum);
    4949        iomodel->FetchDataToInput(elements,VyEnum);
  • issm/trunk/src/c/modules/ModelProcessorx/Thermal/UpdateElementsThermal.cpp

    r9610 r9612  
    5656        iomodel->FetchDataToInput(elements,PressureEnum);
    5757        iomodel->FetchDataToInput(elements,TemperatureEnum);
    58         iomodel->FetchDataToInput(elements,GeothermalfluxEnum);
     58        iomodel->FetchDataToInput(elements,BasalforcingsGeothermalfluxEnum);
    5959        iomodel->FetchDataToInput(elements,VxEnum);
    6060        iomodel->FetchDataToInput(elements,VyEnum);
  • issm/trunk/src/c/modules/StringToEnumx/StringToEnumx.cpp

    r9610 r9612  
    2020        else if (strcmp(name,"SurfaceforcingsAblationRate")==0) return SurfaceforcingsAblationRateEnum;
    2121        else if (strcmp(name,"SurfaceforcingsMassBalance")==0) return SurfaceforcingsMassBalanceEnum;
     22        else if (strcmp(name,"BasalforcingsMeltingRate")==0) return BasalforcingsMeltingRateEnum;
     23        else if (strcmp(name,"BasalforcingsMeltingRateCorrection")==0) return BasalforcingsMeltingRateCorrectionEnum;
     24        else if (strcmp(name,"BasalforcingsGeothermalflux")==0) return BasalforcingsGeothermalfluxEnum;
    2225        else if (strcmp(name,"FrictionCoefficient")==0) return FrictionCoefficientEnum;
    2326        else if (strcmp(name,"FrictionP")==0) return FrictionPEnum;
     
    167170        else if (strcmp(name,"MeltingOffset")==0) return MeltingOffsetEnum;
    168171        else if (strcmp(name,"GroundinglineMeltingRate")==0) return GroundinglineMeltingRateEnum;
    169         else if (strcmp(name,"BasalMeltingRate")==0) return BasalMeltingRateEnum;
    170172        else if (strcmp(name,"Misfit")==0) return MisfitEnum;
    171173        else if (strcmp(name,"NodeOnBed")==0) return NodeOnBedEnum;
     
    260262        else if (strcmp(name,"RhoWater")==0) return RhoWaterEnum;
    261263        else if (strcmp(name,"Gravity")==0) return GravityEnum;
    262         else if (strcmp(name,"BasalMeltingRateCorrection")==0) return BasalMeltingRateCorrectionEnum;
    263264        else if (strcmp(name,"MixedLayerCapacity")==0) return MixedLayerCapacityEnum;
    264265        else if (strcmp(name,"ThermalExchangeVelocity")==0) return ThermalExchangeVelocityEnum;
     
    389390        else if (strcmp(name,"Meltingpoint")==0) return MeltingpointEnum;
    390391        else if (strcmp(name,"Dhdt")==0) return DhdtEnum;
    391         else if (strcmp(name,"Geothermalflux")==0) return GeothermalfluxEnum;
    392392        else if (strcmp(name,"Isprognostic")==0) return IsprognosticEnum;
    393393        else if (strcmp(name,"Isdiagnostic")==0) return IsdiagnosticEnum;
  • issm/trunk/src/c/objects/Elements/Penta.cpp

    r9610 r9612  
    32253225        for(i=0;i<NUMVERTICES2D;i++) for(j=0;j<3;j++) xyz_list_tria[i][j]=xyz_list[i][j];
    32263226        inputs->GetParameterValue(&approximation,ApproximationEnum);
    3227         Input* bed_input=inputs->GetInput(BedEnum);             _assert_(bed_input);
    3228         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum); _assert_(basal_melting_input);
    3229         Input* vx_input=inputs->GetInput(VxEnum);               _assert_(vx_input);
    3230         Input* vy_input=inputs->GetInput(VyEnum);               _assert_(vy_input);
     3227        Input* bed_input=inputs->GetInput(BedEnum);                                _assert_(bed_input);
     3228        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum); _assert_(basal_melting_input);
     3229        Input* vx_input=inputs->GetInput(VxEnum);                                  _assert_(vx_input);
     3230        Input* vy_input=inputs->GetInput(VyEnum);                                  _assert_(vy_input);
    32313231        Input* vzstokes_input=NULL;
    32323232        if(approximation==PattynStokesApproximationEnum || approximation==MacAyealStokesApproximationEnum){
     
    34573457        Input* vy_input=inputs->GetInput(VyEnum);                         _assert_(vy_input);
    34583458        Input* vz_input=inputs->GetInput(VzEnum);                         _assert_(vz_input);
    3459         Input* geothermalflux_input=inputs->GetInput(GeothermalfluxEnum); _assert_(geothermalflux_input);
     3459        Input* geothermalflux_input=inputs->GetInput(BasalforcingsGeothermalfluxEnum); _assert_(geothermalflux_input);
    34603460
    34613461        /*Build frictoin element, needed later: */
     
    37243724        Input* vy_input=inputs->GetInput(VyEnum);                         _assert_(vy_input);
    37253725        Input* vz_input=inputs->GetInput(VzEnum);                         _assert_(vz_input);
    3726         Input* geothermalflux_input=inputs->GetInput(GeothermalfluxEnum); _assert_(geothermalflux_input);
     3726        Input* geothermalflux_input=inputs->GetInput(BasalforcingsGeothermalfluxEnum); _assert_(geothermalflux_input);
    37273727
    37283728        /*Build frictoin element, needed later: */
     
    53115311        }
    53125312        else if (analysis_type==MeltingAnalysisEnum){
    5313                 InputUpdateFromSolutionOneDof(solution,BasalMeltingRateEnum);
     5313                InputUpdateFromSolutionOneDof(solution,BasalforcingsMeltingRateEnum);
    53145314        }
    53155315        else{
     
    65876587                                name==SurfaceSlopeXEnum ||
    65886588                                name==SurfaceSlopeYEnum ||
    6589                                 name==BasalMeltingRateEnum ||
    65906589                                name==SurfaceforcingsMassBalanceEnum ||
    6591                                 name==GeothermalfluxEnum ||
     6590                                name==BasalforcingsMeltingRateEnum ||
     6591                                name==BasalforcingsGeothermalfluxEnum ||
    65926592                                name==SurfaceAreaEnum||
    65936593                                name==PressureEnum ||
  • issm/trunk/src/c/objects/Elements/Tria.cpp

    r9610 r9612  
    13151315        GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
    13161316        Input* surface_mass_balance_input=inputs->GetInput(SurfaceforcingsMassBalanceEnum); _assert_(surface_mass_balance_input);
    1317         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum);                  _assert_(basal_melting_input);
     1317        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum);          _assert_(basal_melting_input);
    13181318        Input* dhdt_input=inputs->GetInput(DhdtEnum);                                       _assert_(dhdt_input);
    13191319       
     
    13581358        GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
    13591359        Input* surface_mass_balance_input=inputs->GetInput(SurfaceforcingsMassBalanceEnum); _assert_(surface_mass_balance_input);
    1360         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum);                  _assert_(basal_melting_input);
     1360        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum);          _assert_(basal_melting_input);
    13611361        Input* dhdt_input=inputs->GetInput(DhdtEnum);                                       _assert_(dhdt_input);
    13621362
     
    19421942        GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
    19431943        this->parameters->FindParam(&dt,DtEnum);
    1944         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum);_assert_(basal_melting_input);
    1945         Input* old_watercolumn_input=inputs->GetInput(WaterColumnOldEnum);_assert_(old_watercolumn_input);
     1944        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum); _assert_(basal_melting_input);
     1945        Input* old_watercolumn_input=inputs->GetInput(WaterColumnOldEnum);         _assert_(old_watercolumn_input);
    19461946
    19471947        /*Initialize basal_melting_correction_g to 0, do not forget!:*/
     
    19881988        this->parameters->FindParam(&dt,DtEnum);
    19891989        Input* surface_mass_balance_input=inputs->GetInput(SurfaceforcingsMassBalanceEnum); _assert_(surface_mass_balance_input);
    1990         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum);                  _assert_(basal_melting_input);
    1991         Input* basal_melting_correction_input=inputs->GetInput(BasalMeltingRateCorrectionEnum);
     1990        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum);          _assert_(basal_melting_input);
     1991        Input* basal_melting_correction_input=inputs->GetInput(BasalforcingsMeltingRateCorrectionEnum);
    19921992        Input* thickness_input=inputs->GetInput(ThicknessEnum);                             _assert_(thickness_input);
    19931993
     
    20362036        GetVerticesCoordinates(&xyz_list[0][0], nodes, NUMVERTICES);
    20372037        Input* surface_mass_balance_input=inputs->GetInput(SurfaceforcingsMassBalanceEnum); _assert_(surface_mass_balance_input);
    2038         Input* basal_melting_input=inputs->GetInput(BasalMeltingRateEnum);                  _assert_(basal_melting_input);
     2038        Input* basal_melting_input=inputs->GetInput(BasalforcingsMeltingRateEnum);          _assert_(basal_melting_input);
    20392039        Input* thickness_input=inputs->GetInput(ThicknessEnum);                             _assert_(thickness_input);
    20402040
     
    39843984                                name==SurfaceSlopeXEnum ||
    39853985                                name==SurfaceSlopeYEnum ||
    3986                                 name==BasalMeltingRateEnum ||
     3986                                name==BasalforcingsMeltingRateEnum ||
    39873987                                name==WatercolumnEnum ||
    39883988                                name==SurfaceforcingsMassBalanceEnum ||
     
    46314631    /*If this element just  became ungrounded, set its basal melting rate at 50 m/yr:*/
    46324632        if(swap){
    4633                 Input* basal_melting_rate_input     =inputs->GetInput(BasalMeltingRateEnum);     _assert_(basal_melting_rate_input);
     4633                Input* basal_melting_rate_input     =inputs->GetInput(BasalforcingsMeltingRateEnum);     _assert_(basal_melting_rate_input);
    46344634                basal_melting_rate_input->GetValuesPtr(&values,NULL); for(i=0;i<3;i++)values[i]=gl_melting_rate/yts;
    46354635        }
  • issm/trunk/src/c/shared/Numerics/UnitConversion.cpp

    r9607 r9612  
    5959                case VelObsEnum:      scale=yts;break; //m/yr
    6060                case DhdtEnum:        scale=yts;break; //m/yr
    61                 case BasalMeltingRateEnum:        scale=yts;break; //m/yr
    62                 case BasalMeltingRateCorrectionEnum: scale=yts;break; //m/yr
     61                case BasalforcingsMeltingRateEnum:        scale=yts;break; //m/yr
     62                case BasalforcingsMeltingRateCorrectionEnum: scale=yts;break; //m/yr
    6363                case SurfaceforcingsAccumulationRateEnum: scale=yts;break; //m/yr
    6464                case SurfaceforcingsAblationRateEnum:     scale=yts;break; //m/yr
  • issm/trunk/src/c/solutions/steadystate_core.cpp

    r9112 r9612  
    6868                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,PressureEnum);
    6969                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum);
    70                 InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalMeltingRateEnum);
     70                InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum);
    7171                RequestedOutputsx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters);
    7272        }
  • issm/trunk/src/c/solutions/thermal_core.cpp

    r9571 r9612  
    5858                        _printf_(VerboseSolution(),"   saving results\n");
    5959                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum,i+1,time);
    60                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalMeltingRateEnum,i+1,time);
     60                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum,i+1,time);
    6161                }
    6262
  • issm/trunk/src/c/solutions/transient_core.cpp

    r9607 r9612  
    9494                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BedEnum,step,time);
    9595                        if(dim==3) InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,TemperatureEnum,step,time);
    96                         InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalMeltingRateEnum,step,time);
     96                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,BasalforcingsMeltingRateEnum,step,time);
    9797                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SurfaceforcingsMassBalanceEnum,step,time);
    9898                        InputToResultx(femmodel->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,ElementOnIceShelfEnum,step,time);
  • issm/trunk/src/m/classes/model/model.m

    r9610 r9612  
    1616                 flaim     = modelfield('default',0,'marshall',false);
    1717                 surfaceforcings = modelfield('default',0,'marshall',true);
     18                 basalforcings   = modelfield('default',0,'marshall',true);
    1819                 friction  = modelfield('default',0,'marshall',true);
    1920
     
    154155
    155156                 dhdt                      = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    156                  geothermalflux            = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    157157                 thickness_obs             = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    158158
     
    205205                 waterfraction                  = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    206206                 groundingline_melting_rate                = modelfield('default',NaN,'marshall',true,'format','Double');
    207                  basal_melting_rate             = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    208                  basal_melting_rate_correction  = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    209207                 pressure                       = modelfield('default',NaN,'marshall',true,'format','DoubleMat','mattype',1);
    210208                 %Hydrology
     
    411409                         if isfield(structmd,'B'), md.rheology_B=structmd.B; end
    412410                         if isfield(structmd,'n'), md.rheology_n=structmd.n; end
    413                          if isfield(structmd,'melting'), md.basal_melting_rate=structmd.melting; end
    414                          if isfield(structmd,'melting_rate'), md.basal_melting_rate=structmd.melting_rate; end
     411                         if isfield(structmd,'melting'), md.basalforcings.melting_rate=structmd.melting; end
     412                         if isfield(structmd,'melting_rate'), md.basalforcings.melting_rate=structmd.melting_rate; end
    415413                         if isfield(structmd,'accumulation'), md.surfaceforcings.mass_balance=structmd.accumulation; end
    416414                         if isfield(structmd,'accumulation_rate'), md.surfaceforcings.mass_balance=structmd.accumulation_rate; end
     
    436434                         if isfield(structmd,'dakota_analysis'), md.dakota_analysis=structmd.dakota_analysis; end
    437435                         if isfield(structmd,'surface_mass_balance'), md.surfaceforcings.mass_balance=structmd.surface_mass_balance; end
     436                         if isfield(structmd,'basal_melting_rate'), md.basalforcings.melting_rate=structmd.basal_melting_rate; end
     437                         if isfield(structmd,'basal_melting_rate_correction'), md.basalforcings.melting_rate_correction=structmd.basal_melting_rate_correction; end
     438                         if isfield(structmd,'geothermalflux'), md.basalforcings.geothermalflux=structmd.geothermalflux; end
    438439                         if isfield(structmd,'drag_coefficient'), md.friction.coefficient=structmd.drag_coefficient; end
    439440                         if isfield(structmd,'drag_p'), md.friction.p=structmd.drag_p; end
     
    546547                         md.flaim=flaim;
    547548                         md.surfaceforcings=surfaceforcings;
     549                         md.basalforcings=basalforcings;
    548550                         md.friction=friction;
    549551
  • issm/trunk/src/m/enum/EnumToModelField.m

    r9610 r9612  
    1212
    1313                case ThicknessEnum(), string='thickness'; return
    14                 case DragCoefficientEnum(), string='drag_coefficient'; return
     14                case FrictionCoefficientEnum(), string='drag_coefficient'; return
    1515                case RheologyBEnum(), string='rheology_B'; return
    1616                case RheologyBbarEnum(), string='rheology_B'; return
     
    2020                case VyEnum(), string='vy'; return
    2121                case VyObsEnum(), string='vy_obs'; return
    22                 case BasalMeltingRateEnum(), string='basal_melting_rate'; return
     22                case BasalforcingsMeltingRateEnum(), string='basal_melting_rate'; return
    2323      case SurfaceforcingsAccumulationRateEnum(), string='surface_accumulation_rate'; return
    2424                case SurfaceforcingsAblationRateEnum(), string='surface_ablation_rate'; return
  • issm/trunk/src/m/model/collapse.m

    r9610 r9612  
    7373
    7474%special for thermal modeling:
    75 md.basal_melting_rate=project2d(md,md.basal_melting_rate,1);
    76 md.geothermalflux=project2d(md,md.geothermalflux,1); %bedrock only gets geothermal flux
     75md.basalforcings.melting_rate=project2d(md,md.basalforcings.melting_rate,1);
     76md.basalforcings.geothermalflux=project2d(md,md.basalforcings.geothermalflux,1); %bedrock only gets geothermal flux
    7777
    7878%update of connectivity matrix
  • issm/trunk/src/m/model/display/displaybc.m

    r9464 r9612  
    2929disp(sprintf('\n      thermal:'));
    3030fielddisplay(md,'spctemperature','temperature constraints (NaN means no constraint)');
    31 fielddisplay(md,'basal_melting_rate','basal melting rate [m/a]');
  • issm/trunk/src/m/model/display/displayobservations.m

    r9607 r9612  
    1919fielddisplay(md,'dhdt','surface dhdt rate [m/a]');
    2020fielddisplay(md,'observed_temperature','observed temperature [K]');
    21 fielddisplay(md,'geothermalflux','geothermal heat flux [W/m^2]');
  • issm/trunk/src/m/model/display/displaythermal.m

    r8392 r9612  
    1717disp(sprintf('\n      boundary conditions:'));
    1818fielddisplay(md,'spctemperature','constraints flag list (first column) and values (second column)');
    19 fielddisplay(md,'basal_melting_rate','basal melting rate [m/a]');
    2019
    2120disp(sprintf('\n      transient:'));
  • issm/trunk/src/m/model/extrude.m

    r9610 r9612  
    221221
    222222%special for thermal modeling:
    223 md.basal_melting_rate=project3d(md,'vector',md.basal_melting_rate,'type','node','layer',1);
    224 if ~isnan(md.geothermalflux)
    225         md.geothermalflux=project3d(md,'vector',md.geothermalflux,'type','node','layer',1); %bedrock only gets geothermal flux
     223md.basalforcings.melting_rate=project3d(md,'vector',md.basalforcings.melting_rate,'type','node','layer',1);
     224if ~isnan(md.basalforcings.geothermalflux)
     225        md.basalforcings.geothermalflux=project3d(md,'vector',md.basalforcings.geothermalflux,'type','node','layer',1); %bedrock only gets geothermal flux
    226226end
    227227
  • issm/trunk/src/m/model/ismodelselfconsistent.m

    r9610 r9612  
    103103%}}}
    104104%SIZE NUMBEROFNODES {{{1
    105 fields={'x','y','z','rheology_B','friction.coefficient','basal_melting_rate','surface','thickness','bed','nodeonbed','nodeonsurface'};
     105fields={'x','y','z','rheology_B','friction.coefficient','basalforcings.melting_rate','surface','thickness','bed','nodeonbed','nodeonsurface'};
    106106checksize(md,fields,[md.numberofnodes 1]);
    107107%}}}
     
    497497
    498498                        %VELOCITIES AND PRESSURE
    499                         fields={'vx','vy','vz','pressure','geothermalflux'};
     499                        fields={'vx','vy','vz','pressure','basalforcings.geothermalflux'};
    500500                        checksize(md,fields,[md.numberofnodes 1]);
    501501                        checknan(md,fields);
     
    509509
    510510                                %INITIAL TEMPERATURE, MELTING AND ACCUMULATION
    511                                 fields={'temperature','basal_melting_rate'};
     511                                fields={'temperature','basalforcings.melting_rate'};
    512512                                checksize(md,fields,[md.numberofnodes 1]);
    513513                                checknan(md,fields);
     
    536536
    537537                        %VELOCITIES AND PRESSURE
    538                         fields={'vx','vy','vz','pressure','geothermalflux'};
     538                        fields={'vx','vy','vz','pressure','basalforcings.geothermalflux'};
    539539                        checksize(md,fields,[md.numberofnodes 1]);
    540540                        checknan(md,fields);
     
    548548
    549549                                %INITIAL TEMPERATURE, MELTING, ACCUMULATION AND WATERFRACTION
    550                                 fields={'temperature','basal_melting_rate','waterfraction'};
     550                                fields={'temperature','basalforcings.melting_rate','waterfraction'};
    551551                                checksize(md,fields,[md.numberofnodes 1]);
    552552                                checknan(md,fields);
     
    564564                        % {{{2
    565565                        %VELOCITIES MELTING AND ACCUMULATION
    566                         fields={'vx','vy','basal_melting_rate','dhdt'};
     566                        fields={'vx','vy','basalforcings.melting_rate','dhdt'};
    567567                        checksize(md,fields,[md.numberofnodes 1]);
    568568                        checknan(md,fields);
  • issm/trunk/src/m/model/tres.m

    r9605 r9612  
    8585        md.pressure=PatchToVec(md.results.SteadystateSolution.Pressure);
    8686        md.temperature=PatchToVec(md.results.SteadystateSolution.Temperature);
    87         md.basal_melting_rate=PatchToVec(md.results.SteadystateSolution.BasalMeltingRate);
     87        md.basalforcings.melting_rate=PatchToVec(md.results.SteadystateSolution.BasalforcingsMeltingRate);
    8888
    8989        if md.control_analysis==1,
     
    9595elseif strcmpi(string,'thermal'),
    9696        md.temperature=PatchToVec(md.results.ThermalSolution.Temperature);
    97         md.basal_melting_rate=PatchToVec(md.results.ThermalSolution.BasalMeltingRate);
     97        md.basalforcings.melting_rate=PatchToVec(md.results.ThermalSolution.BasalMeltingRate);
    9898elseif strcmpi(string,'hydrology'),
    9999        md.watercolumn=PatchToVec(md.results.HydrologySolution.Watercolumn);
  • issm/trunk/src/m/solutions/steadystate_core.m

    r8392 r9612  
    4646                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,PressureEnum);
    4747                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,TemperatureEnum);
    48                 femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalMeltingRateEnum);
     48                femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalforcingsMeltingRateEnum);
    4949        end
    5050
  • issm/trunk/src/m/solutions/thermal_core.m

    r8392 r9612  
    3131                        issmprintf(VerboseSolution,'\n%s',['   saving results']);
    3232                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,TemperatureEnum,i,time);
    33                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalMeltingRateEnum,i,time);
     33                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalforcingsMeltingRateEnum,i,time);
    3434                end
    3535        end
  • issm/trunk/src/m/solutions/transient_core.m

    r9597 r9612  
    6666                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BedEnum,step,time);
    6767                        if (dim==3), femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,TemperatureEnum,step,time);end
    68                         femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalMeltingRateEnum,step,time);
     68                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,BasalforcingsMeltingRateEnum,step,time);
    6969                        femmodel.elements=InputToResult(femmodel.elements,femmodel.nodes,femmodel.vertices,femmodel.loads,femmodel.materials,femmodel.parameters,SurfaceMassBalanceEnum,step,time);
    7070                end
  • issm/trunk/src/m/utils/BC/SetIceSheetBC.m

    r9607 r9612  
    3333end
    3434
    35 %Create zeros basal_melting_rate and surface mass balance if not specified
     35%Create zeros basal melting rate and surface mass balance if not specified
    3636if isnan(md.surfaceforcings.accumulation_rate),
    3737        md.surfaceforcings.accumulation_rate=zeros(md.numberofnodes,1);
     
    4646        disp('      no surfaceforcings.mass_balance specified: values set as zero');
    4747end
    48 if isnan(md.basal_melting_rate),
    49         md.basal_melting_rate=zeros(md.numberofnodes,1);
    50         disp('      no basal_melting_rate specified: values set as zero');
     48if isnan(md.basalforcings.melting_rate),
     49        md.basalforcings.melting_rate=zeros(md.numberofnodes,1);
     50        disp('      no basalforcings.melting_rate specified: values set as zero');
    5151end
    5252if isnan(md.dhdt),
     
    6060        md.spctemperature=NaN*ones(md.numberofnodes,1);
    6161        pos=find(md.nodeonsurface); md.spctemperature(pos)=md.temperature(pos); %impose observed temperature on surface
    62         if (length(md.geothermalflux)~=md.numberofnodes),
    63                 md.geothermalflux=50*10^-3*ones(md.numberofnodes,1); %50 mW/m^2
     62        if (length(md.basalforcings.geothermalflux)~=md.numberofnodes),
     63                md.basalforcings.geothermalflux=50*10^-3*ones(md.numberofnodes,1); %50 mW/m^2
    6464        end
    6565else
  • issm/trunk/src/m/utils/BC/SetIceShelfBC.m

    r9607 r9612  
    6464md.pressureload=pressureload;
    6565
    66 %Create zeros basal_melting_rate, surfaceforcings.ablation_rate, surfaceforcings.accumulation_rate
     66%Create zeros basalforcings.melting_rate, surfaceforcings.ablation_rate, surfaceforcings.accumulation_rate
    6767% and surfaceforcings.mass_balance if not specified
    6868if isnan(md.surfaceforcings.accumulation_rate),
     
    7878        disp('      no surfaceforcings.mass_balance specified: values set as zero');
    7979end
    80 if isnan(md.basal_melting_rate),
    81         md.basal_melting_rate=zeros(md.numberofnodes,1);
    82         disp('      no basal_melting_rate specified: values set as zero');
     80if isnan(md.basalforcings.melting_rate),
     81        md.basalforcings.melting_rate=zeros(md.numberofnodes,1);
     82        disp('      no basalforcings.melting_rate specified: values set as zero');
    8383end
    8484if isnan(md.dhdt),
     
    9292        md.spctemperature=NaN*ones(md.numberofnodes,1);
    9393        pos=find(md.nodeonsurface); md.spctemperature(pos)=md.temperature(pos); %impose observed temperature on surface
    94         if (length(md.geothermalflux)~=md.numberofnodes),
    95                 md.geothermalflux=zeros(md.numberofnodes,1);
     94        if (length(md.basalforcings.geothermalflux)~=md.numberofnodes),
     95                md.basalforcings.geothermalflux=zeros(md.numberofnodes,1);
    9696        end
    9797else
  • issm/trunk/src/m/utils/BC/SetMarineIceSheetBC.m

    r9607 r9612  
    7575
    7676
    77 %Create zeros basal_melting_rate, surfaceforcings.ablation_rate, surfaceforcings.accumulation_rate
     77%Create zeros basalforcings.melting_rate, surfaceforcings.ablation_rate, surfaceforcings.accumulation_rate
    7878% and surfaceforcings.mass_balance if not specified
    7979if isnan(md.surfaceforcings.accumulation_rate),
     
    8989        disp('      no surfaceforcings.mass_balance specified: values set as zero');
    9090end
    91 if isnan(md.basal_melting_rate),
    92         md.basal_melting_rate=zeros(md.numberofnodes,1);
    93         disp('      no basal_melting_rate specified: values set as zero');
     91if isnan(md.basalforcings.melting_rate),
     92        md.basalforcings.melting_rate=zeros(md.numberofnodes,1);
     93        disp('      no basalforcings.melting_rate specified: values set as zero');
    9494end
    9595if isnan(md.dhdt),
     
    103103        md.spctemperature=NaN*ones(md.numberofnodes,1);
    104104        pos=find(md.nodeonsurface); md.spctemperature(pos)=md.temperature(pos); %impose observed temperature on surface
    105         if (length(md.geothermalflux)~=md.numberofnodes),
    106                 md.geothermalflux=zeros(md.numberofnodes,1);
    107                 md.geothermalflux(find(md.nodeonicesheet))=50*10^-3; %50mW/m2
     105        if (length(md.basalforcings.geothermalflux)~=md.numberofnodes),
     106                md.basalforcings.geothermalflux=zeros(md.numberofnodes,1);
     107                md.basalforcings.geothermalflux(find(md.nodeonicesheet))=50*10^-3; %50mW/m2
    108108        end
    109109else
Note: See TracChangeset for help on using the changeset viewer.