source: issm/oecreview/Archive/16554-17801/ISSM-17208-17209.diff

Last change on this file was 17802, checked in by Mathieu Morlighem, 11 years ago

Added archives

File size: 2.7 KB
  • ../trunk-jpl/test/NightlyRun/test336.py

     
    77from solve import *
    88from MatlabFuncs import *
    99
    10 md=triangle(model(),'../Exp/Square.exp',150000.)
     10md=triangle(model(),'../Exp/Square.exp',100000.)
    1111md=setmask(md,'','')
    1212md=parameterize(md,'../Par/SquareSheetConstrained.py')
    1313md=setflowequation(md,'SSA','all')
     
    1919md.transient.isthermal=False
    2020md.transient.isgroundingline=False
    2121md.transient.isgia=False
    22 md.transient.islevelset=True
     22md.transient.islevelset=False
    2323
    2424# init levelset function
    2525ymin=numpy.min(md.mesh.y)
    2626ymax=numpy.max(md.mesh.y)
    2727xmin=min(md.mesh.x)
    2828xmax=max(md.mesh.x)
    29 xmed=(xmax+xmin)/2
    30 ymed=(ymax+ymin)/2
    31 distx=numpy.absolute(md.mesh.x.reshape(-1,1)-xmed)
    32 disty=numpy.absolute(md.mesh.y.reshape(-1,1)-ymed)
    33 md.mask.ice_levelset=numpy.maximum(distx,disty)-1.e5
     29xmed=(xmax+xmin)/2.
     30ymed=(ymax+ymin)/2.
     31md.mask.ice_levelset=numpy.sqrt(numpy.power(md.mesh.x-xmed,2.)+numpy.power(md.mesh.y-ymed,2.)) - (xmax-xmin)/3.
    3432
     33# set spcs
     34mask=1.*numpy.ones((md.mesh.numberofvertices,1))
     35nrverts=md.mesh.elements.shape[1]
     36for i in range(0,md.mesh.numberofelements):
     37        elt=numpy.copy(md.mesh.elements[i])
     38        elt-=1
     39        isiceinelement=False
     40        for iv in range(0,nrverts):
     41                if(md.mask.ice_levelset[elt[iv]]<=0.):
     42                        isiceinelement=True
     43        if(isiceinelement):
     44                for iv in range(0,nrverts):
     45                        mask[elt[iv]]=2.
     46
     47v=0.
     48for i in range(0,md.mesh.numberofvertices):
     49        if(mask[i]==1.):
     50                md.stressbalance.spcvx[i]=v
     51                md.stressbalance.spcvy[i]=v
     52                md.stressbalance.spcvz[i]=v
     53
    3554md=solve(md,TransientSolutionEnum())
    3655
    3756#Fields and tolerances to track changes
    3857field_names     =['Vx','Vy','Vel','Pressure','MaskIceLevelset']
    39 field_tolerances=[1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13]
     58field_tolerances=[1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13,1e-13]#,1e-13,1e-13]
    4059field_values=[\
    4160        md.results.TransientSolution[0].Vx,\
    4261        md.results.TransientSolution[0].Vy,\
    4362        md.results.TransientSolution[0].Vel,\
    4463        md.results.TransientSolution[0].Pressure,\
    45         md.results.TransientSolution[0].MaskIceLevelset,\
     64#       md.results.TransientSolution[0].MaskIceLevelset,\
    4665        md.results.TransientSolution[1].Vx,\
    4766        md.results.TransientSolution[1].Vy,\
    4867        md.results.TransientSolution[1].Vel,\
    4968        md.results.TransientSolution[1].Pressure,\
    50         md.results.TransientSolution[1].MaskIceLevelset,\
     69#       md.results.TransientSolution[1].MaskIceLevelset,\
    5170        ]
Note: See TracBrowser for help on using the repository browser.