Changeset 26274


Ignore:
Timestamp:
05/17/21 14:08:16 (4 years ago)
Author:
caronlam
Message:

CHG: removing BarystaticSealevel field from SolidEarth External solution. NEW: test2008 for additionalsolidearthsolution class

Location:
issm/trunk-jpl
Files:
1 added
8 edited

Legend:

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

    r26272 r26274  
    4242        /*external solidearthsolution: solid-Earth model*/
    4343        iomodel->FetchData(&isexternal,"md.solidearth.isexternal");
     44
    4445        if(isexternal){
    4546                iomodel->FetchDataToInput(inputs,elements,"md.solidearth.external.displacementeast",SolidearthExternalDisplacementEastRateEnum);
     
    4748                iomodel->FetchDataToInput(inputs,elements,"md.solidearth.external.displacementup",SolidearthExternalDisplacementUpRateEnum);
    4849                iomodel->FetchDataToInput(inputs,elements,"md.solidearth.external.geoid",SolidearthExternalGeoidRateEnum);
    49                 iomodel->FetchDataToInput(inputs,elements,"md.solidearth.external.barystaticsealevel",SolidearthExternalBarystaticSeaLevelRateEnum);
     50
    5051
    5152                /*Resolve Mmes using the modelid, if necessary:*/
     
    6162                        MmeToInputFromIdx(inputs,elements,modelid,SolidearthExternalDisplacementUpRateEnum, P1Enum);
    6263                        MmeToInputFromIdx(inputs,elements,modelid,SolidearthExternalGeoidRateEnum, P1Enum);
    63                         MmeToInputFromIdx(inputs,elements,modelid,SolidearthExternalBarystaticSeaLevelRateEnum, P1Enum);
    6464                }
    6565        }
     
    159159        parameters->AddObject(iomodel->CopyConstantObject("md.solidearth.planetradius",SolidearthPlanetRadiusEnum));
    160160        parameters->AddObject(iomodel->CopyConstantObject("md.solidearth.settings.cross_section_shape",SolidearthSettingsCrossSectionShapeEnum));
     161
    161162        parameters->AddObject(new DoubleParam(CumBslcEnum,0.0));
    162163        parameters->AddObject(new DoubleParam(CumBslcIceEnum,0.0));
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r26272 r26274  
    385385        SolidearthSettingsRigidEnum,
    386386        SolidearthSettingsRotationEnum,
     387        SolidearthSettingsMaxSHCoeffEnum,
    387388        SealevelchangeRunCountEnum,
    388389        SealevelchangeTransitionsEnum,
     
    952953        SolidearthExternalDisplacementUpRateEnum,
    953954        SolidearthExternalGeoidRateEnum,
    954         SolidearthExternalBarystaticSeaLevelRateEnum,
    955955        StackRSLEnum,
    956956        StackUEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r26272 r26274  
    957957                case SolidearthExternalDisplacementUpRateEnum : return "SolidearthExternalDisplacementUpRate";
    958958                case SolidearthExternalGeoidRateEnum : return "SolidearthExternalGeoidRate";
    959                 case SolidearthExternalBarystaticSeaLevelRateEnum : return "SolidearthExternalBarystaticSeaLevelRate";
    960959                case StackRSLEnum : return "StackRSL";
    961960                case StackUEnum : return "StackU";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r26272 r26274  
    978978              else if (strcmp(name,"SolidearthExternalDisplacementUpRate")==0) return SolidearthExternalDisplacementUpRateEnum;
    979979              else if (strcmp(name,"SolidearthExternalGeoidRate")==0) return SolidearthExternalGeoidRateEnum;
    980               else if (strcmp(name,"SolidearthExternalBarystaticSeaLevelRate")==0) return SolidearthExternalBarystaticSeaLevelRateEnum;
    981980              else if (strcmp(name,"StackRSL")==0) return StackRSLEnum;
    982981              else if (strcmp(name,"StackU")==0) return StackUEnum;
  • issm/trunk-jpl/src/m/classes/mmeadditionalsolidearthsolution.m

    r26231 r26274  
    3232                        sup=length(self.displacementup);
    3333                        sgeoid=length(self.geoid);
    34                         sbarystaticsealevel=length(self.barystaticsealevel);
    3534
    3635                        if (seast-snorth)~=0,
     
    4544                                error('mmeadditionalsolidearthsolution checkconsistency error message: displacementeast and geoid should be the same size');
    4645                        end
    47 
    48                         if (seast-sbarystaticsealevel)~=0,
    49                                 error('mmeadditionalsolidearthsolution checkconsistency error message: displacementeast and barystaticsealevel should be the same size');
    50                         end
    5146                       
    5247                        md = checkfield(md,'field',self.modelid,'NaN',1,'Inf',1,'>=',1,'<=',length(self.displacementeast));
     
    5752                                md = checkfield(md,'field',self.displacementnorth{i},'NaN',1,'Inf',1,'timeseries',1);
    5853                                md = checkfield(md,'field',self.geoid{i},'NaN',1,'Inf',1,'timeseries',1);
    59                                 md = checkfield(md,'field',self.barystaticsealevel{i},'NaN',1,'Inf',1,'timeseries',1);
    6054                        end
    6155
     
    8074                                displacementup=self.displacementup{i};
    8175                                geoid=self.geoid{i};
    82                                 barystaticsealevel=self.barystaticsealevel{i};
    8376
    8477                                time=displacementeast(end,:);
     
    8982                                displacementup_rate=diff(displacementup(1:end-1,:),1,2)./dt;
    9083                                geoid_rate=diff(geoid(1:end-1,:),1,2)./dt;
    91                                 barystaticsealevel_rate=diff(barystaticsealevel(1:end-1,:),1,2)./dt;
    9284
    9385                                self.displacementeast{i}=displacementeast_rate;
     
    9587                                self.displacementup{i}=displacementup_rate;
    9688                                self.geoid{i}=geoid_rate;
    97                                 self.barystaticsealevel{i}=barystaticsealevel_rate;
    9889                        end
    9990                       
     
    10293                        WriteData(fid,prefix,'object',self,'fieldname','displacementnorth','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    10394                        WriteData(fid,prefix,'object',self,'fieldname','geoid','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    104                         WriteData(fid,prefix,'object',self,'fieldname','barystaticsealevel','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    10595
    10696                end % }}}
  • issm/trunk-jpl/src/m/classes/mmeofflinesolidearthsolution.m

    r26231 r26274  
    3232                        sup=length(self.displacementup);
    3333                        sgeoid=length(self.geoid);
    34                         sbarystaticsealevel=length(self.barystaticsealevel);
    3534
    3635                        if (seast-snorth)~=0,
     
    4544                                error('mmeofflinesolidearthsolution checkconsistency error message: displacementeast and geoid should be the same size');
    4645                        end
    47 
    48                         if (seast-sbarystaticsealevel)~=0,
    49                                 error('mmeofflinesolidearthsolution checkconsistency error message: displacementeast and barystaticsealevel should be the same size');
    50                         end
    5146                       
    5247                        md = checkfield(md,'field',self.modelid,'NaN',1,'Inf',1,'>=',1,'<=',length(self.displacementeast));
     
    5752                                md = checkfield(md,'field',self.displacementnorth{i},'NaN',1,'Inf',1,'timeseries',1);
    5853                                md = checkfield(md,'field',self.geoid{i},'NaN',1,'Inf',1,'timeseries',1);
    59                                 md = checkfield(md,'field',self.barystaticsealevel{i},'NaN',1,'Inf',1,'timeseries',1);
    6054                        end
    6155
     
    7973                                displacementup=self.displacementup{i};
    8074                                geoid=self.geoid{i};
    81                                 barystaticsealevel=self.barystaticsealevel{i};
    8275
    8376                                time=displacementeast(end,:);
     
    9487                                self.displacementup{i}=displacementup_rate;
    9588                                self.geoid{i}=geoid_rate;
    96                                 self.barystaticsealevel{i}=barystaticsealevel_rate;
    9789                        end
    9890                       
     
    10193                        WriteData(fid,prefix,'object',self,'fieldname','displacementnorth','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    10294                        WriteData(fid,prefix,'object',self,'fieldname','geoid','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    103                         WriteData(fid,prefix,'object',self,'fieldname','barystaticsealevel','format','MatArray','timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1/yts);
    10495
    10596                end % }}}
  • issm/trunk-jpl/src/m/classes/solidearthsolution.m

    r26229 r26274  
    1010                displacementup=[];
    1111                geoid=[];
    12                 barystaticsealevel=[];
    1312        end
    1413        methods
     
    2726                        self.displacementup=[];
    2827                        self.geoid=[];
    29                         self.barystaticsealevel=[];
    3028       
    3129                end % }}}
     
    3634                        md = checkfield(md,'fieldname','solidearth.external.displacementup','Inf',1,'timeseries',1);
    3735                        md = checkfield(md,'fieldname','solidearth.external.geoid','Inf',1,'timeseries',1);
    38                         md = checkfield(md,'fieldname','solidearth.external.barystaticsealevel','Inf',1,'timeseries',1);
    3936
    4037                end % }}}
     
    4542                        fielddisplay(self,'displacementup','solid-Earth bedrock uplift time series (m)');
    4643                        fielddisplay(self,'geoid','solid-Earth geoid time series (m)');
    47                         fielddisplay(self,'barystaticsealevel','barystatic absolute sea-level time series (m)');
    4844
    4945                end % }}}
     
    5854                                displacementup_rate=[self.displacementup;0];
    5955                                geoid_rate=[self.geoid;0];
    60                                 barystaticsealevel_rate=[self.barystaticsealevel;0];
    6156                        else
    6257                                time=self.displacementeast(end,:);
     
    7065                                geoid_rate=diff(self.geoid(1:end-1,:),1,2)./dt;
    7166                                geoid_rate(end+1,:)=time(1:end-1);
    72                                 barystaticsealevel_rate=diff(self.barystaticsealevel(1:end-1,:),1,2)./dt;
    73                                 barystaticsealevel_rate(end+1,:)=time(1:end-1);
    7467                        end
    7568                        WriteData(fid,prefix,'object',self,'fieldname','displacementeast','data',displacementeast_rate,'format','DoubleMat','name', 'md.solidearth.external.displacementeast','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
     
    7770                        WriteData(fid,prefix,'object',self,'fieldname','displacementnorth','data',displacementnorth_rate,'format','DoubleMat','name', 'md.solidearth.external.displacementnorth','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
    7871                        WriteData(fid,prefix,'object',self,'fieldname','geoid','data',geoid_rate,'format','DoubleMat','name', 'md.solidearth.external.geoid','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
    79                         WriteData(fid,prefix,'object',self,'fieldname','barystaticsealevel','data',barystaticsealevel_rate,'format','DoubleMat','name', 'md.solidearth.external.barystaticsealevel','mattype',1,'scale',1./yts,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
    8072                       
    8173                end % }}}
     
    8577                        writejs1Darray(fid,[modelname '.solidearth.external.displacementup'],self.displacementup);
    8678                        writejs1Darray(fid,[modelname '.solidearth.external.geoid'],self.geoid);
    87                         writejs1Darray(fid,[modelname '.solidearth.external.barystaticsealevel'],self.barystaticsealevel);
    8879                end % }}}
    8980                function self = extrude(self,md) % {{{
  • issm/trunk-jpl/test/NightlyRun/test2007.m

    r26248 r26274  
    2424md.solidearth.external.displacementnorth=longe .*time;
    2525md.solidearth.external.displacementnorth(end+1,:)=time;
    26 md.solidearth.external.barystaticsealevel=0*late .*time;
    27 md.solidearth.external.barystaticsealevel(end+1,:)=time;
    2826md.initialization.sealevel=zeros(md.mesh.numberofvertices,1);
    2927
Note: See TracChangeset for help on using the changeset viewer.