Changeset 17882
- Timestamp:
- 04/29/14 14:14:29 (11 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified issm/trunk-jpl/src/c/analyses/HydrologyShreveAnalysis.cpp ¶
r17700 r17882 331 331 IssmDouble rho_water = element->GetMaterialParameter(MaterialsRhoWaterEnum); 332 332 IssmDouble g = element->GetMaterialParameter(ConstantsGEnum); 333 IssmDouble CR = element->GetMaterialParameter(HydrologyshreveCREnum);334 IssmDouble n_man = element->GetMaterialParameter(HydrologyshreveNEnum);335 333 IssmDouble mu_water = element->GetMaterialParameter(MaterialsMuWaterEnum); 336 334 Input* surfaceslopex_input = element->GetInput(SurfaceSlopeXEnum); _assert_(surfaceslopex_input); … … 339 337 Input* bedslopey_input = element->GetInput(BedSlopeYEnum); _assert_(bedslopey_input); 340 338 Input* watercolumn_input = element->GetInput(WatercolumnEnum); _assert_(watercolumn_input); 341 342 /* compute VelocityFactor */343 IssmDouble VelocityFactor = n_man*CR*CR*rho_water*g/mu_water;344 339 345 340 /*Fetch number of vertices and allocate output*/ … … 358 353 359 354 /* Water velocity x and y components */ 360 // vx[iv]= - w*w/(12 * mu_water)*(rho_ice*g*dsdx+(rho_water-rho_ice)*g*dbdx); 361 // vy[iv]= - w*w/(12 * mu_water)*(rho_ice*g*dsdy+(rho_water-rho_ice)*g*dbdy); 362 vx[iv]= - w*w/(VelocityFactor* mu_water)*(rho_ice*g*dsdx+(rho_water-rho_ice)*g*dbdx); 363 vy[iv]= - w*w/(VelocityFactor* mu_water)*(rho_ice*g*dsdy+(rho_water-rho_ice)*g*dbdy); 355 vx[iv]= - w*w/(12 * mu_water)*(rho_ice*g*dsdx+(rho_water-rho_ice)*g*dbdx); 356 vy[iv]= - w*w/(12 * mu_water)*(rho_ice*g*dsdy+(rho_water-rho_ice)*g*dbdy); 364 357 } 365 358 … … 373 366 xDelete<IssmDouble>(vy); 374 367 }/*}}}*/ 368 369 370 371 /*Needed changes to switch to the Johnson formulation*//*{{{*/ 372 /*All the changes are to be done in the velocity computation. 373 The new velocity needs some new parameter that should be introduce in the hydrologyshreve class: 374 'p' and 'q' which are the exponent of the Manning formula for laminar (p=2,q=1) or turbulent (p=2/3,q=1/2) flow 375 'R' the hydraulic radius 376 'n' the manning roughness coeficient 377 378 With these, the velocity reads ; 379 380 v= - (1/n)* pow(R,p)*pow((grad phi(rho_water*g)),q) 381 382 you should also redefine the water pressure potential 'phi' with respect to the effective pressure deffinition given in Johson: 383 phi=(rho_ice*g*( surface + ((rho_water/rho_ice)-1)*base - k_n*((thickness* grad(base))/omega) ) 384 385 where 386 'omega' is the fractional area of the base occupied by the water film 387 'k_n' is a parameter 388 This last equation derives from the effective pressure definition developped in Alley 1989 389 */ 390 /*}}}*/ -
TabularUnified issm/trunk-jpl/src/c/classes/Materials/Matpar.cpp ¶
r17738 r17882 60 60 _error_("Surface mass balance model "<<EnumToStringx(smb_model)<<" not supported yet"); 61 61 } 62 63 if(hydrology_model==HydrologyshreveEnum){ 64 iomodel->Constant(&this->hydro_CR,HydrologyshreveCREnum); 65 iomodel->Constant(&this->hydro_kn,HydrologyshreveKnEnum); 66 iomodel->Constant(&this->hydro_n,HydrologyshreveNEnum); 67 iomodel->Constant(&this->hydro_p,HydrologyshrevePEnum); 68 iomodel->Constant(&this->hydro_q,HydrologyshreveQEnum); 69 } 70 else if(hydrology_model==HydrologydcEnum){ 62 if(hydrology_model==HydrologydcEnum){ 71 63 iomodel->Constant(&this->sediment_compressibility,HydrologydcSedimentCompressibilityEnum); 72 64 iomodel->Constant(&this->sediment_porosity,HydrologydcSedimentPorosityEnum);
Note:
See TracChangeset
for help on using the changeset viewer.