Changeset 27855
- Timestamp:
- 07/26/23 08:56:26 (20 months ago)
- Location:
- issm/trunk-jpl/src/m
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/debris.m
r27853 r27855 110 110 md = checkfield(md,'fieldname','debris.removalmodel','values',[0 1 2]); 111 111 md = checkfield(md,'fieldname','debris.displacementmodel','values',[0 1 2]); 112 md = checkfield(md,'fieldname','debris.max_displacementvelocity','>=',0); 112 113 md = checkfield(md,'fieldname','debris.removal_slope_threshold','>=',0); 113 114 md = checkfield(md,'fieldname','debris.removal_stress_threshold','>=',0); 114 md = checkfield(md,'fieldname','debris.max_displacementvelocity','>=',0);115 115 md = checkfield(md,'fieldname','debris.requested_outputs','stringrow',1); 116 116 if ~any(isnan(md.stressbalance.vertex_pairing)), … … 125 125 fielddisplay(self,'stabilization','0: no stabilization, 1: artificial diffusion, 2: streamline upwinding, 3: streamline upwind Petrov-Galerkin (SUPG)'); 126 126 fielddisplay(self,'removalmodel','frontal removal of debris. 0: no removal, 1: Slope-triggered debris removal, 2: driving-stress triggered debris removal'); 127 fielddisplay(self,'displacementmodel','debris displacement. 0: no displacement, 1: additional debris velocity above the critical slope/stress threshold'); 127 128 fielddisplay(self,'max_displacementvelocity','maximum velocity of debris transport (v_ice + v_displacement) (m/a)'); 128 fielddisplay(self,'displacementmodel','debris displacement. 0: no displacement, 1: additional debris velocity above the critical slope/stress threshold');129 129 fielddisplay(self,'removal_slope_threshold','critical slope (degrees) for removalmodel (1)'); 130 130 fielddisplay(self,'removal_stress_threshold','critical stress (Pa) for removalmodel (2)'); -
issm/trunk-jpl/src/m/classes/debris.py
r27458 r27855 21 21 self.removalmodel = 0 22 22 self.displacementmodel = 0 23 self.max_displacementvelocity = 0 23 24 self.removal_slope_threshold = 0 24 25 self.removal_stress_threshold = 0 … … 44 45 s += '{}\n'.format(fielddisplay(self,'removalmodel','frontal removal of debris. 0: no removal, 1: Slope-triggered debris removal, 2: driving-stress triggered debris removal')) 45 46 s += '{}\n'.format(fielddisplay(self,'displacementmodel','debris displacement. 0: no displacement, 1: ...')) 47 s += '{}\n'.format(fielddisplay(self,'max_displacementvelocity','maximum velocity of debris transport (v_ice + v_displacement) (m/a)')) 46 48 s += '{}\n'.format(fielddisplay(self,'removal_slope_threshold','critical slope (degrees) for removalmodel (1)')) 47 49 s += '{}\n'.format(fielddisplay(self,'removal_stress_threshold','critical stress (Pa) for removalmodel (2)')) … … 54 56 55 57 def defaultoutputs(self, md): # {{{ 56 return ['DebrisThickness' ]58 return ['DebrisThickness', 'DebrisMaskNodeActivation', 'VxDebris', 'VyDebris'] 57 59 # }}} 58 60 … … 79 81 self.removal_stress_threshold = 0 80 82 83 # Max velocity for displacementmodel (1) 84 self.max_displacementvelocity = 0 85 81 86 # Default output 82 87 self.requested_outputs = ['default'] … … 90 95 91 96 md = checkfield(md, 'fieldname', 'debris.spcthickness') 92 md = checkfield(md, 'fieldname', 'debris.stabilization', 'values', [0, 1, 2, 3 ])97 md = checkfield(md, 'fieldname', 'debris.stabilization', 'values', [0, 1, 2, 3, 4, 5]) 93 98 md = checkfield(md, 'fieldname', 'debris.min_thickness', '>=', 0) 94 99 md = checkfield(md, 'fieldname', 'debris.packingfraction', '>=', 0) 95 100 md = checkfield(md, 'fieldname', 'debris.removalmodel', 'values', [0, 1, 2]) 96 101 md = checkfield(md, 'fieldname', 'debris.displacementmodel', 'values', [0, 1, 2]) 102 md = checkfield(md, 'fieldname', 'debris.max_displacementvelocity', '>=', 0) 97 103 md = checkfield(md, 'fieldname', 'debris.removal_slope_threshold', '>=', 0) 98 104 md = checkfield(md, 'fieldname', 'debris.removal_stress_threshold', '>=', 0) … … 110 116 WriteData(fid, prefix, 'object', self, 'fieldname', 'removalmodel', 'format', 'Integer') 111 117 WriteData(fid, prefix, 'object', self, 'fieldname', 'displacementmodel', 'format', 'Integer') 118 WriteData(fid, prefix, 'object', self, 'fieldname', 'max_displacementvelocity', 'format', 'Double') 112 119 WriteData(fid, prefix, 'object', self, 'fieldname', 'removal_slope_threshold', 'format', 'Double') 113 120 WriteData(fid, prefix, 'object', self, 'fieldname', 'removal_stress_threshold', 'format', 'Double') -
issm/trunk-jpl/src/m/solve/parseresultsfromdisk.m
r27853 r27855 242 242 field = field*yts; 243 243 elseif strcmp(fieldname,'VxDebris'), 244 245 244 field = field*yts; 245 elseif strcmp(fieldname,'VyDebris'), 246 246 field = field*yts; 247 247 elseif strcmp(fieldname,'BasalforcingsGroundediceMeltingRate'), -
issm/trunk-jpl/src/m/solve/parseresultsfromdisk.py
r27830 r27855 191 191 field = field * yts 192 192 elif fieldname == 'VyAverage': 193 field = field * yts 194 elif fieldname == 'VxDebris': 195 field = field * yts 196 elif fieldname == 'VyDebris': 193 197 field = field * yts 194 198 elif fieldname == 'BasalforcingsGroundediceMeltingRate':
Note:
See TracChangeset
for help on using the changeset viewer.