Changeset 25851
- Timestamp:
- 12/10/20 16:38:21 (4 years ago)
- Location:
- issm/trunk-jpl
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/modules/SurfaceMassBalancex/Gembx.cpp
r25590 r25851 333 333 } 334 334 // dendricity and sphericity can not be > 1 or < 0 335 if (gdn[i]< 0.0+Gdntol)gdn[i]=0.0;336 if (gsp[i]< 0.0+Gdntol)gsp[i]=0.0;337 if (gdn[i]> 1.0-Gdntol)gdn[i]=1.0;338 if (gsp[i]> 1.0-Gdntol)gsp[i]=1.0;335 if (gdn[i]<=0.0+Gdntol)gdn[i]=0.0; 336 if (gsp[i]<=0.0+Gdntol)gsp[i]=0.0; 337 if (gdn[i]>=1.0-Gdntol)gdn[i]=1.0; 338 if (gsp[i]>=1.0-Gdntol)gsp[i]=1.0; 339 339 340 340 // determine new grain size (mm) … … 344 344 else{ 345 345 346 //When the state of "faceted crystals" (gsp==0) is fully reached,347 // snow evolves towards depth hoar if the gradient is348 // higher than 15 degC m-1 (Brun et al., 1992)349 346 //When wet-snow grains (class 6) are submitted to a 350 347 // temperature gradient higher than 5 degC m-1, their sphericity … … 352 349 // reaches 0, their size increases according to the functions 353 350 // determined by Marbouty. (Brun et al., 1992) 354 if(gsp[i]>0.0+Gdntol && gsp[i]<1.0-Gdntol && (dT[i]>15.0+Ttol || (dT[i]>5.0+Ttol && W[i]>0.0+Wtol)) ){ 355 //determine coefficients 356 IssmDouble C = (-2e8 * exp(-6e3 / T[i]) * dt) * pow(dT[i],.4); 357 gsp[i] +=C; 358 if (gsp[i]<0.0+Gdntol)gsp[i]=0.0; 359 //determine new grain size (mm) 360 gsz[i] = 0.35 + (0.5-gsp[i])*0.1; 361 } 351 if(gsp[i]>0.0+Gdntol && gsp[i]<1.0-Gdntol){ 352 353 IssmDouble F = 0.0; 354 355 if (dT[i]>5.0+Ttol){ 356 F = (-2e8 * exp(-6e3 / T[i]) * dt) * pow(dT[i],.4); 357 } 358 else if (W[i]>0.0+Wtol){ 359 F = (1.0/16.0) * pow(lwc[i],3.0) * dt; 360 } 361 else{ 362 F = 1e9 * exp(-6e3 / T[i]) * dt; 363 } 364 gsp[i] +=F; 365 366 } 367 if (gsp[i]<=0.0+Gdntol)gsp[i]=0.0; 368 if (gsp[i]>=1.0-Gdntol)gsp[i]=1.0; 369 362 370 /*Dry snow metamorphism (Marbouty, 1980) grouped model coefficents 363 371 *from Marbouty, 1980: Figure 9*/ 364 else if(W[i]<=0.0+Wtol || (gsp[i]<=0.0+Gdntol && dT[i]>15.0+Ttol) || (gsp[i]<=0.0+Gdntol && dT[i]>5.0+Ttol && W[i]>0.0+Wtol)){372 if(W[i]<=0.0+Wtol || (gsp[i]<=0.0+Gdntol && dT[i]>5.0+Ttol)){ 365 373 //_printf_("Nondendritic snow metamorphism\n"); 366 374 Q = Marbouty(T[i],d[i],dT[i]);
Note:
See TracChangeset
for help on using the changeset viewer.