Changeset 26444
- Timestamp:
- 09/20/21 17:53:55 (3 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/calvingcrevassedepth.m
r24305 r26444 6 6 classdef calvingcrevassedepth 7 7 properties (SetAccess=public) 8 crevasse_opening_stress=1.; 8 crevasse_opening_stress=1; 9 crevasse_threshold =1.; 9 10 water_height = 0.; 10 11 end … … 32 33 function self = setdefaultparameters(self) % {{{ 33 34 34 self.water_height = 0.; 35 crevasse_opening_stress=1.; 35 crevasse_threshold = 1.; 36 crevasse_opening_stress = 1; 37 self.water_height = 0.; 36 38 end % }}} 37 39 function md = checkconsistency(self,md,solution,analyses) % {{{ … … 40 42 41 43 md = checkfield(md,'fieldname','calving.crevasse_opening_stress','numel',[1],'values',[0,1]); 44 md = checkfield(md,'fieldname','calving.crevasse_threshold','numel',[1],'values',[0,1]); 42 45 md = checkfield(md,'fieldname','calving.water_height','NaN',1,'Inf',1,'timeseries',1,'>=',0); 43 46 end % }}} … … 45 48 disp(sprintf(' Calving Pi parameters:')); 46 49 fielddisplay(self,'crevasse_opening_stress','0: stress only in the ice-flow direction, 1: max principal'); 50 fielddisplay(self,'crevasse_threshold','ratio of full thickness to calve (e.g. 0.75 is for 75% of the total ice thickness)'); 47 51 fielddisplay(self,'water_height','water height in the crevasse [m]'); 48 52 … … 52 56 WriteData(fid,prefix,'name','md.calving.law','data',6,'format','Integer'); 53 57 WriteData(fid,prefix,'object',self,'fieldname','crevasse_opening_stress','format','Integer'); 58 WriteData(fid,prefix,'object',self,'fieldname','crevasse_threshold','format','Double'); 54 59 WriteData(fid,prefix,'object',self,'fieldname','water_height','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts); 55 60 end % }}} -
issm/trunk-jpl/src/m/classes/calvingcrevassedepth.py
r25844 r26444 14 14 def __init__(self): # {{{ 15 15 self.crevasse_opening_stress = 1 16 self.water_height = 0 16 self.crevasse_threshold = 1. 17 self.water_height = 0. 17 18 18 19 #self.setdefaultparameters() # Uncomment if/when setdefaultparameters is used 19 20 #}}} 20 21 21 def __repr__(self): # {{{ 22 22 s = ' Calving Pi parameters:' 23 23 s += '{}\n'.format(fielddisplay(self, 'crevasse_opening_stress', '0: stress only in the ice-flow direction, 1: max principal')) 24 s += '{}\n'.format(fielddisplay(self, 'crevasse_threshold', 'ratio of full thickness to calve (e.g. 0.75 is for 75% of the total ice thickness)')) 24 25 s += '{}\n'.format(fielddisplay(self, 'water_height', 'water height in the crevasse [m]')) 25 26 return s 26 27 #}}} 27 28 28 def setdefaultparameters(self): # {{{ 29 29 return self 30 30 #}}} 31 32 31 def extrude(self, md): # {{{ 33 32 return self 34 33 #}}} 35 36 34 def checkconsistency(self, md, solution, analyses): # {{{ 37 35 #Early return … … 40 38 41 39 md = checkfield(md, 'fieldname', 'calving.crevasse_opening_stress', 'numel', [1], 'values', [0,1]) 40 md = checkfield(md, 'fieldname', 'calving.crevasse_threshold', 'numel', [1], '>', 0., '<=', 1.) 42 41 md = checkfield(md, 'fieldname', 'calving.water_height', 'NaN', 1, 'Inf', 1, 'timeseries', 1, '>=', 0) 43 42 44 43 return md 45 44 # }}} 46 47 45 def marshall(self, prefix, md, fid): # {{{ 48 46 yts = md.constants.yts 49 47 WriteData(fid, prefix, 'name', 'md.calving.law', 'data', 6, 'format', 'Integer') 50 48 WriteData(fid, prefix, 'object', self, 'fieldname', 'crevasse_opening_stress', 'format', 'Integer') 49 WriteData(fid, prefix, 'object', self, 'fieldname', 'crevasse_threshold', 'format', 'Double') 51 50 WriteData(fid, prefix, 'object', self, 'fieldname', 'water_height', 'format', 'DoubleMat', 'mattype', 1, 'timeserieslength', md.mesh.numberofvertices + 1, 'yts', md.constants.yts) 52 51 # }}}
Note:
See TracChangeset
for help on using the changeset viewer.