[CIG-CS] Discontinuous viscosity
Walter Landry
walter at geodynamics.org
Sun Mar 4 17:40:30 PST 2012
Hello Everyone,
Back in May 2011, I ran a test for solving Stokes with discontinuous
viscosity using deal.II and Gamr, my finite difference code.
http://www.geodynamics.org/pipermail/cig-cs/2011-May/000035.html
That highlighted a problem that all codes encounter with discontinuous
viscosities. I think I now have a solution for this problem. I have
implemented a variation of the Immersed Interface Method (IIM) in a
finite difference code. The basic idea of IIM is to use normal finite
differences and then add correction terms arising from the jumps.
One interesting detail is that it is necessary to change the
fundamental variables, because I do not have expressions for the jumps
in velocity. To that end, I use the augmented velocity, which is the
ordinary velocity multiplied by the viscosity.
In any case, to test the code I used SOLCX [1], a test used by other
groups to gauge how well a code handles variable viscosity [2] [3].
SOLCX is set in a unit box and has a sharp jump in viscosity at x=x_c.
For these tests, I used x_c=0.4, which is not aligned with any grid
boundary. Moresi et al [3], with their finite element code, saw
errors in pressure of 80% with a 32x32 grid when the elements were not
aligned with the grid. They do not report on convergence, though,
based on the work I did in May 2011, I suspect that it diverges.
In comparison, I am attaching a plot of the pressure solution and the
error at y=0.25 for a viscosity ratio of 10^10. This method should
converge to first order on the boundary. For this toy code I am using
Gauss-Seidel relaxation. The number of iterations is largely
independent of the viscosity ratio. For a 64x64 grid, using vx=vy=p=0
as the initial guess:
viscosity ratio # iterations
1 18415
1e2 22685
1e4 22764
1e6 22765
1e8 22765
1e10 22765
As resolution improves, the number of iterations increases, but the
error in the pressure decreases.
viscosity ratio=10^10
h # iterations L_infinity(pressure)
1/32 5769 .0184
1/64 22765 .01562
1/128 92946 .00246
As I mentioned, this is still a toy code. It is hard coded for a
horizontal viscosity jump. The solver is just Gauss-Seidel
relaxation, but it does use the same relaxation parameters as the full
parallel variable viscosity Stokes solver in Gamr. It does end up
using a larger stencil than the straight Gamr code, but otherwise it
should apply to the full code without too much trouble. If you are
interested, the code is available through mercurial with the command
hg clone http://geodynamics.org/hg/cs/AMR/Discontinuous_Stokes/
One nice thing about this method is that it also works as a way of
embedding boundaries. So I can use it to model a spherical earth
inside a rectilinear grid.
So the next step is to get this method working for more general
interfaces. My plan is to embed SOLCX into a larger grid and then
rotate it. After that, I will use an analytic solution for a circular
inclusion [4]. The last step is to put it into Gamr.
Cheers,
Walter Landry
[1] Analytic solutions for Stokes$B!G(B flow with lateral variations in viscosity
Shijie Zhong
Geophys. J. Int.(1996) 124, 18-28
Section 2.3
[2] Preconditioned iterative methods for Stokes flow problems arising in
computational geodynamics
Dave A. May, Louis Moresi
Physics of the Earth and Planetary Interiors 171 (2008) 33$(Q#|(B47
[3] The accuracy of finite element solutions of Stokes' flow with
strongly varying viscosity
Louis Moresi, Shijie Zhong, Michael Gurnis
Physics of the Earth and Planetary Interiors 97 (1996) 83-94
[4] Analytical solutions for deformable elliptical inclusions
in general shear
Daniel W. Schmid and Yuri Yu. Podladchikov
Geophys. J. Int. (2003) 155, 269$(Q#|(B288
-------------- next part --------------
A non-text attachment was scrubbed...
Name: p.png
Type: image/png
Size: 15116 bytes
Desc: not available
Url : http://geodynamics.org/pipermail/cig-cs/attachments/20120304/109b87da/attachment-0002.png
-------------- next part --------------
A non-text attachment was scrubbed...
Name: p_error.png
Type: image/png
Size: 16617 bytes
Desc: not available
Url : http://geodynamics.org/pipermail/cig-cs/attachments/20120304/109b87da/attachment-0003.png
More information about the CIG-CS
mailing list