26.12.2013 Views

Adaptivity with moving grids

Adaptivity with moving grids

Adaptivity with moving grids

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Adaptivity</strong> <strong>with</strong> <strong>moving</strong> <strong>grids</strong> 71<br />

Q i,j (t), i, j =0...N, etc., on this grid. The Hessian operator H(Q) canbe<br />

discretized <strong>with</strong> central differencing using a nine-point stencil interior to the<br />

domain Ω C to evaluate all second derivatives in H(Q). For the boundary<br />

points, the central differences are replaced by Taylor series expansions, using<br />

the respective conditions Q ξ =0orQ ξ = 1, and so on. The gradient ∇Q is<br />

calculated similarly, so that the right-hand side of (3.46) can be determined.<br />

To determine the values of Q t at the mesh points we then invert the operator<br />

(I − γ∆ ξ ). As the system is posed on a uniform (rectangular) mesh in the<br />

computational domain, this inversion can be done very rapidly by using a<br />

fast spectral solver based upon the discrete cosine transform (invoking the<br />

Neumann boundary conditions for Q t ). Knowing Q t we may then determine<br />

x t by taking the gradient.<br />

3.3.5. Examples of meshes generated using the PMA method<br />

To give some flavour of the behaviour of <strong>moving</strong> mesh methods, we now consider<br />

some meshes generated using the PMA method for a known monitor<br />

function M(x, y, t), choosing examples which can be compared <strong>with</strong> other<br />

methods presented both in the literature and in other sections of this article.<br />

In all of these following calculations we take ɛ =0.01, and the ODEs<br />

obtained by the discretization described above are solved in MATLAB using<br />

the routine ode45. All runs took under 5 minutes on a standard desktop<br />

computer.<br />

Example 1. We first take a case motivated by Cao et al. (2002) (see also<br />

Section 4) <strong>with</strong> a monitor function localized over a <strong>moving</strong> circle of the form<br />

M 1 (x, y, t) = 1 + 5 exp(−50|(x − 1/2 − 1/4 cos(2πt)) 2<br />

+(y − 1/2 − sin(2πt)/2) 2 − 0.01|).<br />

This can be a severe test of a <strong>moving</strong> mesh method, and the meshes calculated<br />

from this using the (velocity-based) geometric conservation law<br />

method (Cao et al. 2002) have a high degree of skewness. To compute<br />

a corresponding <strong>moving</strong> mesh using the parabolic Monge–Ampère method<br />

(and also the solutions in all of the examples in this subsection) we use a<br />

uniform computational mesh to solve (3.46) <strong>with</strong> N =30meshpointsin<br />

each direction and mapping the unit square to the unit square. We see from<br />

this calculation that the resulting mesh closely follows the <strong>moving</strong> circle<br />

<strong>with</strong> no evidence of skewness or irregularity. Note the orthogonality and<br />

regularity of the mesh at the boundary of the domain. Notice further that<br />

in Figure 3.7 the solution partially exits the domain <strong>with</strong> no ill consequence,<br />

and that the grid at t = 10 is virtually indistinguishable from that at t =0.<br />

It is clear from these figures that the mesh generated has excellent regularity.<br />

Observe the high degree of mesh uniformity close to the solution<br />

maximum.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!