Updating side boundaries with two free surfaces

Extension of Elmer in computational glaciology

Updating side boundaries with two free surfaces

Postby lstevens » 26 Apr 2018, 21:49

Hello All,

I am attempting to model a 2D section (x and z, across flow) of a floating ice shelf.

In my model set up, I define both the ice shelf surface (hs) and ice shelf base (hb) as free surfaces, whose position in z changes with accumulation and basal melt, respectively. I keep the x-location of the right and left hand sides fixed, as I want my 2D slice of the ice shelf to not be able to grow outwards to the sides. However, I do want the right and left boundaries to be able to change their position in z to match the ice shelf surface and ice shelf base.

I am not able to achieve this at present by updating the mesh along the RHS and LHS (but I could be doing the update incorrectly). The extent of the LHS and RHS stays fixed in z- while the free surface ice shelf base, for example, moves down in z, resulting in a discontinuity at the corner which is compensated for across a few corner elements.

I have attached the .sif file (BCs at the bottom) and .grd files I am using below, as well as a figure showing the issues at the corners:

Screen Shot 2018-04-26 at 2.45.38 PM.png
example figure: note rounding on bottom right and left corners, as well as funkiness on top right and left corners.
Screen Shot 2018-04-26 at 2.45.38 PM.png (18.94 KiB) Viewed 77 times


How can I update the left and right boundaries in z such that they span the distance from the ice shelf surface to the ice shelf base?

Thanks for your help and time,
Laura
Attachments
mesh.grd
mesh.grd
(591 Bytes) Downloaded 7 times
Case.sif
Case.sif
(14.41 KiB) Downloaded 9 times
lstevens
 
Posts: 1
Joined: 26 Apr 2018, 20:53

Re: Updating side boundaries with two free surfaces

Postby gagliar » 27 Apr 2018, 09:50

Hi Laura,

First, I would suggest to use the StructuredMeshMapper solver instead of the old MeshUpdate one. See for an example the Tests GL_MISMIP in [ELMER_TRUNK]/elmerice/Tests/GL_MISMIP.

Second, I think the only conditions for the right and left boundaries are "Velocity 1 = Real 0.0" and "Mesh Update 1 = Real 0.0". Indeed, the External Pressure will apply a load perpendicular to the boundary (horizontal) with no effect as the velocity is prescribed in that direction. For the Mesh Update 2 condition, it is not correct (and not also not needed as already accounted in the top and bottom boundaries). It is not correct because you only prescribe the bottom Mesh Update 2, and the variables hb and hbREF are only known on the bottom surface so that for the upper node of the right and left boundaries, the condition
Code: Select all
Mesh Update 2 = Variable hb, hbREF
    Real MATC "tx(0)-tx(1)"

certainly reduces to
Code: Select all
Mesh Update 2 = 0.0


In other words, try it with:
Code: Select all
Boundary Condition 3
  name = Left
  Target Boundaries = 2
  Velocity 1 = Real 0.0
  Mesh Update 1 = Real 0.0
  Save Line = Logical False
End


Boundary Condition 4
  name = Right
  Target Boundaries = 4
  Velocity 1 = Real 0.0
  Mesh Update 1 = Real 0.0
  Save Line = Logical False
End


Hope it helps,
Olivier
gagliar
 
Posts: 55
Joined: 04 Sep 2009, 16:34
Location: LGGE - Grenoble


Return to Elmer/Ice

Who is online

Users browsing this forum: No registered users and 1 guest