[17802] | 1 | Index: ../trunk-jpl/test/Par/ValleyGlacierShelf.par
|
---|
| 2 | ===================================================================
|
---|
| 3 | --- ../trunk-jpl/test/Par/ValleyGlacierShelf.par (revision 0)
|
---|
| 4 | +++ ../trunk-jpl/test/Par/ValleyGlacierShelf.par (revision 17467)
|
---|
| 5 | @@ -0,0 +1,97 @@
|
---|
| 6 | +%Start defining model parameters here
|
---|
| 7 | +x = md.mesh.x
|
---|
| 8 | +y = md.mesh.y
|
---|
| 9 | +xmin = min(x)
|
---|
| 10 | +xmax = max(x)
|
---|
| 11 | +ymin = min(y)
|
---|
| 12 | +ymax = max(y)
|
---|
| 13 | +Lx = (xmax-xmin)
|
---|
| 14 | +Ly = (ymax-ymin)
|
---|
| 15 | +xm = (xmin+xmax)/2.
|
---|
| 16 | +ym = (ymin+ymax)/2.
|
---|
| 17 | +
|
---|
| 18 | +%Geometry: U-shaped valley in y direction
|
---|
| 19 | +thk_center = 1000.
|
---|
| 20 | +thk_margin = 0.5*thk_center
|
---|
| 21 | +bmax = 0.
|
---|
| 22 | +bmin = -thk_center*md.materials.rho_ice/md.materials.rho_water
|
---|
| 23 | +
|
---|
| 24 | +alpha = 2./3.
|
---|
| 25 | +slope = 0.9*(bmin-bmax)*(x-xmin)/(Lx*alpha) + 0.1*(bmin-bmax)*(y-ymin)/(Ly) + bmax
|
---|
| 26 | +md.geometry.surface = (thk_center+bmax) + slope
|
---|
| 27 | +md.geometry.bed = bmax + slope + 4./Ly^2*(thk_center-thk_margin)*(y-ym).^2)
|
---|
| 28 | +md.geometry.thickness = md.geometry.surface - md.geometry.bed
|
---|
| 29 | +md.geometry.bathymetry = md.geometry.bed
|
---|
| 30 | +
|
---|
| 31 | +%Mask
|
---|
| 32 | +md.mask.ice_levelset = x - alpha*Lx
|
---|
| 33 | +md.mask.groundedice_levelset = ones(md.mesh.numberofvertices,1)
|
---|
| 34 | +
|
---|
| 35 | +%Initial velocity
|
---|
| 36 | +md.initialization.vx = zeros(md.mesh.numberofvertices,1)
|
---|
| 37 | +md.initialization.vy = zeros(md.mesh.numberofvertices,1)
|
---|
| 38 | +md.initialization.vz = zeros(md.mesh.numberofvertices,1)
|
---|
| 39 | +md.initialization.pressure = zeros(md.mesh.numberofvertices,1)
|
---|
| 40 | +
|
---|
| 41 | +%Materials
|
---|
| 42 | +md.initialization.temperature = (273.15-5.)*ones(md.mesh.numberofvertices,1)
|
---|
| 43 | +md.initialization.waterfraction = zeros(md.mesh.numberofvertices,1)
|
---|
| 44 | +md.initialization.watercolumn = zeros(md.mesh.numberofvertices,1)
|
---|
| 45 | +md.materials.rheology_B = paterson(md.initialization.temperature)
|
---|
| 46 | +md.materials.rheology_n = 3.*ones(md.mesh.numberofelements,1)
|
---|
| 47 | +
|
---|
| 48 | +%Thermal
|
---|
| 49 | +md.thermal.isenthalpy = 0
|
---|
| 50 | +md.thermal.spctemperature = NaN(md.mesh.numberofvertices,1)
|
---|
| 51 | +
|
---|
| 52 | +%Groundingline
|
---|
| 53 | +md.groundingline.migration = 'SubelementMigration'
|
---|
| 54 | +
|
---|
| 55 | +%Damage
|
---|
| 56 | +md.damage.D = zeros(md.mesh.numberofvertices,1)
|
---|
| 57 | +
|
---|
| 58 | +%Surface mass balance and basal melting
|
---|
| 59 | +md.surfaceforcings.mass_balance = 0.3*ones(md.mesh.numberofvertices,1)
|
---|
| 60 | +md.basalforcings.melting_rate = md.surfaceforcings.mass_balance
|
---|
| 61 | +
|
---|
| 62 | +%Friction
|
---|
| 63 | +md.friction.coefficient = 20.*ones(md.mesh.numberofvertices,1)
|
---|
| 64 | +md.friction.coefficient(find(md.mask.groundedice_levelset<0.)) = 0.
|
---|
| 65 | +md.friction.p = ones(md.mesh.numberofelements,1)
|
---|
| 66 | +md.friction.q = ones(md.mesh.numberofelements,1)
|
---|
| 67 | +
|
---|
| 68 | +%Transient
|
---|
| 69 | +md.transient.isstressbalance = 1
|
---|
| 70 | +md.transient.islevelset = 1
|
---|
| 71 | +md.transient.ismasstransport = 0
|
---|
| 72 | +md.transient.isthermal = 0
|
---|
| 73 | +md.transient.isgroundingline = 1
|
---|
| 74 | +md.transient.isgia = 0
|
---|
| 75 | +
|
---|
| 76 | +%Stressbalance
|
---|
| 77 | +md.stressbalance.maxiter = 100
|
---|
| 78 | +md.stressbalance.viscosity_overshoot = 0.0
|
---|
| 79 | +md.stressbalance.restol = 0.05
|
---|
| 80 | +md.stressbalance.reltol = 0.05
|
---|
| 81 | +md.stressbalance.abstol = NaN
|
---|
| 82 | +
|
---|
| 83 | +%Masstransport
|
---|
| 84 | +md.masstransport.calvingrate = 0.*ones(md.mesh.numberofvertices,1)
|
---|
| 85 | +md.masstransport.stabilization = 1.
|
---|
| 86 | +
|
---|
| 87 | +%Numerical parameters
|
---|
| 88 | +md.thermal.stabilization = 1.
|
---|
| 89 | +md.settings.waitonlock = 30
|
---|
| 90 | +md.steadystate.reltol = 0.05
|
---|
| 91 | +md.timestepping.time_step = 1.
|
---|
| 92 | +md.timestepping.final_time = 3.
|
---|
| 93 | +
|
---|
| 94 | +%Verbose
|
---|
| 95 | +md.verbose = verbose(0)
|
---|
| 96 | +
|
---|
| 97 | +%Deal with boundary conditions:
|
---|
| 98 | +md = SetIceShelfBC(md)
|
---|
| 99 | +
|
---|
| 100 | +%Change name so that no test have the same name
|
---|
| 101 | +A = dbstack;
|
---|
| 102 | +if (length(A)>2), md.miscellaneous.name=A(3).file(1:end-2); end
|
---|