Changeset 23027


Ignore:
Timestamp:
07/30/18 15:35:06 (7 years ago)
Author:
caronlam
Message:

fixing missing fields in slr.py and slr.m

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/m/classes/slr.py

    r23019 r23027  
    2525                self.tide_love_h            = 0
    2626                self.tide_love_k            = 0
    27                 self.fluid_love             = 0;
    28                 self.equatorial_moi         = 0;
    29                 self.polar_moi               = 0;
    30                 self.angular_velocity       = 0;
     27                self.fluid_love             = 0
     28                self.equatorial_moi         = 0
     29                self.polar_moi              = 0
     30                self.angular_velocity       = 0
    3131                self.rigid                  = 0
    3232                self.elastic                = 0
    3333                self.rotation               = 0
    34                 self.ocean_area_scaling     = 0;
    35                 steric_rate                                         = 0; #rate of ocean expansion from steric effects.
    36                 self.geodetic_run_frequency = 1; #how many time steps we skip before we run the geodetic part of the solver during transient
    37                 self.geodetic               = 0; #compute geodetic SLR? (in addition to steric?)
     34                self.ocean_area_scaling     = 0
     35                self.steric_rate            = 0 #rate of ocean expansion from steric effects.
     36                self.geodetic_run_frequency = 1 #how many time steps we skip before we run the geodetic part of the solver during transient
     37                self.geodetic               = 0 #compute geodetic SLR? (in addition to steric?)
    3838                self.degacc                 = 0
     39                self.loop_increment         = 0
     40                self.horiz                  = 0
     41                self.Ngia                   = float('NaN')
     42                self.Ugia                   = float('NaN')
    3943                self.requested_outputs      = []
    4044                self.transitions            = []
     
    5963                        string="%s\n%s"%(string,fielddisplay(self,'polar_moi','polar moment of inertia [kg m^2]'))
    6064                        string="%s\n%s"%(string,fielddisplay(self,'angular_velocity','mean rotational velocity of earth [per second]'));
     65                        string="%s\n%s"%(string,fielddisplay(self,'ocean_area_scaling','correction for model representation of ocean area [default: No correction]'))
     66                        string="%s\n%s"%(string,fielddisplay(self,'steric_rate','rate of steric ocean expansion [mm/yr]'))
     67                        string="%s\n%s"%(string,fielddisplay(self,'Ngia','rate of viscous (GIA) geoid expansion (in mm/yr)')
     68                        string="%s\n%s"%(string,fielddisplay(self,'Ugia','rate of viscous (GIA) bedrock uplift (in mm/yr)')
     69                        string="%s\n%s"%(string,fielddisplay(self,'loop_increment','vector assembly (in the convolution) framentation')
     70                        string="%s\n%s"%(string,fielddisplay(self,'geodetic','compute geodetic SLR? ( in addition to steric?) default 0');
     71                        string="%s\n%s"%(string,fielddisplay(self,'geodetic_run_frequency','how many time steps we skip before we run SLR solver during transient (default: 1)');
    6172                        string="%s\n%s"%(string,fielddisplay(self,'rigid','rigid earth graviational potential perturbation'))
    6273                        string="%s\n%s"%(string,fielddisplay(self,'elastic','elastic earth graviational potential perturbation'))
    6374                        string="%s\n%s"%(string,fielddisplay(self,'rotation','earth rotational potential perturbation'))
    64                         string="%s\n%s"%(string,fielddisplay(self,'ocean_area_scaling','correction for model representation of ocean area [default: No correction]'))
    65                         string="%s\n%s"%(string,fielddisplay(self,'steric_rate','rate of steric ocean expansion [mm/yr]'))
    6675                        string="%s\n%s"%(string,fielddisplay(self,'degacc','accuracy (default .01 deg) for numerical discretization of the Green''s functions'))
    6776                        string="%s\n%s"%(string,fielddisplay(self,'transitions','indices into parts of the mesh that will be icecaps'))
     
    7887                #maximum of non-linear iterations.
    7988                self.maxiter=5
     89                self.loop_increment=200;
    8090
    8191                #computational flags:
     
    142152                md = checkfield(md,'fieldname','slr.steric_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]);
    143153                md = checkfield(md,'fieldname','slr.degacc','size',[1,1],'>=',1e-10)
     154                md = checkfield(md,'fieldname','slr.loop_increment','NaN',1,'Inf',1,'>=',1);
     155                md = checkfield(md,'fieldname','slr.horiz','NaN',1,'Inf',1,'values',[0 1]);
     156                md = checkfield(md,'fieldname','slr.Ngia','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]);
     157                md = checkfield(md,'fieldname','slr.Ugia','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]);
    144158                md = checkfield(md,'fieldname','slr.requested_outputs','stringrow',1)
    145159
     
    174188                WriteData(fid,prefix,'object',self,'fieldname','steric_rate','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts);
    175189                WriteData(fid,prefix,'object',self,'fieldname','degacc','format','Double')
     190                WriteData(fid,prefix,'object',self,'fieldname','loop_increment','format','Integer');
     191                WriteData(fid,prefix,'object',self,'fieldname','horiz','format','Integer');
     192                WriteData(fid,prefix,'object',self,'fieldname','Ngia','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts);
     193                WriteData(fid,prefix,'object',self,'fieldname','Ugia','format','DoubleMat','mattype',1,'scale',1e-3/md.constants.yts);
    176194                WriteData(fid,prefix,'object',self,'fieldname','transitions','format','MatArray')
    177195                WriteData(fid,prefix,'object',self,'fieldname','geodetic','format','Integer')
Note: See TracChangeset for help on using the changeset viewer.