Changeset 19200


Ignore:
Timestamp:
03/17/15 09:37:44 (10 years ago)
Author:
lemorzad
Message:

new class for d18o interpolation for pdd

Location:
issm/trunk-jpl
Files:
4 added
13 edited

Legend:

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

    r19172 r19200  
    180180                        iomodel->Constant(&isdelta18o,SurfaceforcingsIsdelta18oEnum);
    181181                        iomodel->Constant(&ismungsm,SurfaceforcingsIsmungsmEnum);
    182                         iomodel->Constant(&isd18opd,SurfaceforcingsIsd18opdEnum);
    183182                        iomodel->FetchDataToInput(elements,ThermalSpctemperatureEnum);
    184183                        if(isdelta18o || ismungsm){
     
    188187                                iomodel->FetchDataToInput(elements,SurfaceforcingsPrecipitationsLgmEnum);
    189188                        }
    190                         else if (isd18opd){
    191                                 iomodel->FetchDataToInput(elements,SurfaceforcingsTemperaturesPresentdayEnum);
    192                                 iomodel->FetchDataToInput(elements,SurfaceforcingsPrecipitationsPresentdayEnum);
    193                         }
    194189                        else{
    195190                                iomodel->FetchDataToInput(elements,SurfaceforcingsPrecipitationEnum);
    196191                                iomodel->FetchDataToInput(elements,SurfaceforcingsMonthlytemperaturesEnum);
    197192                        }
     193                        break;
     194                case SMBd18opddEnum:
     195                        iomodel->Constant(&ismungsm,SurfaceforcingsIsmungsmEnum);
     196                        iomodel->Constant(&isd18opd,SurfaceforcingsIsd18opdEnum);
     197                        iomodel->FetchDataToInput(elements,ThermalSpctemperatureEnum);
     198                        if (isd18opd){
     199                                iomodel->FetchDataToInput(elements,SurfaceforcingsTemperaturesPresentdayEnum);
     200                                iomodel->FetchDataToInput(elements,SurfaceforcingsPrecipitationsPresentdayEnum);
     201                        }
     202
    198203                        break;
    199204                case SMBgradientsEnum:
  • issm/trunk-jpl/src/c/analyses/ThermalAnalysis.cpp

    r19176 r19200  
    2626                iomodel->Constant(&smb_model,SurfaceforcingsEnum);
    2727                if(smb_model==SMBpddEnum) isdynamic=true;
     28                if(smb_model==SMBd18opddEnum) isdynamic=true;
    2829        }
    2930        else{
  • issm/trunk-jpl/src/c/classes/Materials/Matpar.cpp

    r19184 r19200  
    5555                                        iomodel->Constant(&this->rlaps,SurfaceforcingsRlapsEnum);
    5656                                        iomodel->Constant(&this->rlapslgm,SurfaceforcingsRlapslgmEnum);
    57                                         // iomodel->Constant(&this->dpermil,SurfaceforcingsDpermilEnum);                                       
    58                                         break;
     57                                        break;
     58                                case SMBd18opddEnum:
     59                                        iomodel->Constant(&this->desfac,SurfaceforcingsDesfacEnum);
     60                                        iomodel->Constant(&this->s0p,SurfaceforcingsS0pEnum);
     61                                        iomodel->Constant(&this->s0t,SurfaceforcingsS0tEnum);
     62                                        iomodel->Constant(&this->rlaps,SurfaceforcingsRlapsEnum);
     63                                        iomodel->Constant(&this->rlapslgm,SurfaceforcingsRlapslgmEnum);
     64                                        iomodel->Constant(&this->dpermil,SurfaceforcingsDpermilEnum);                                   
    5965                                case SMBgradientsEnum:
     66                                        break;
    6067                                        /*Nothing to add*/
    6168                                        break;
     
    135142        _printf_("   rlaps: " << rlaps << "\n");
    136143        _printf_("   rlapslgm: " << rlapslgm << "\n");
    137         //      _printf_("   dpermil: " << dpermil << "\n");
     144        _printf_("   dpermil: " << dpermil << "\n");
    138145        return;
    139146}
     
    181188        matpar->rlaps=this->rlaps;
    182189        matpar->rlapslgm=this->rlapslgm;
    183         //      matpar->dpermil=this->dpermil;
     190        matpar->dpermil=this->dpermil;
    184191
    185192        matpar->sediment_compressibility=this->sediment_compressibility;
     
    277284                        this->rlapslgm=constant;
    278285                        break;
    279 //              case  SurfaceforcingsDpermilEnum:
    280 //                      this->dpermil=constant;
    281 //                      break;
     286                case  SurfaceforcingsDpermilEnum:
     287                        this->dpermil=constant;
     288                        break;
    282289                default:
    283290                        break;
     
    406413                case SurfaceforcingsRlapsEnum:               return this->rlaps;
    407414                case SurfaceforcingsRlapslgmEnum:            return this->rlapslgm;
    408                   //            case SurfaceforcingsDpermilEnum:             return this->dpermil;
     415                case SurfaceforcingsDpermilEnum:             return this->dpermil;
    409416                case MaterialsLithosphereShearModulusEnum:   return this->lithosphere_shear_modulus;
    410417                case MaterialsLithosphereDensityEnum:        return this->lithosphere_density;
  • issm/trunk-jpl/src/c/cores/transient_core.cpp

    r19192 r19200  
    8686                        if(VerboseSolution()) _printf0_("   computing thermal regime\n");
    8787                        if(smb_model==SMBpddEnum) ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
     88                        if(smb_model==SMBd18opddEnum) ResetBoundaryConditions(femmodel,ThermalAnalysisEnum);
    8889                        thermal_core(femmodel);
    8990                }
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp

    r19191 r19200  
    108108                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsIsdelta18oEnum));
    109109                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsIsmungsmEnum));
    110                         parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsIsd18opdEnum));
    111110                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsDesfacEnum));
    112111                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsS0pEnum));
     
    116115                        iomodel->Constant(&isdelta18o,SurfaceforcingsIsdelta18oEnum);
    117116                        iomodel->Constant(&ismungsm,SurfaceforcingsIsmungsmEnum);
    118                         iomodel->Constant(&isd18opd,SurfaceforcingsIsd18opdEnum);
    119117
    120118                        if(ismungsm){
     
    147145                                iomodel->DeleteData(temp,SurfaceforcingsDelta18oSurfaceEnum);
    148146                        }
     147                        break;
     148                case SMBd18opddEnum:
     149                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsIsmungsmEnum));
     150                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsIsd18opdEnum));
     151                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsDesfacEnum));
     152                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsS0pEnum));
     153                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsS0tEnum));
     154                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsRlapsEnum));
     155                        parameters->AddObject(iomodel->CopyConstantObject(SurfaceforcingsRlapslgmEnum));
     156                        iomodel->Constant(&ismungsm,SurfaceforcingsIsmungsmEnum);
     157                        iomodel->Constant(&isd18opd,SurfaceforcingsIsd18opdEnum);
    149158                        if(isd18opd){
    150159                                iomodel->Constant(&yts,ConstantsYtsEnum);
  • issm/trunk-jpl/src/c/modules/SurfaceMassBalancex/SurfaceMassBalancex.cpp

    r19172 r19200  
    2424                        femmodel->parameters->FindParam(&isdelta18o,SurfaceforcingsIsdelta18oEnum);
    2525                        femmodel->parameters->FindParam(&ismungsm,SurfaceforcingsIsmungsmEnum);
    26                         femmodel->parameters->FindParam(&isd18opd,SurfaceforcingsIsd18opdEnum);
    2726                        if(isdelta18o){
    2827                                if(VerboseSolution()) _printf0_("   call Delta18oParameterization module\n");
     
    3332                                MungsmtpParameterizationx(femmodel);
    3433                        }
     34                        if(VerboseSolution()) _printf0_("   call positive degree day module\n");
     35                        PositiveDegreeDayx(femmodel);
     36                        break;
     37                case SMBd18opddEnum:
     38                        femmodel->parameters->FindParam(&isd18opd,SurfaceforcingsIsd18opdEnum);
    3539                        if(isd18opd){
    3640                                if(VerboseSolution()) _printf0_("   call Delta18opdParameterization module\n");
    3741                                Delta18opdParameterizationx(femmodel);
    38                         }
    3942                        if(VerboseSolution()) _printf0_("   call positive degree day module\n");
    4043                        PositiveDegreeDayx(femmodel);
     44                        }
    4145                        break;
    4246                case SMBgradientsEnum:
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r19198 r19200  
    347347        SMBEnum,
    348348        SurfaceforcingsMassBalanceEnum,
    349         SMBpddEnum,
     349        SMBpddEnum,     
    350350        SurfaceforcingsDelta18oEnum,
    351351        SurfaceforcingsDelta18oSurfaceEnum,
     
    366366        SurfaceforcingsTdiffEnum,
    367367        SurfaceforcingsSealevEnum,
     368        SMBd18opddEnum,
    368369        SurfaceforcingsDpermilEnum,
    369370        SMBgradientsEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r19198 r19200  
    370370                case SurfaceforcingsTdiffEnum : return "SurfaceforcingsTdiff";
    371371                case SurfaceforcingsSealevEnum : return "SurfaceforcingsSealev";
     372                case SMBd18opddEnum : return "SMBd18opdd";
    372373                case SurfaceforcingsDpermilEnum : return "SurfaceforcingsDpermil";
    373374                case SMBgradientsEnum : return "SMBgradients";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r19198 r19200  
    376376              else if (strcmp(name,"SurfaceforcingsTdiff")==0) return SurfaceforcingsTdiffEnum;
    377377              else if (strcmp(name,"SurfaceforcingsSealev")==0) return SurfaceforcingsSealevEnum;
     378              else if (strcmp(name,"SMBd18opdd")==0) return SMBd18opddEnum;
    378379              else if (strcmp(name,"SurfaceforcingsDpermil")==0) return SurfaceforcingsDpermilEnum;
    379380              else if (strcmp(name,"SMBgradients")==0) return SMBgradientsEnum;
     
    382383              else if (strcmp(name,"SurfaceforcingsSmbref")==0) return SurfaceforcingsSmbrefEnum;
    383384              else if (strcmp(name,"SurfaceforcingsBPos")==0) return SurfaceforcingsBPosEnum;
    384               else if (strcmp(name,"SurfaceforcingsBNeg")==0) return SurfaceforcingsBNegEnum;
    385385         else stage=4;
    386386   }
    387387   if(stage==4){
    388               if (strcmp(name,"SMBhenning")==0) return SMBhenningEnum;
     388              if (strcmp(name,"SurfaceforcingsBNeg")==0) return SurfaceforcingsBNegEnum;
     389              else if (strcmp(name,"SMBhenning")==0) return SMBhenningEnum;
    389390              else if (strcmp(name,"SMBcomponents")==0) return SMBcomponentsEnum;
    390391              else if (strcmp(name,"SurfaceforcingsAccumulation")==0) return SurfaceforcingsAccumulationEnum;
     
    505506              else if (strcmp(name,"Numericalflux")==0) return NumericalfluxEnum;
    506507              else if (strcmp(name,"NumericalfluxType")==0) return NumericalfluxTypeEnum;
    507               else if (strcmp(name,"Param")==0) return ParamEnum;
    508508         else stage=5;
    509509   }
    510510   if(stage==5){
    511               if (strcmp(name,"Pengrid")==0) return PengridEnum;
     511              if (strcmp(name,"Param")==0) return ParamEnum;
     512              else if (strcmp(name,"Pengrid")==0) return PengridEnum;
    512513              else if (strcmp(name,"Penpair")==0) return PenpairEnum;
    513514              else if (strcmp(name,"Profiler")==0) return ProfilerEnum;
     
    628629              else if (strcmp(name,"StressTensoryz")==0) return StressTensoryzEnum;
    629630              else if (strcmp(name,"StressTensorzz")==0) return StressTensorzzEnum;
    630               else if (strcmp(name,"StressMaxPrincipal")==0) return StressMaxPrincipalEnum;
    631631         else stage=6;
    632632   }
    633633   if(stage==6){
    634               if (strcmp(name,"DeviatoricStress")==0) return DeviatoricStressEnum;
     634              if (strcmp(name,"StressMaxPrincipal")==0) return StressMaxPrincipalEnum;
     635              else if (strcmp(name,"DeviatoricStress")==0) return DeviatoricStressEnum;
    635636              else if (strcmp(name,"DeviatoricStressxx")==0) return DeviatoricStressxxEnum;
    636637              else if (strcmp(name,"DeviatoricStressxy")==0) return DeviatoricStressxyEnum;
     
    751752              else if (strcmp(name,"Outputdefinition66")==0) return Outputdefinition66Enum;
    752753              else if (strcmp(name,"Outputdefinition67")==0) return Outputdefinition67Enum;
    753               else if (strcmp(name,"Outputdefinition68")==0) return Outputdefinition68Enum;
    754754         else stage=7;
    755755   }
    756756   if(stage==7){
    757               if (strcmp(name,"Outputdefinition69")==0) return Outputdefinition69Enum;
     757              if (strcmp(name,"Outputdefinition68")==0) return Outputdefinition68Enum;
     758              else if (strcmp(name,"Outputdefinition69")==0) return Outputdefinition69Enum;
    758759              else if (strcmp(name,"Outputdefinition70")==0) return Outputdefinition70Enum;
    759760              else if (strcmp(name,"Outputdefinition71")==0) return Outputdefinition71Enum;
     
    874875              else if (strcmp(name,"Sset")==0) return SsetEnum;
    875876              else if (strcmp(name,"Verbose")==0) return VerboseEnum;
    876               else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
    877877         else stage=8;
    878878   }
    879879   if(stage==8){
    880               if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
     880              if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
     881              else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
    881882              else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
    882883              else if (strcmp(name,"XY")==0) return XYEnum;
  • issm/trunk-jpl/src/m/classes/SMBpdd.m

    r19172 r19200  
    1313                rlaps                     = 0;
    1414                rlapslgm                  = 0;
    15                 dpermil                   = 0;
    1615                Pfac                      = NaN;
    1716                Tdiff                     = NaN;
     
    1918                isdelta18o                = 0;
    2019                ismungsm                  = 0;
    21                 isd18opd                  = 0;
    2220                delta18o                  = NaN;
    2321                delta18o_surface          = NaN;
     
    3735                end % }}}
    3836                function self = extrude(self,md) % {{{
    39                         if(self.isdelta18o==0 & self.ismungsm==0 & self.isd18opd==0),self.precipitation=project3d(md,'vector',self.precipitation,'type','node');end
    40                         if(self.isdelta18o==0 & self.ismungsm==0 & self.isd18opd==0),self.monthlytemperatures=project3d(md,'vector',self.monthlytemperatures,'type','node');end
     37                        if(self.isdelta18o==0 & self.ismungsm==0),self.precipitation=project3d(md,'vector',self.precipitation,'type','node');end
     38                        if(self.isdelta18o==0 & self.ismungsm==0),self.monthlytemperatures=project3d(md,'vector',self.monthlytemperatures,'type','node');end
    4139                        if(self.isdelta18o),self.temperatures_lgm=project3d(md,'vector',self.temperatures_lgm,'type','node');end
    4240                        if(self.isdelta18o),self.temperatures_presentday=project3d(md,'vector',self.temperatures_presentday,'type','node');end
     
    4745                        if(self.ismungsm),self.precipitations_presentday=project3d(md,'vector',self.precipitations_presentday,'type','node');end
    4846                        if(self.ismungsm),self.precipitations_lgm=project3d(md,'vector',self.precipitations_lgm,'type','node');end
    49                         if(self.isd18opd),self.temperatures_presentday=project3d(md,'vector',self.temperatures_presentday,'type','node');end
    50                         if(self.isd18opd),self.precipitations_presentday=project3d(md,'vector',self.precipitations_presentday,'type','node');end
    5147
    5248                end % }}}
     
    6359                  self.isdelta18o = 0;
    6460                  self.ismungsm   = 0;
    65                   self.isd18opd   = 0;
    6661                  self.desfac     = 0.5;
    6762                  self.s0p        = 0;
     
    6964                  self.rlaps      = 6.5;
    7065                  self.rlapslgm   = 6.5;
    71                   self.dpermil    = 2.4;
    7266                 
    7367                end % }}}
     
    8074                                md = checkfield(md,'fieldname','surfaceforcings.rlaps','>=',0,'numel',1);
    8175                                md = checkfield(md,'fieldname','surfaceforcings.rlapslgm','>=',0,'numel',1);
    82                                 if(self.isdelta18o==0 & self.ismungsm==0 & self.isd18opd==0)
     76                                if(self.isdelta18o==0 & self.ismungsm==0)
    8377                                        md = checkfield(md,'fieldname','surfaceforcings.monthlytemperatures','timeseries',1,'NaN',1);
    8478                                        md = checkfield(md,'fieldname','surfaceforcings.precipitation','timeseries',1,'NaN',1);
     
    10094                                        md = checkfield(md,'fieldname','surfaceforcings.Tdiff','NaN',1);
    10195                                        md = checkfield(md,'fieldname','surfaceforcings.sealev','NaN',1);
    102                                 elseif(self.isd18opd==1)
    103                                         md = checkfield(md,'fieldname','surfaceforcings.temperatures_presentday','size',[md.mesh.numberofvertices+1 12],'NaN',1);
    104                                         md = checkfield(md,'fieldname','surfaceforcings.precipitations_presentday','size',[md.mesh.numberofvertices+1 12],'NaN',1);
    105                                         md = checkfield(md,'fieldname','surfaceforcings.delta18o','NaN',1);
    106                                         md = checkfield(md,'fieldname','surfaceforcings.dpermil','>=',0,'numel',1);
    10796                                end
    10897                        end
     
    114103                        fielddisplay(self,'isdelta18o','is temperature and precipitation delta18o parametrisation activated (0 or 1, default is 0)');
    115104                        fielddisplay(self,'ismungsm','is temperature and precipitation mungsm parametrisation activated (0 or 1, default is 0)');
    116                         fielddisplay(self,'isd18opd','is delta18o parametrisation from present day temperature and precipitation activated (0 or 1, default is 0)');
    117105                        fielddisplay(self,'desfac','desertification elevation factor (between 0 and 1, default is 0.5) [m]');
    118106                        fielddisplay(self,'s0p','should be set to elevation from precip source (between 0 and a few 1000s m, default is 0) [m]');
     
    120108                        fielddisplay(self,'rlaps','present day lapse rate [degree/km]');
    121109                        fielddisplay(self,'rlapslgm','LGM lapse rate [degree/km]');
    122                         if(self.isdelta18o==0 & self.ismungsm==0 & self.isd18opd==0)
     110                        if(self.isdelta18o==0 & self.ismungsm==0)
    123111                            fielddisplay(self,'monthlytemperatures',['monthly surface temperatures [K], required if pdd is activated and delta18o not activated']);
    124112                            fielddisplay(self,'precipitation',['monthly surface precipitation [m/yr water eq], required if pdd is activated and delta18o or mungsm not activated']);
     
    128116                            fielddisplay(self,'temperatures_presentday','monthly present day surface temperatures [K], required if delta18o/mungsm is activated');
    129117                            fielddisplay(self,'temperatures_lgm','monthly LGM surface temperatures [K], required if delta18o or mungsm is activated');
    130                             fielddisplay(self,'precipitations_presentday','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm/d18opd is activated');
     118                            fielddisplay(self,'precipitations_presentday','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm is activated');
    131119                            fielddisplay(self,'precipitations_lgm','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm is activated');
    132120                            fielddisplay(self,'Tdiff','time interpolation parameter for temperature, 1D(year), required if mungsm is activated');
    133121                            fielddisplay(self,'sealev','sea level [m], 1D(year), required if mungsm is activated');
    134122                        elseif(self.ismungsm==1)
    135                             fielddisplay(self,'temperatures_presentday','monthly present day surface temperatures [K], required if delta18o/mungsm/d18opd is activated');
     123                            fielddisplay(self,'temperatures_presentday','monthly present day surface temperatures [K], required if delta18o/mungsm is activated');
    136124                            fielddisplay(self,'temperatures_lgm','monthly LGM surface temperatures [K], required if delta18o or mungsm is activated');
    137                             fielddisplay(self,'precipitations_presentday','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm/d18opd is activated');
     125                            fielddisplay(self,'precipitations_presentday','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm is activated');
    138126                            fielddisplay(self,'precipitations_lgm','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm is activated');
    139127                            fielddisplay(self,'Pfac','time interpolation parameter for precipitation, 1D(year), required if mungsm is activated');
    140128                            fielddisplay(self,'Tdiff','time interpolation parameter for temperature, 1D(year), required if mungsm is activated');
    141129                            fielddisplay(self,'sealev','sea level [m], 1D(year), required if mungsm is activated');
    142                         elseif(self.isd18opd==1)
    143                             fielddisplay(self,'temperatures_presentday','monthly present day surface temperatures [K], required if delta18o/mungsm/d18opd is activated');
    144                             fielddisplay(self,'precipitations_presentday','monthly surface precipitation [m/yr water eq], required if delta18o/mungsm/d18opd is activated');
    145                             fielddisplay(self,'delta18o','delta18o, required if pdd is activated and d18opd activated'); 
    146                             fielddisplay(self,'dpermil','degree per mil, required if d18opd is activated');                           
    147130                        end
    148131                end % }}}
     
    155138                        WriteData(fid,'object',self,'class','surfaceforcings','fieldname','isdelta18o','format','Boolean');
    156139                        WriteData(fid,'object',self,'class','surfaceforcings','fieldname','ismungsm','format','Boolean');
    157                         WriteData(fid,'object',self,'class','surfaceforcings','fieldname','isd18opd','format','Boolean');
    158140                        WriteData(fid,'object',self,'class','surfaceforcings','fieldname','desfac','format','Double');
    159141                        WriteData(fid,'object',self,'class','surfaceforcings','fieldname','s0p','format','Double');
     
    162144                        WriteData(fid,'object',self,'class','surfaceforcings','fieldname','rlapslgm','format','Double');
    163145
    164                         if(self.isdelta18o==0 & self.ismungsm==0 & self.isd18opd==0)
     146                        if(self.isdelta18o==0 & self.ismungsm==0)
    165147                                %WriteData(fid,'object',self,'class','surfaceforcings','fieldname','monthlytemperatures','format','DoubleMat','mattype',1);
    166148                                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','monthlytemperatures','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1);
     
    183165                                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','Tdiff','format','DoubleMat','mattype',1);
    184166                                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','sealev','format','DoubleMat','mattype',1);
    185                         elseif self.isd18opd
    186                                 WriteData(fid,'object',self,'class','surfaceforcings','fieldname','temperatures_presentday','format','DoubleMat','mattype',1);
    187                                 WriteData(fid,'object',self,'class','surfaceforcings','fieldname','precipitations_presentday','format','DoubleMat','mattype',1);
    188                                 WriteData(fid,'object',self,'class','surfaceforcings','fieldname','delta18o','format','DoubleMat','mattype',1);
    189                                 WriteData(fid,'object',self,'class','surfaceforcings','fieldname','dpermil','format','Double');
    190167                        end
    191168                end % }}}
  • issm/trunk-jpl/src/m/classes/SMBpdd.py

    r19190 r19200  
    2727                self.isdelta18o                = 0
    2828                self.ismungsm                  = 0
    29                 self.isd18opd                  = 0
    3029                self.delta18o                  = float('NaN')
    3130                self.delta18o_surface          = float('NaN')
     
    4342                string="%s\n%s"%(string,fielddisplay(self,'isdelta18o','is temperature and precipitation delta18o parametrisation activated (0 or 1, default is 0)'))
    4443                string="%s\n%s"%(string,fielddisplay(self,'ismungsm','is temperature and precipitation mungsm parametrisation activated (0 or 1, default is 0)'))
    45                 string="%s\n%s"%(string,fielddisplay(self,'isd18opd','is delta18o parametrisation from present day temperature and precipitation activated (0 or 1, default is 0)'))
    4644                string="%s\n%s"%(string,fielddisplay(self,'desfac','desertification elevation factor (between 0 and 1, default is 0.5) [m]'))
    4745                string="%s\n%s"%(string,fielddisplay(self,'s0p','should be set to elevation from precip source (between 0 and a few 1000s m, default is 0) [m]'))
     
    7371        def extrude(self,md): # {{{
    7472
    75                 if not (self.isdelta18o and self.ismungsm and self.isd18opd):
     73                if not (self.isdelta18o and self.ismungsm):
    7674                        self.precipitation=project3d(md,'vector',self.precipitation,'type','node')
    7775                        self.monthlytemperatures=project3d(md,'vector',self.monthlytemperatures,'type','node')
     
    116114                        md = checkfield(md,'fieldname','surfaceforcings.rlapslgm','>=',0,'numel',[1])
    117115
    118                         if (self.isdelta18o==0 and self.ismungsm==0 and self.isd18opd):
     116                        if (self.isdelta18o==0 and self.ismungsm==0):
    119117                                md = checkfield(md,'fieldname','surfaceforcings.monthlytemperatures','NaN',1)
    120118                                md = checkfield(md,'fieldname','surfaceforcings.precipitation','NaN',1)
     
    147145                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','isdelta18o','format','Boolean')
    148146                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','ismungsm','format','Boolean')
    149                 WriteData(fid,'object',self,'class','surfaceforcings','fieldname','isd18opd','format','Boolean')
    150147                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','desfac','format','Double')
    151148                WriteData(fid,'object',self,'class','surfaceforcings','fieldname','s0p','format','Double')
  • issm/trunk-jpl/src/m/classes/clusters/acenet.m

    r19184 r19200  
    7474          % fprintf(fid,'#$ -l h_rt=336:00:0\n');
    7575
    76           fprintf(fid,'#$ -l h_vmem=3G\n');
    77           % if cluster.np>10
    78           %     fprintf(fid,'#$ -l h_vmem=3G\n');
    79           % else
    80           %     fprintf(fid,'#$ -l h_vmem=3G\n');
    81           % end
     76          fprintf(fid,'#$ -l h_vmem=2G\n');
    8277
    8378          % ---- Which queue to use ----
    84           %fprintf(fid,'#$ -q !tarasov.q\n'); %
     79          % fprintf(fid,'#$ -q tarasov.q\n'); %
    8580          %fprintf(fid,'#$ -q medium.q@*,short.q@*\n');
    8681          fprintf(fid,'#$ -q short.q@*\n');
    8782
    8883          % ---- Which node are selected ----
    89           % fprintf(fid,'#$ -l h=cl27*|cl28*|cl29*|cl30*|cl31*|cl320|cl267|cl268|cl269|cl338 \n');
    90           %fprintf(fid,'#$ -l h=cl0* \n');
     84          %fprintf(fid,'#$ -l h=cl27*|cl28*|cl29*|cl30*|cl31*|cl320|cl267|cl268|cl269|cl338 \n');
     85          % fprintf(fid,'#$ -l h=cl0* \n');
    9186          %fprintf(fid,'#$ -l h=cl338 \n');
    9287          % Acenet nodes with 16cpus and more than 60G mem
     
    9489 
    9590          % ---- cpus on different nodes ----
    96            fprintf(fid,'#$ -pe ompi %i\n',cluster.np); % To avoid green acenet that does not have InfiniBand
     91          fprintf(fid,'#$ -pe ompi %i\n',cluster.np); % To avoid green acenet that does not have InfiniBand
    9792          % fprintf(fid,'#$ -pe ompi* %i\n',cluster.np);
    9893          % -------- All cpus in the same node --------         
    99           %fprintf(fid,'#$ -pe openmp %i\n',cluster.np);
     94          % fprintf(fid,'#$ -pe openmp %i\n',cluster.np);
    10095         
    10196          % ---- misc ----
  • issm/trunk-jpl/src/m/enum/EnumDefinitions.py

    r19198 r19200  
    362362def SurfaceforcingsTdiffEnum(): return StringToEnum("SurfaceforcingsTdiff")[0]
    363363def SurfaceforcingsSealevEnum(): return StringToEnum("SurfaceforcingsSealev")[0]
     364def SMBd18opddEnum(): return StringToEnum("SMBd18opdd")[0]
    364365def SurfaceforcingsDpermilEnum(): return StringToEnum("SurfaceforcingsDpermil")[0]
    365366def SMBgradientsEnum(): return StringToEnum("SMBgradients")[0]
Note: See TracChangeset for help on using the changeset viewer.