Changeset 27853
- Timestamp:
- 07/26/23 01:20:28 (20 months ago)
- Location:
- issm/trunk-jpl/src/m
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/debris.m
r27852 r27853 12 12 removalmodel = 0; 13 13 displacementmodel = 0; 14 max_displacementvelocity = 0; 14 15 removal_slope_threshold = 0; 15 16 removal_stress_threshold = 0; … … 66 67 function list = defaultoutputs(self,md) % {{{ 67 68 68 list = {'DebrisThickness' };69 list = {'DebrisThickness','DebrisMaskNodeActivation','VxDebris','VyDebris'}; 69 70 70 71 end % }}} … … 92 93 self.removal_stress_threshold=0; 93 94 95 %Max velocity for displacementmodel (1) 96 self.max_displacementvelocity=0; 97 94 98 %default output 95 99 self.requested_outputs={'default'}; … … 101 105 102 106 md = checkfield(md,'fieldname','debris.spcthickness'); 103 md = checkfield(md,'fieldname','debris.stabilization','values',[0 1 2 3 ]);107 md = checkfield(md,'fieldname','debris.stabilization','values',[0 1 2 3 4 5]); 104 108 md = checkfield(md,'fieldname','debris.min_thickness','>=',0); 105 109 md = checkfield(md,'fieldname','debris.packingfraction','>=',0); … … 108 112 md = checkfield(md,'fieldname','debris.removal_slope_threshold','>=',0); 109 113 md = checkfield(md,'fieldname','debris.removal_stress_threshold','>=',0); 114 md = checkfield(md,'fieldname','debris.max_displacementvelocity','>=',0); 110 115 md = checkfield(md,'fieldname','debris.requested_outputs','stringrow',1); 111 116 if ~any(isnan(md.stressbalance.vertex_pairing)), … … 120 125 fielddisplay(self,'stabilization','0: no stabilization, 1: artificial diffusion, 2: streamline upwinding, 3: streamline upwind Petrov-Galerkin (SUPG)'); 121 126 fielddisplay(self,'removalmodel','frontal removal of debris. 0: no removal, 1: Slope-triggered debris removal, 2: driving-stress triggered debris removal'); 122 fielddisplay(self,'displacementmodel','debris displacement. 0: no displacement, 1: ...'); 127 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'); 123 129 fielddisplay(self,'removal_slope_threshold','critical slope (degrees) for removalmodel (1)'); 124 130 fielddisplay(self,'removal_stress_threshold','critical stress (Pa) for removalmodel (2)'); … … 135 141 WriteData(fid,prefix,'object',self,'fieldname','removalmodel','format','Integer'); 136 142 WriteData(fid,prefix,'object',self,'fieldname','displacementmodel','format','Integer'); 143 WriteData(fid,prefix,'object',self,'fieldname','max_displacementvelocity','format','Double'); 137 144 WriteData(fid,prefix,'object',self,'fieldname','removal_slope_threshold','format','Double'); 138 145 WriteData(fid,prefix,'object',self,'fieldname','removal_stress_threshold','format','Double'); … … 156 163 writejsdouble(fid,[modelname '.debris.removalmodel'],self.removalmodel); 157 164 writejsdouble(fid,[modelname '.debris.displacementmodel'],self.displacementmodel); 165 writejsdouble(fid,[modelname '.debris.max_displacementvelocity'],self.displacementmodel); 158 166 writejsdouble(fid,[modelname '.debris.removal_slope_threshold'],self.removal_slope_threshold); 159 167 writejsdouble(fid,[modelname '.debris.removal_stress_threshold'],self.removal_stress_threshold); -
issm/trunk-jpl/src/m/classes/model.m
r27852 r27853 1289 1289 if isfield(structmd,'cfl_coefficient'), md.timestepping.cfl_coefficient=structmd.cfl_coefficient; end 1290 1290 if isfield(structmd,'spcthickness'), md.masstransport.spcthickness=structmd.spcthickness; end 1291 if isfield(structmd,'spcthickness'), md.debris.spcthickness=structmd.spcthickness; end 1291 1292 if isfield(structmd,'artificial_diffusivity'), md.masstransport.stabilization=structmd.artificial_diffusivity; end 1292 1293 if isfield(structmd,'hydrostatic_adjustment'), md.masstransport.hydrostatic_adjustment=structmd.hydrostatic_adjustment; end -
issm/trunk-jpl/src/m/solve/parseresultsfromdisk.m
r27852 r27853 240 240 field = field*yts; 241 241 elseif strcmp(fieldname,'VyAverage'), 242 field = field*yts; 243 elseif strcmp(fieldname,'VxDebris'), 244 field = field*yts; 245 elseif strcmp(fieldname,'VyDebris'), 242 246 field = field*yts; 243 247 elseif strcmp(fieldname,'BasalforcingsGroundediceMeltingRate'),
Note:
See TracChangeset
for help on using the changeset viewer.