Changeset 24667


Ignore:
Timestamp:
03/16/20 03:48:59 (5 years ago)
Author:
rueckamp
Message:

CHG: missing python files

Location:
issm/trunk-jpl/src/m/classes
Files:
3 edited

Legend:

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

    r24213 r24667  
    1919        self.coupling = 0
    2020        self.effective_pressure = float('NaN')
     21        self.effective_pressure_limit = 0
    2122    #set defaults
    2223        self.setdefaultparameters()
     
    3233        string = "%s\n%s" % (string, fielddisplay(self, 'coupling', 'Coupling flag 0: uniform sheet (negative pressure ok, default), 1: ice pressure only, 2: water pressure assuming uniform sheet (no negative pressure), 3: use provided effective_pressure, 4: used coupled model (not implemented yet)'))
    3334        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure', 'Effective Pressure for the forcing if not coupled [Pa]'))
     35        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure_limit','Neff do not allow to fall below a certain limit: effective_pressure_limit*rho_ice*g*thickness (default 0)'))
    3436        string = "%s\n%s" % (string, fielddisplay(self, 'requested_outputs', 'additional outputs requested'))
    3537        return string
     
    5052    def setdefaultparameters(self):  # {{{
    5153        self.requested_outputs = ['default']
     54        self.effective_pressure_limit = 0
    5255        return self
    5356    #}}}
     
    6871        md = checkfield(md, 'fieldname', 'friction.p', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofelements])
    6972        md = checkfield(md, 'fieldname', 'friction.coupling', 'numel', [1], 'values', [0, 1, 2, 3, 4])
     73        md = checkfield(md, 'fieldname', 'friction.effective_pressure_limit','numel',[1],'>=',0)
    7074        if self.coupling == 3:
    7175            md = checkfield(md, 'fieldname', 'friction.effective_pressure', 'NaN', 1, 'Inf', 1, 'timeseries', 1)
     
    8286        WriteData(fid, prefix, 'object', self, 'fieldname', 'q', 'format', 'DoubleMat', 'mattype', 2)
    8387        WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'coupling', 'format', 'Integer')
     88        WriteData(fid, prefix, 'object', self,'class','friction','fieldname','effective_pressure_limit','format','Double')
    8489        if self.coupling == 3:
    8590            WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'effective_pressure', 'format', 'DoubleMat', 'mattype', 1, 'timeserieslength', md.mesh.numberofvertices + 1, 'yts', md.constants.yts)
  • TabularUnified issm/trunk-jpl/src/m/classes/frictioncoulomb.py

    r24213 r24667  
    2020        self.coupling = 0
    2121        self.effective_pressure = float('NaN')
     22        self.effective_pressure_limit = 0
    2223    #set defaults
    2324        self.setdefaultparameters()
     
    3233        string = "%s\n%s" % (string, fielddisplay(self, 'coupling', 'Coupling flag: 0 for default, 1 for forcing(provide md.friction.effective_pressure)  and 2 for coupled(not implemented yet)'))
    3334        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure', 'Effective Pressure for the forcing if not coupled [Pa]'))
     35        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure_limit','Neff do not allow to fall below a certain limit: effective_pressure_limit*rho_ice*g*thickness (default 0)'))
    3436        return string
    3537    #}}}
     
    5052
    5153    def setdefaultparameters(self):  # {{{
    52         return self
     54        self.effective_pressure_limit = 0
     55        return self
    5356    #}}}
    5457
     
    6265        md = checkfield(md, 'fieldname', 'friction.q', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofelements])
    6366        md = checkfield(md, 'fieldname', 'friction.p', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofelements])
     67        md = checkfield(md, 'fieldname', 'friction.effective_pressure_limit','numel',[1],'>=',0)
    6468        if self.coupling == 1:
    6569            md = checkfield(md, 'fieldname', 'friction.effective_pressure', 'NaN', 1, 'Inf', 1, 'timeseries', 1)
     
    7882        WriteData(fid, prefix, 'object', self, 'fieldname', 'q', 'format', 'DoubleMat', 'mattype', 2)
    7983        WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'coupling', 'format', 'Integer')
     84        WriteData(fid, prefix, 'object', self,'class','friction','fieldname','effective_pressure_limit','format','Double')
    8085        if self.coupling == 1:
    8186            WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'effective_pressure', 'format', 'DoubleMat', 'mattype', 1, 'timeserieslength', md.mesh.numberofvertices + 1, 'yts', md.constants.yts)
  • TabularUnified issm/trunk-jpl/src/m/classes/frictionhydro.py

    r24213 r24667  
    1919        self.As = np.nan
    2020        self.effective_pressure = np.nan
     21        self.effective_pressure_limit = 0
    2122    #set defaults
    2223
     
    3132        string = "%s\n%s" % (string, fielddisplay(self, 'As', 'Sliding Parameter without cavitation [m Pa^ - n s^ - 1]'))
    3233        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure', 'Effective Pressure for the forcing if not coupled [Pa]'))
     34        string = "%s\n%s" % (string, fielddisplay(self, 'effective_pressure_limit','Neff do not allow to fall below a certain limit: effective_pressure_limit*rho_ice*g*thickness (default 0)'))
    3335
    3436        return string
     
    4951        self.coupling = 0
    5052        self.effective_pressure = np.nan
    51 
     53        self.effective_pressure_limit = 0
    5254        return self
    5355    # }}}
     
    6264        md = checkfield(md, 'fieldname', 'friction.C', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofelements])
    6365        md = checkfield(md, 'fieldname', 'friction.As', 'NaN', 1, 'Inf', 1, 'size', [md.mesh.numberofelements])
     66        md = checkfield(md, 'fieldname', 'friction.effective_pressure_limit','numel',[1],'>=',0)
    6467        if self.coupling == 3:
    6568            md = checkfield(md, 'fieldname', 'friction.effective_pressure', 'NaN', 1, 'Inf', 1, 'timeseries', 1)
     
    7477        WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'C', 'format', 'DoubleMat', 'mattype', 2)
    7578        WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'As', 'format', 'DoubleMat', 'mattype', 2)
     79        WriteData(fid, prefix, 'object', self,'class','friction','fieldname','effective_pressure_limit','format','Double')
    7680        if self.coupling in[3, 4]:
    7781            WriteData(fid, prefix, 'class', 'friction', 'object', self, 'fieldname', 'effective_pressure', 'format', 'DoubleMat', 'mattype', 1, 'timeserieslength', md.mesh.numberofvertices + 1, 'yts', md.constants.yts)
Note: See TracChangeset for help on using the changeset viewer.