| 1 | md=triangle(model(),'../Exp/Square.exp',100000.);
|
|---|
| 2 | md=setmask(md,'','');
|
|---|
| 3 | md.transient=deactivateall(md.transient);
|
|---|
| 4 | md.transient.ishydrology=1;
|
|---|
| 5 | md=parameterize(md,'../Par/SquareSheetConstrained.par');
|
|---|
| 6 | md=setflowequation(md,'SSA','all');
|
|---|
| 7 | md.cluster=generic('name',oshostname(),'np',1);
|
|---|
| 8 | md.hydrology=(hydrologydc);
|
|---|
| 9 | md.hydrology=initialize(md.hydrology,md);
|
|---|
| 10 | md.hydrology.isefficientlayer=0;
|
|---|
| 11 | md.hydrology.sedimentlimit_flag=1;
|
|---|
| 12 | md.hydrology.sedimentlimit=8000.0;
|
|---|
| 13 | md.initialization.sediment_head=0.0*ones(md.mesh.numberofvertices,1);
|
|---|
| 14 | md.hydrology.spcsediment_head=NaN*ones(md.mesh.numberofvertices,1);
|
|---|
| 15 | pos=find(md.mesh.y==0);
|
|---|
| 16 | md.hydrology.spcsediment_head(pos)=0.0;
|
|---|
| 17 | md.basalforcings.melting_rate = 2.0*ones(md.mesh.numberofvertices,1);
|
|---|
| 18 | md.hydrology.sediment_transmitivity= 3.0*ones(md.mesh.numberofvertices,1);
|
|---|
| 19 | md.timestepping.time_step=0;
|
|---|
| 20 | md.timestepping.final_time=1.0;
|
|---|
| 21 | %md.verbose=verbose('1111111');
|
|---|
| 22 | md=extrude(md,3,1.1);
|
|---|
| 23 | md=solve(md,HydrologySolutionEnum());
|
|---|
| 24 |
|
|---|
| 25 | %Fields and tolerances to track changes
|
|---|
| 26 | %you can also compare with an analitic solution, but it is exact
|
|---|
| 27 | %only if no limits are applied
|
|---|
| 28 | %analitic=(md.mesh.y.^2-2*md.mesh.y*1.0e6)*(-2.0/(2*md.constants.yts*md.hydrology.sediment_transmitivity))
|
|---|
| 29 | field_names ={'SedimentWaterHead','SedimentHeadResidual'};
|
|---|
| 30 | field_tolerances={1e-13, 3e-10};
|
|---|
| 31 | field_values={md.results.HydrologySolution.SedimentHead,md.results.HydrologySolution.SedimentHeadResidual};
|
|---|