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 |
Rev | Line | |
---|---|---|
[14134] | 1 | import numpy |
[21170] | 2 | from arch import * |
[16170] | 3 | from SetIceSheetBC import SetIceSheetBC |
[14134] | 4 | |
5 | #Ok, start defining model parameters here | |
6 | ||
7 | print " creating thickness" | |
[21170] | 8 | data = numpy.array(archread('../Data/ISMIPE.arch','data')); |
[21409] | 9 | md.geometry.surface=numpy.zeros((md.mesh.numberofvertices)) |
10 | md.geometry.base=numpy.zeros((md.mesh.numberofvertices)) | |
[14134] | 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) | |
[22267] | 15 | coeff=(y-(point1)*100.)/100. |
[17590] | 16 | md.geometry.base[i]=(1.-coeff)*data[point1,1]+coeff*data[point2,1] |
[14134] | 17 | md.geometry.surface[i]=(1.-coeff)*data[point1,2]+coeff*data[point2,2] |
[22267] | 18 | |
[17590] | 19 | md.geometry.thickness=md.geometry.surface-md.geometry.base |
[14134] | 20 | md.geometry.thickness[numpy.nonzero(numpy.logical_not(md.geometry.thickness))]=0.01 |
[17590] | 21 | md.geometry.base=md.geometry.surface-md.geometry.thickness |
[14134] | 22 | |
23 | print " creating drag" | |
[21409] | 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)) | |
[14134] | 27 | |
28 | print " creating flow law parameter" | |
[21409] | 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)) | |
[14134] | 31 | |
[15771] | 32 | print " boundary conditions for stressbalance model:" |
[14134] | 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.