Changeset 22482 for issm/trunk-jpl/src/m/classes/SMBgemb.m
- Timestamp:
- 02/27/18 19:33:05 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/SMBgemb.m
r22475 r22482 60 60 % 3: density and cloud amount [Greuell & Konzelmann, 1994] 61 61 % 4: exponential time decay & wetness [Bougamont & Bamber, 2005] 62 % 5: ingest MODIS mode, direct input from aValue parameter applied to surface ice only63 62 64 63 swIdx = NaN; % apply all SW to top grid cell (0) or allow SW to penetrate surface (1) (default 1) … … 89 88 t0dry = NaN; % warm snow timescale (30) 90 89 K = NaN; % time scale temperature coef. (7) 90 adThresh = NaN; %Apply aIdx method to all areas with densities below this value, 91 %or else apply direct input value from aValue, allowing albedo to be altered. 92 %Default value is rho water (1023 kg m-3). 91 93 92 94 %densities: … … 125 127 self.pAir=project3d(md,'vector',self.pAir,'type','node'); 126 128 127 if (aIdx == 0 | aIdx == 5) & ~isnan(self.aValue)129 if (aIdx == 0) & ~isnan(self.aValue) 128 130 self.aValue=project3d(md,'vector',self.aValue,'type','node'); 129 131 end … … 169 171 self.t0dry = 30; 170 172 self.K = 7; 173 self.adThresh = 1023; 171 174 172 175 self.teValue = ones(mesh.numberofelements,1); … … 212 215 md = checkfield(md,'fieldname','smb.teValue','timeseries',1,'NaN',1,'Inf',1,'>=',0,'<=',1); 213 216 214 md = checkfield(md,'fieldname','smb.aIdx','NaN',1,'Inf',1,'values',[0,1,2,3,4 ,5]);217 md = checkfield(md,'fieldname','smb.aIdx','NaN',1,'Inf',1,'values',[0,1,2,3,4]); 215 218 md = checkfield(md,'fieldname','smb.swIdx','NaN',1,'Inf',1,'values',[0,1]); 216 219 md = checkfield(md,'fieldname','smb.denIdx','NaN',1,'Inf',1,'values',[1,2,3,4,5]); … … 223 226 md = checkfield(md,'fieldname','smb.InitDensityScaling','NaN',1,'Inf',1,'>=',0,'<=',1); 224 227 md = checkfield(md,'fieldname','smb.ThermoDeltaTScaling','NaN',1,'Inf',1,'>=',0,'<=',1); 228 md = checkfield(md,'fieldname','smb.adThresh','NaN',1,'Inf',1,'>=',0); 225 229 226 230 switch self.aIdx, … … 278 282 fielddisplay(self,'ThermoDeltaTScaling',{'scaling factor to multiply the thermal diffusion timestep (delta t)'}); 279 283 fielddisplay(self,'outputFreq','output frequency in days (default is monthly, 30)'); 284 fielddisplay(self,'adThresh',{'Apply aIdx method to all areas with densities below this value,','or else apply direct input value from aValue, allowing albedo to be altered.'}); 280 285 fielddisplay(self,'aIdx',{'method for calculating albedo and subsurface absorption (default is 1)',... 281 286 '0: direct input from aValue parameter',... … … 283 288 '2: effective grain radius [Brun et al., 2009]',... 284 289 '3: density and cloud amount [Greuell & Konzelmann, 1994]',... 285 '4: exponential time decay & wetness [Bougamont & Bamber, 2005]',... 286 '5: ingest MODIS mode, direct input from aValue parameter applied to surface ice only'}); 290 '4: exponential time decay & wetness [Bougamont & Bamber, 2005]'}) 287 291 288 292 fielddisplay(self,'teValue','Outward longwave radiation thermal emissivity forcing at every element (default in code is 1)'); … … 373 377 WriteData(fid,prefix,'object',self,'class','smb','fieldname','t0dry','format','Double'); 374 378 WriteData(fid,prefix,'object',self,'class','smb','fieldname','K','format','Double'); 379 WriteData(fid,prefix,'object',self,'class','smb','fieldname','adThresh','format','Double'); 375 380 376 381 WriteData(fid,prefix,'object',self,'class','smb','fieldname','aValue','format','DoubleMat','mattype',2,'timeserieslength',md.mesh.numberofelements+1,'yts',md.constants.yts);
Note:
See TracChangeset
for help on using the changeset viewer.