source: issm/oecreview/Archive/25834-26739/ISSM-26712-26713.diff

Last change on this file was 26740, checked in by Mathieu Morlighem, 3 years ago

CHG: added 25834-26739

File size: 5.5 KB
  • ../trunk-jpl/src/jl/md/parameterization.jl

     
    1616"""
    1717function setmask(md::model,floatingicename::String,groundedicename::String)
    1818
    19         elementonfloatingice = FlagElements( md, floatingicename);
    20         elementongroundedice = FlagElements( md, groundedicename);
     19        elementonfloatingice = FlagElements( md, floatingicename)
     20        elementongroundedice = FlagElements( md, groundedicename)
    2121
    2222        elementonfloatingice = convert( Array{Float64}, (elementonfloatingice.>0) .&  (elementongroundedice.==0.))
    2323        elementongroundedice = convert( Array{Float64}, elementonfloatingice.==0.)
     
    4444        elseif region == "all"
    4545                flags = ones(md.mesh.numberofelements)
    4646        else
    47                 flags = InContour(md.mesh.x,md.mesh.y,region);
     47                xcenter = md.mesh.x[md.mesh.elements]*[1;1;1]/3
     48                ycenter = md.mesh.y[md.mesh.elements]*[1;1;1]/3
     49                flags = ContourToNodes(xcenter, ycenter, region, 2.)
    4850        end
    4951
    5052        return flags
  • ../trunk-jpl/src/jl/test101.jl

     
    2525y     = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","y")
    2626vx    = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","vx")
    2727vy    = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","vy")
    28 index = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","index")
    29 md.initialization.vx=zeros(md.mesh.numberofvertices)#InterpFromMeshToMesh2d(index,x,y,vx,md.mesh.x,md.mesh.y)
    30 md.initialization.vy=zeros(md.mesh.numberofvertices)#InterpFromMeshToMesh2d(index,x,y,vy,md.mesh.x,md.mesh.y)
     28index = Int.(ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","index"))
     29md.initialization.vx=ISSM.InterpFromMeshToMesh2d(index,x,y,vx,md.mesh.x,md.mesh.y,0.0)
     30md.initialization.vy=ISSM.InterpFromMeshToMesh2d(index,x,y,vy,md.mesh.x,md.mesh.y,0.0)
    3131
    3232md.materials.rheology_B=1.815730284801701e+08*ones(md.mesh.numberofvertices)
    3333md.materials.rheology_n=3*ones(md.mesh.numberofelements)
     34md.friction.coefficient=20*ones(md.mesh.numberofvertices)
    3435
    3536md.stressbalance.restol=0.05
    3637md.stressbalance.reltol=0.05
  • ../trunk-jpl/src/jl/test501.jl

     
    55md = ISSM.model()
    66md = ISSM.triangle(md,"../../test/Exp/Pig.exp",10000.)
    77md = ISSM.setmask(md,"../../test/Exp/PigShelves.exp","../../test/Exp/PigIslands.exp")
    8 error("not implemented yet")
    98
    10 #Geometry
    11 hmin=300.
    12 hmax=1000.
    13 ymin=minimum(md.mesh.y)
    14 ymax=maximum(md.mesh.y)
    15 xmin=minimum(md.mesh.x)
    16 xmax=maximum(md.mesh.x)
    17 md.geometry.thickness = hmax .+ (hmin-hmax)*(md.mesh.y .- ymin)./(ymax-ymin) .+ 0.1*(hmin-hmax)*(md.mesh.x .- xmin)./(xmax-xmin)
    18 md.geometry.base      = -md.materials.rho_ice/md.materials.rho_water*md.geometry.thickness .+20
    19 md.geometry.surface   = md.geometry.base+md.geometry.thickness
    20 md.geometry.bed       = md.geometry.base
     9#Initial velocity and geometry
     10x         = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","x")
     11y         = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","y")
     12vx_obs    = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","vx_obs")
     13vy_obs    = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","vy_obs")
     14index     = Int.(ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","index"))
     15surface   = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","surface")
     16thickness = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","thickness")
     17bed       = ISSM.archread(ISSM.issmdir()*"/test/Data/Pig.arch","bed")
     18md.initialization.vx=ISSM.InterpFromMeshToMesh2d(index, x, y, vx_obs, md.mesh.x, md.mesh.y, 0.0)
     19md.initialization.vy=ISSM.InterpFromMeshToMesh2d(index, x, y, vy_obs, md.mesh.x, md.mesh.y, 0.0)
     20md.geometry.surface = ISSM.InterpFromMeshToMesh2d(index, x, y, surface, md.mesh.x, md.mesh.y, 0.0)
     21md.geometry.thickness = ISSM.InterpFromMeshToMesh2d(index, x, y, thickness, md.mesh.x, md.mesh.y, 0.0)
     22md.geometry.base=md.geometry.surface .- md.geometry.thickness
     23md.geometry.bed =md.geometry.base
     24pos = findall(md.mask.ocean_levelset.<0)
     25md.geometry.bed[pos] = ISSM.InterpFromMeshToMesh2d(index, x, y, bed, md.mesh.x[pos], md.mesh.y[pos])
    2126
    22 #Initial velocity
    23 #x     = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","x")
    24 #y     = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","y")
    25 #vx    = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","vx")
    26 #vy    = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","vy")
    27 #index = ISSM.archread(ISSM.issmdir()*"/test/Data/SquareShelfConstrained.arch","index")
    28 md.initialization.vx=zeros(md.mesh.numberofvertices)#InterpFromMeshToMesh2d(index,x,y,vx,md.mesh.x,md.mesh.y)
    29 md.initialization.vy=zeros(md.mesh.numberofvertices)#InterpFromMeshToMesh2d(index,x,y,vy,md.mesh.x,md.mesh.y)
    30 
    3127md.materials.rheology_B=1.815730284801701e+08*ones(md.mesh.numberofvertices)
    3228md.materials.rheology_n=3*ones(md.mesh.numberofelements)
    33 md.friction.coefficient=20*ones(md.mesh.numberofvertices)
     29md.friction.coefficient=50*ones(md.mesh.numberofvertices)
    3430
    3531md.stressbalance.restol=0.05
    36 md.stressbalance.reltol=0.05
     32md.stressbalance.reltol=1.0
    3733md.stressbalance.abstol=NaN
    3834
    3935#Boundary conditions
Note: See TracBrowser for help on using the repository browser.