source:
issm/trunk-jpl/test/Par/ISMIPE.py@
22267
Last change on this file since 22267 was 22267, checked in by , 7 years ago | |
---|---|
|
|
File size: 1.3 KB |
Line | |
---|---|
1 | import numpy |
2 | from arch import * |
3 | from SetIceSheetBC import SetIceSheetBC |
4 | |
5 | #Ok, start defining model parameters here |
6 | |
7 | print " creating thickness" |
8 | data = numpy.array(archread('../Data/ISMIPE.arch','data')); |
9 | md.geometry.surface=numpy.zeros((md.mesh.numberofvertices)) |
10 | md.geometry.base=numpy.zeros((md.mesh.numberofvertices)) |
11 | for i in xrange(0,md.mesh.numberofvertices): |
12 | y=md.mesh.y[i] |
13 | point1=numpy.floor(y/100.) |
14 | point2=numpy.minimum(point1+1,50) |
15 | coeff=(y-(point1)*100.)/100. |
16 | md.geometry.base[i]=(1.-coeff)*data[point1,1]+coeff*data[point2,1] |
17 | md.geometry.surface[i]=(1.-coeff)*data[point1,2]+coeff*data[point2,2] |
18 | |
19 | md.geometry.thickness=md.geometry.surface-md.geometry.base |
20 | md.geometry.thickness[numpy.nonzero(numpy.logical_not(md.geometry.thickness))]=0.01 |
21 | md.geometry.base=md.geometry.surface-md.geometry.thickness |
22 | |
23 | print " creating drag" |
24 | md.friction.coefficient=numpy.zeros((md.mesh.numberofvertices)) |
25 | md.friction.p=numpy.ones((md.mesh.numberofelements)) |
26 | md.friction.q=numpy.ones((md.mesh.numberofelements)) |
27 | |
28 | print " creating flow law parameter" |
29 | md.materials.rheology_B=6.8067*10**7*numpy.ones((md.mesh.numberofvertices)) |
30 | md.materials.rheology_n=3.*numpy.ones((md.mesh.numberofelements)) |
31 | |
32 | print " boundary conditions for stressbalance model:" |
33 | #Create node on boundary first (because we can not use mesh) |
34 | md=SetIceSheetBC(md) |
Note:
See TracBrowser
for help on using the repository browser.