You are on page 1of 38

Journal of Computational Physics 241 (2013) 464–501

Contents lists available at SciVerse ScienceDirect

Journal of Computational Physics


journal homepage: www.elsevier.com/locate/jcp

Finite-difference ghost-point multigrid methods on Cartesian


grids for elliptic problems in arbitrary domains
Armando Coco, Giovanni Russo ⇑
Dipartimento di Matematica e Informatica, Università di Catania, Catania, Italy

a r t i c l e i n f o a b s t r a c t

Article history: In this paper we present a numerical method for solving elliptic equations in an arbitrary
Received 5 August 2010 domain (described by a level-set function) with general boundary conditions (Dirichlet,
Received in revised form 14 September Neumann, Robin, etc.) on Cartesian grids, using finite difference discretization and non-
2012
eliminated ghost values. A system of N i þ N g equations in Ni þ Ng unknowns is obtained
Accepted 28 November 2012
Available online 18 January 2013
by finite difference discretization on the Ni internal grid points, and second order interpo-
lation to define the conditions for the Ng ghost values. The resulting large sparse linear sys-
tem is then solved by a multigrid technique. The novelty of the papers can be summarized
Keywords:
Elliptic equation
as follows: general strategy to discretize the boundary condition to second order both in
Multigrid methods the solution and its gradient; a relaxation of inner equations and boundary conditions by
Cartesian grid a fictitious time method, inspired by the stability conditions related to the associated time
Ghost points dependent problem (with a convergence proof for the first order scheme); an effective geo-
Arbitrary domain metric multigrid, which maintains the structure of the discrete system at all grid levels. It is
Mixed boundary conditions shown that by increasing the relaxation step of the equations associated to the boundary
Level-set methods conditions, a convergence factor close to the optimal one is obtained. Several numerical
tests, including variable coefficients, anisotropic elliptic equations, and domains with
kinks, show the robustness, efficiency and accuracy of the approach.
Ó 2012 Elsevier Inc. All rights reserved.

1. Introduction

Elliptic equation in arbitrary domain (possibly with moving boundary) is central to many applications, such as diffusion
phenomena, fluid dynamics, charge transport in semiconductors, crystal growth, electromagnetism and many others. The
wide range of applications may require different kinds of boundary conditions. Let us look for instance at the temperature
distribution in a medium of arbitrary shape satisfying stationary heat equation: we may have Dirichlet (the temperature is
fixed at the boundary), Neumann (heat flux is prescribed), or mixed boundary conditions (namely different boundary
conditions on different parts of the boundary). More general Robin boundary conditions may also be prescribed, as in
Stefan-type problem, in which a combination of temperature and heat flux is prescribed at the boundary (e.g. see [27,9]).
An application we have in mind is to fluid dynamics: the aim is to model the motion of an incompressible fluid contained
in a tank of arbitrary shape. The problem is modeled by incompressible Euler equations, which are solved by projection
method of Chorin [15,16]. This leads to an elliptic equation for the pressure, obtained enforcing the incompressibility
condition. This pressure equation requires Dirichlet condition on the free surface of the fluid (because we prescribe the
atmospheric pressure for instance) and Neumann condition on the rigid walls. The pressure equation is the bottleneck of
the whole method and therefore requires an efficient solver. Since the correction step is made by the gradient of the
pressure, the method must be accurate also in the gradient.

⇑ Corresponding author. Tel.: +39095 738 3039.


E-mail address: russo@dmi.unict.it (G. Russo).

0021-9991/$ - see front matter Ó 2012 Elsevier Inc. All rights reserved.
http://dx.doi.org/10.1016/j.jcp.2012.11.047
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 465

Several techniques have been developed to solve elliptic equation on an arbitrary domain. Finite Element Methods use a
mesh triangulation to capture the boundary [50,51,45,57]. However, in presence of moving boundary, a grid re-meshing is
needed at each time step, which makes the method expensive. Furthermore, for a complex geometry, generation of a good
mesh is a non trivial task that may require a considerable amount of work [38]. For this reason a Cartesian grid method is
preferred together with a level-set approach to keep track of the boundary at each time step. Level-set methods have been
introduced to implicitly define a domain and its boundary, in order to handle complex topological changes due to the motion
of the boundary such as merging and breaking up. Several papers and books exist in the literature about level-set methods:
[61,47,55,23,58] are just some examples.
Since the boundary may be not aligned with the grid, a special treatment is needed. The simplest method makes use of the
Shortley–Weller discretization [60], that discretizes the Laplacian operator with usual central difference away from the
boundary and makes use of a non-symmetric stencil in the interior points of the domain close to the boundary. While this
discretization provides a simple second order method for Dirichlet conditions, it cannot be immediately applied in presence
of Neumann conditions. In fact, Shortley–Weller discretization [60] for Neumann conditions requires that the value of the
numerical solution is suitably reconstructed at the intersection between the grid and the boundary by applying the boundary
conditions. This approach is adopted, for example, by Hackbusch in [31] to first order accuracy, and by other authors (see [7]
and the references therein) to second order accuracy. However, the method proposed by Bramble in [7] for second order
accuracy is quite involved and not recommendable for practical purposes.
Another method which achieves second order accuracy by modifying standard difference formulas was proposed by
Mayo in [40] for solving Poisson or biharmonic equation on irregular domains. Such method embeds the irregular domain
in a regular region with a Cartesian grid and discretizes the equation on the whole region, by suitable extension of the solu-
tion outside.
One of the most challenging problems in numerical methods for elliptic equations is the case of discontinuous coefficient.
The pioneer work of Peskin [49] introduced the Immersed Boundary Method, and was later developed by other authors
[36,65] (Immersed Interface Method). Several methods have been recently developed: for sharp-edge interface, such as
the Matched Interface and Boundary (MIB) method [66]; the finite volume method [46]; the non-symmetric positive definite
finite element method [32], where the more general case of variable matrix coefficient is treated; the virtual node method
[4]. In [17], the authors add additional unknowns on the interface, allowing to express straightforwardly the interface
transmission conditions. The case of discontinuous coefficients is currently under investigation by the authors and some
preliminary results in one dimension can be found in [18].
Several methods have been also proposed to model the interaction between multiphase flows and solid obstacles, such as
Arbitrary Lagrangian Eulerian (ALE) [25,22], Distribute Lagrangian Multiplier (DLM) [28], penalization methods [56,1]. In
[13] a combination of penalization and level-set methods is presented to solve inverse or shape optimization problems
on uniform Cartesian meshes.
In this paper we propose a simple discretization technique for the solution of elliptic problems in arbitrary domains
embedded in a regular square grid, solved by a multigrid approach. The discretization is based on a finite-difference
ghost-cell technique, that adds extra grid points (ghost points) outside the domain. In ghost points the boundary conditions
are enforced in order to close the linear system.
The ghost-cell method was first developed by Fedkiw in [24], where a two-phase contact discontinuity was discretized
(Ghost Fluid Method). A second-order accurate method for Dirichlet conditions on regular Cartesian grid is proposed by Gi-
bou et al. in [26]. The value at the ghost nodes is assigned by linear extrapolation, and the whole discretization leads to a
symmetric linear system, solved by a preconditioned conjugate gradient method. A fourth order accurate method is also pro-
posed in [27]. Other methods use a non-regular Cartesian grid, such as in [14], where Gibou et al. present finite difference
schemes for solving the variable coefficient Poisson equation and heat equation on irregular domains with Dirichlet bound-
ary conditions, using adaptive Cartesian grids. One efficient discretization based on cut-cell method to solve more general
Robin conditions is proposed by Gibou et al. in [48], which provides second order accuracy for the Poisson and heat equation
and first order accuracy for Stefan-type problems, and in [44] where suitable Neumann boundary conditions are discretized
in a fluid–solid coupling method based on Hodge projection step.
Most of the techniques listed above cannot be straightforwardly applied in the special case of mixed boundary conditions.
Simple efficient methods based on symmetric image of ghost points to solve mixed boundary condition problems provided
with a multigrid algorithm have been recently developed in [11] and by Ma et al. [39], while a geometric multigrid method
for embedded boundaries, applicable for mixed boundary conditions, and based on a cut-cell (finite volume) approach has
been recently presented in [19].
Our method consists in the discretization of the elliptic operator using central difference, namely using a symmetric five-
point stencil in two space dimension, centered in each of the N i internal grid points. The symmetry of the five-point stencil
near the boundary suggests the introduction of N g ghost points, i.e. grid points outside the domain and belonging to a five-
point stencil centered at an interior point. In order to close the linear discrete system, we write an equation for each ghost
point, enforcing the boundary condition in the closest point of the boundary, by suitable interpolation. The choice of defining
a single value of the unknown at ghost points has the advantage that it provides a natural extension of the solution out of the
domain, in a neighborhood of the boundary. Other approaches, such as the one adopted by Gibou and Fedkiw in [26], defines
more values at the same ghost point, and is restricted to Dirichlet conditions, but achieves better accuracy, as shown in the
comparison in Section (5.5). A procedure based on biquadratic interpolation of the solution on the point of the boundary
466 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

closest to the ghost point is adopted, providing second order accuracy in the solution and its gradient, as is confirmed by
several numerical tests. Although the approach could be used to construct higher order schemes (using high order polyno-
mials), we restrict ourselves to second order accuracy. The full set of equations (for the interior and for the ghost points) is
solved by a suitable multigrid strategy.
Multigrid technique is one of the most efficient strategy to solve a class of partial differential equations, using a hierarchy
of discretizations. An introduction to multigrid can be found, for example, in [8], while more advanced textbook on the sub-
ject are, for example, [62,30]. Related literature for elliptic equations for arbitrary domain can be found in the detailed survey
[12] and in the reference therein. Other recent developments are [63,64,34].
In all these papers, the multigrid is identified by the smoother and the transfer operators. Classical smoothers are usually
variants of Jacobi or Gauss–Seidel iterations. Since each condition on a ghost point may involve other ghost points, then the
additional conditions are coupled, and it is not trivial to eliminate the ghost points. Furthermore, even if we eliminated the
ghost points by solving for them in terms of the inner points, then we would obtain a non convergent Jacobi or Gauss–Seidel
scheme. For this reason the whole ðN i þ N g Þ  ðN i þ N g Þ system with non-eliminated boundary conditions is considered.
While it is clear how to iterate on the equations relative to inner points, it is not obvious how to treat boundary conditions.
In this paper we present an original procedure for relaxing the equations on the ghost points. The procedure is based on
re-writing both the PDE and the boundary conditions as an evolutionary problem using a fictitious time, which in practice
has the meaning of a relaxation step: the original problem is defined as the stationary condition for the time dependent
counterpart. The choice of the appropriate fictitious time step is dictated by stability conditions (more precisely by positivity
conditions) of the forward Euler scheme applied to the corresponding evolutionary equation. This approach, which may be
viewed as an automatic way to construct a good preconditioning for the original algebraic system, leads to a convergent Ja-
cobi iteration for the full problem, at least in the case of the first order accurate scheme, as is shown in Section (3).
A similar approach, in a different context, has been introduced in 1987 by Merkle and Athavale [42] and by Rau [53], and
subsequently adopted in conjunction with multigrid by Jameson [33]. In the latter paper, Jameson used the approach to solve
unsteady compressible flows. The method consists in solving the whole problem implicitly in the physical time, and then
adding a fictitious time at each time step in order to find the steady-state solution of the intermediate problem. The multi-
grid strategy was adopted to accelerate the steady-state convergence of the fictitious-time problem. The multigrid applied to
dual time stepping has been later improved in [54] and coupled with a time-derivative preconditioning in [20,37,3,59].
In our approach, the restriction operator is suitably modified for grid points close to the boundary, so that it weights only
grid points from the same side of the boundary, because we want to transfer separately the defect of the inner equations
from the defect of the boundary conditions (since they refer to different operators which scale with different powers of
the spatial step). We experienced that this special treatment is not necessary for the interpolation operator, since it acts
on the error, which is supposed to be sufficiently smooth across the boundary. The motivation for this conjecture is that
the error refers to the solution, which is smoothly extended on ghost points from the internal points, using the boundary
conditions. Such smoothness property is not true for the residue.
The plan of the paper is the following: the next section presents the discretization of the problem and the extension to
some particular cases: Robin boundary conditions, variable coefficients, anisotropic case and sharp-edge domain. In Section 3
we describe the relaxation scheme (for which we provide also a convergence proof for the first order accurate method), using
the fictitious time technique. Section 4 is devoted to the description of the multigrid approach, with a particular attention to
the transfer operators. The last section presents several numerical tests, showing the second order accuracy in the solution
and its gradient, and the optimal convergence factor for the multigrid.

2. Discretization of the elliptic equation

We start describing the numerical method for the simplest model problem, namely the Poisson equation with mixed
boundary conditions in a smooth domain. Therefore we extend the technique for more general elliptic problems, such as
Robin boundary conditions, the variable coefficient case, anisotropic problems, sharp-edged domains.
Let d P 1 an integer, D ¼ ½1; 1d the computational domain, X  D a domain such that @ X \ @D ¼ ;. We assume that X is
a smooth domain, i.e. @ X 2 C 1 . Let fCD ; CN g be a partition of @ X (i.e. CD [ CN ¼ @ X; CD \ CN ¼ ;).
Model Problem 1. Consider the model problem:
 Du ¼ f in X; ð1Þ
u ¼ g D on CD ; ð2Þ
@u
¼ g N on CN ; ð3Þ
@n
^ is the outward unit normal to @ X; f : X ! R; g D : CD ! R; g N : CN ! R are assigned functions.
where n

2.1. Notation

Let N P 1 an integer and h ¼ 2=N the spatial step. Let Dh ¼ jh; j ¼ ðj1 ; . . . ; jd Þ 2 fN; . . . ; N gd and Xh ¼ X \ Dh be the dis-
crete versions of D and X respectively. Dh is the set of the grid points. Let Ch the set of the so-called ghost points, defined as
follows:
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 467

ðx; yÞ 2 Ch () ðx; yÞ 2 Dh n Xh and fðx  h; yÞ; ðx; y  hÞg \ Xh – ;:


Let us denote N i ¼ jXh j and N g ¼ jCh j the cardinality of sets Xh and Ch . We will use the following notation for discrete func-
tions: wj1 ;...;jd  wðj1 h; . . . ; jd hÞ; wP  wðPÞ.
From now on, we consider the two-dimensional case, but easy generalization can be obtained on higher dimension.

2.2. Level-set function

In order to keep track of the boundary C, we introduce the level set function /0 : D ! R, in such a way:

ðx; yÞ 2 X () /0 ðx; yÞ < 0; ðx; yÞ 2 @ X () /0 ðx; yÞ ¼ 0:
From the level-set function we can easily compute the outward unit normal to the zero level-set and the curvature:
r/0

n ; ^:
k¼r n
jr/0 j
General references on the level set method for tracking interfaces are, for examples, [47] or [58]. The signed distance function
/ is a particular case of level-set function:

dððx; yÞ; CÞ if ðx; yÞ 2 X;
/ðx; yÞ ¼
dððx; yÞ; CÞ if ðx; yÞ R X;
where dððx; yÞ; CÞ ¼ inf ðx;yÞ2C de ððx; yÞ; ð ÞÞ is the distance function between a point and a set and de denotes the Euclidean
x; y
distance between points. From the level set function /0 , we can obtain the signed distance function / by fast marching meth-
ods [58] or by the reinitialization procedure based on the numerical solution of the following PDE
@/
¼ sgnð/0 Þð1  jr/jÞ; ð4Þ
@t
as we can see, for instance, in [61,55,23]. A signed distance function is preferred to a simple level-set function because sharp
gradients are avoided and it is simpler to compute the boundary closest point to a given ghost point. In practice, Eq. (4) has to
be solved for a few time steps, in order to compute the distance function a few grid points away from the boundary.

2.3. Discretization of the problem

Let us start by describing the space discretization of the problem, i.e. the discretization of model Problem 1. Our goal is to
write a ðN i þ N g Þ  ðN i þ N g Þ linear system, where N i ¼ jXh j and N g ¼ jCh j. The N i equations coming from the inside grid
points of X are obtained from the discretization of the Laplace operator by the 5-point stencil (Fig. 1):
 
4ui;j  ui;j1 þ ui;jþ1 þ ui1;j þ uiþ1;j
2
¼ fi;j : ð5Þ
h
To close the linear system, we must write an equation for each ghost point G.
 
Let G be a ghost point. We compute the outward unit normal in G, that is n ^ G ¼ nxG ; nyG ¼ r/=jr/j, using a second order
accurate discretization for r/, such as central difference in G. Now we can compute the closest boundary point to G, that we
call B, by the signed distance function (see Fig. 2):
^ G /ðGÞ:
B¼Gn ð6Þ

Fig. 1. Five-point stencil centered at P. The grid point G is outside the domain and it is named ghost point.
468 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

We observe that indeed B depends on G, then it should be written as BG , but we omit the subscript for clarity. Now, we dis-
cretize in some way the Dirichlet or the Neumann boundary condition whether B lies respectively on the Dirichlet or Neu-
mann boundary. In particular, if B 2 CD , the equation for the system becomes:

uh ðBÞ ¼ g D ðBÞ;
while, if B 2 CN , it becomes:
@uh
ðBÞ ¼ g N ðBÞ;
@n
where uh ðBÞ and @u
@n
h
ðBÞ are suitable reconstructions of the exact solution and its normal derivative by the numerical solution
uh . We choose
@uh  
~ ðBÞ;
uh ðBÞ ¼ u ðBÞ ¼ ðru ^ ÞjB ¼ ru
~ n ~ r/=j ~  ;
~ r/j ð7Þ
@n B

~ are biquadratic interpolants respectively of u and / on the following Upwind nine-point stencil St 9 :
~ and /
where u
n o
St9 ¼ G þ hðsx k1 ; sy k2 Þ : ðk1 ; k2 Þ 2 f0; 1; 2g2 ; ð8Þ

where sx ¼ sgnðxB  xG Þ and sy ¼ sgnðyB  yG Þ, with the notation P


ðxP ; yP Þ, for P ¼ G; B.
Some particular cases may occur when the nine-point stencil (8) contains some points that do not belong to Xh [ Ch , and
then are not unknowns of the system (see Figs. 3 and 4). In such cases, we modify the nine point stencil as described in the
following section in such a way that all nine points of the stencil belong to Xh [ Ch , or in the worst cases we reduce the
stencil.
Another paper using the discretization on the boundary closest point is [10], where the author presents a method for solv-
ing the two-dimensional Navier–Stokes equations in irregular physical domains on a uniform Cartesian grid by a second-or-
der finite-difference/finite-volume discretizations of the streamfunction–vorticity equations.

2.3.1. Choice of the stencil


If jxB  xG j < jyB  yG j (as in Figs. 3 and 4), the nine-point stencil will be composed by three points of the column i, three
points of the column i þ s, three points of the column i þ 2s, where s ¼ sgnðxB  xG Þ; while if jxB  xG j P jyB  yG j it will be
composed by three points of the row j, three points of the row j þ s, three points of the row j þ 2s, where s ¼ sgnðyB  yG Þ.
Let us suppose jxB  xG j < jyB  yG j and xB  xG < 0 (the other cases are treated similarly).
Then:

The three points of the column i are:

ði; jÞh; ði; j  1Þh; ði; j  2Þh:


Since ði; j  1Þh 2 Xh , such three points belong to Xh [ Ch .
The three points of the column i  1 are

ði  1; jÞh; ði  1; j  1Þh; ði  1; j  2Þh;


if all of them belong to Xh [ Ch , otherwise we choose:

ði  1; j  1Þh; ði  1; j  2Þh; ði  1; j  3Þh; ð9Þ


if all of them belong to Xh [ Ch , otherwise we reduce the stencil as described later.

Fig. 2. Computation of the boundary closest point B to the ghost point G from the normal unit vector, obtained from the signed distance function.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 469

Fig. 3. Modified nine-point stencil in Upwind direction for the ghost point G. The squared grid points belong to (8) but do not belong to Xh [ Ch . The final
stencil is composed by the circular grid points.

Fig. 4. Reduction of the nine-point stencil to a three-point stencil for the discretization of the boundary condition concerning the ghost point G.

The three points of the column i  2 are


ði  2; jÞh; ði  2; j  1Þh; ði  2; j  2Þh;
if all of them belong to Xh [ Ch , otherwise we choose:
ði  2; j  1Þh; ði  2; j  2Þh; ði  2; j  3Þh;
if all of them belong to Xh [ Ch , otherwise, if the three points for the column i  1 were those indicated in Eq. (9), we choose:
ði  2; j  2Þh; ði  2; j  3Þh; ði  2; j  4Þh;
if all of them belong to Xh [ Ch , otherwise we reduce the stencil as described later.

Stencil reduction. If it is not possible to build the nine-point stencil, we revert to a more robust (less accurate) three-
point stencil. For example, in the case illustrated in Fig. 4 we choose:
ði; jÞh; ði  1; jÞh; ði; j  1Þh
and we use a linear interpolation instead of a biquadratic interpolation. Note that these three points belong to Xh [ Ch , since
ði; j  1Þh 2 Xh .

Remark (Error in the gradient). If we were interested in second order accuracy just of the solution, we could use a linear
interpolation for uh ðBÞ. Since in general we want to obtain second order accuracy also in the gradient (which is required for
specific applications) we use biquadratic interpolation for both Dirichlet and Neumann conditions (see [41,43]).
470 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

2.4. Generalizations

In this section we show how the approach can be used in more general cases, which are of great relevance in practical
applications. In particular, we consider extension of the method to variable coefficients, anisotropic operators, and domains
with singularities.

2.4.1. Robin boundary conditions


So far we have considered model Problem 1 with mixed boundary conditions. Indeed, the same discretization approach
works for the more general Robin boundary conditions. In such case, model Problem 1 becomes:
Model problem 2

 Du ¼ f in X; ð10Þ
@u
au þ b ¼ g on C; ð11Þ
@n
where C ¼ @ X, while a; b : C ! R and g : C ! R are assigned functions, with a; b P 0.
Model Problem 1 is a particular case of model Problem 2, obtained by choosing a ¼ vCD and b ¼ vCN , where vA : C ! R
denotes the characteristic function over A # C. The discretization of the latter is obtained straightforwardly from the discret-
ization of the former described in Section 2.3.

2.4.2. Variable coefficient


The discretization can be extended to the case of variable coefficient, i.e. we replace the Laplacian operator Du by a more
general operator r ðcruÞ. Model Problem 1 becomes:
Model problem 3

 r ðcruÞ ¼ f in X;
u ¼ g D on CD ;
@u
¼ g N on CN ;
@n
where c : X ! R is an assigned positive function.
Observe that actually Neumann boundary condition should be c@u=@n ¼ g N since the quantity c@u=@n represents the flux,
but we can rename g N :¼ g N =c and consider the usual Neumann condition we have considered up to now.
Let us suppose we know the function c only on the grid points and let ci;j ¼ cðih; jhÞ. The discretized system is obtained in
the same manner as the one described in Section 2.3, provided we replace Eq. (5) with:
1        
 2
ciþ1=2;j uiþ1;j  ui;j þ ci1=2;j ui1;j  ui;j þ ci;jþ1=2 ui;jþ1  ui;j þ ci;j1=2 ui;j1  ui;j ¼ fi;j ;
h
where ci1=2;j ¼ ðci;j þ ci1;j Þ=2, ci;j1=2 ¼ ðci;j þ ci;j1 Þ=2.
In the case of smooth coefficient c, the method maintains the prescribed second order accuracy (see Section 5). If the coef-
ficient c is not smooth, then a loss of accuracy is observed. The important case of piecewise smooth coefficient, which mod-
els, for example, a system composed by different materials separated by an interface, is not considered here, and is subject of
a work in progress.

2.4.3. Anisotropic case


In this section we describe how to extend this technique to the case of variable matrix coefficient. Let us consider the
following:
Model problem 4

 r ðAruÞ ¼ f in X; ð12Þ
u ¼ g D on CD ; ð13Þ
^ ¼g
ru N on CN ; ð14Þ
N
  22
where A ¼ ai;j i;j¼1;2 : X ! R ^ is the co-normal vector to the
is a symmetric positive definite variable matrix, and N ¼ A n
boundary.
Eq. (12) can be approximated by a conservative or a non-conservative discretization. We decided to use the latter, which
is slightly simpler to manage by multigrid. Expanding (12), we obtain:
!
@a11 @u @a12 @u @a12 @u @a22 @u @2u @2u @2u
 þ þ þ þ a11 2 þ 2a12 þ a22 2 ¼ f : ð15Þ
@x @x @x @y @y @x @y @y @x @x@y @y

Even if we use an analytical expression of A in numerical tests of Section 5, we suppose in our method that we know the
values of A only in inside grid points, or at most on the boundary. Of course, we need to know the value of A also in ghost
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 471

points, due to the presence of coefficient derivatives. Such a ghost value can be obtained by second order accurate extrap-
olation [2], or if we know A also on the boundary, we can enforce such boundary value as a boundary condition, obtaining
ghost values by biquadratic extrapolation, using the usual nine-point stencil in Upwind direction.
All the spatial derivatives appearing in (15) can be discretized by central differences. In this case, the stencil will be com-
posed by nine points instead of five, due to the presence of the mixed derivative term @ 2 u=@x@y, which can be discretized by
the standard stencil:
2 3
1 0 1
@2u 1 6 7 uiþ1;jþ1 þ ui1;j1  uiþ1;j1  ui1;jþ1
 4 0 0 0 5ui;j ¼ : ð16Þ
@x@y 4h2 4h
2
1 0 1
The whole stencil for an inside grid point results therefore in a nine-points stencil. We observe that we must modify the set
Ch of the ghost points in order to include all the outside grid points involved in the stencil (16) when it is referred to an inside
grid point close to the boundary. In order to reduce the total amount of ghost points, we modify this nine-point stencil into a
seven-point stencil for inside grid points close to the boundary (see Fig. 5). In details, if a grid point ðx; yÞ 2 Xh satisfies
j/ðx; yÞj < h, then we compute the normal n ^
ðnx ; ny Þ ¼ r/=jr/j. Then, if nx ny P 0, we use the following discretization
for the mixed derivative:
2 3
2
1 1 0
@ u 1 6 7
 4 1 2 1 5ui;j ;
@x@y 2h2
0 1 1
while, if nx ny < 0, we use:
2 3
0 1 1
@2u 1 6 7
 4 1 2 1 5ui;j :
@x@y 2h2
1 1 0
For an explanation of such stencils see for instance [62, page 264].
We observe that, for the Neumann boundary condition, we always find the closest boundary point to the ghost point and set
^ , but we discretize the numerical derivative along the co-normal
the nine-point stencil in Upwind direction with respect to n
^ (see Fig. 6). This mismatching may lead to a non-Upwind discretization for the co-normal derivative, especially
direction N
for strongly anisotropic operators.

2.4.4. Sharp-edged domain


The method is designed for C 1 boundaries. Some extension is however possible when the boundary is only Lipschitz con-
tinuous, i.e. in presence of kinks due to the intersection or union of two smooth domains. We observe that, although it is
possible to have an exact solution with singular gradients (due to the lack of regularity of the boundary, even if boundary
conditions and sources are smooth), the numerical tests of Section 5 (5.9 and 5.11) are limited to cases where the solution
is smooth.
Let us describe how to modify the method near kinks due to intersection of two domains (if we are near the union of two
domains the approach is similar). In particular, let us consider the two-dimensional case. Let

Fig. 5. The stencil for the mixed derivative changes accordingly to the distance from the boundary and to the normal direction.
472 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

^ P computed in P, while the discretization is performed along the co-normal


Fig. 6. The stencil is in Upwind direction with respect to the normal vector n
^
direction N.

Fig. 7. Domain as intersection of two smooth domains (Section 2.4.4).

 
X1 ¼ ðx; yÞ 2 R2 : /1 ðx; yÞ < 0 ; X2 ¼ ðx; yÞ 2 R2 : /2 ðx; yÞ < 0
be two domains with non-empty intersection, and let X ¼ X1 \ X2 as in Fig. 7.
The domain X is described by the level set function / ¼ max f/1 ; /2 g (/ ¼ min f/1 ; /2 g in case of union of domains) and
the approach proposed so far applies also in this case, but a special treatment is needed close to the kinks of the intersection
@ X1 \ @ X2 , because if we use the numerical method proposed so far using the level-set function / ¼ max f/1 ; /2 g, the accu-
racy is just first order (even for L1 -error), and this is due to the discontinuity of r/ near the intersection between the two
domains. In fact, referring to the Fig. 8, let us consider the ghost point P. Computing the boundary closest point using the
level-set function / we obtain H and the segment PH is not normal to the boundary. Moreover, the normal to the boundary
in the point H computed using the stencil P; Q ; P 1 ; . . . ; P7 is incorrect (the arrow is normal to the approximation of the zero
level-set of / showed by the dashed red line). We must use a different approach if we want to preserve second order
accuracy.
We refer to Fig. 9. Let us suppose we want to compute the solution in the ghost point P1 . Computing the boundary closest
point using the level-set function / may produce an incorrect result, because / has a discontinuous gradient near the kink K.
Using separately the two level-set functions /1 and /2 , we can compute the two boundary closest points (respectively to @ X1
and @ X2 ) M and N. Neither M nor N belongs to @ X, then we cannot use any boundary condition from them. Therefore, we find
the point K 0 from P1 ; N; M solving the system:

ðM  K 0 Þ ðM  P1 Þ ¼ 0;
ðN  K 0 Þ ðN  P1 Þ ¼ 0:
The point K 0 is a second order accurate approximation of the exact kink K. Using the usual nine-point stencil, we enforce the
0
boundary condition in K to match the biquadratic ~ 0
  interpolation in K . In details, if K 2 CD , we enforce uðK Þ ¼ g D ðKÞ, other-
wise ðru~ n ^ i ¼ r/~i =r/~i , and u
^ i ÞðK 0 Þ ¼ g N ðKÞ, where n ~ and /~i are the biquadratic interpolant respectively of u and /i in the
nine-point stencil. We have to choose either i ¼ 1 or i ¼ 2. In order to prevent as much as possible the Upwind direction of
the stencil, we choice i such that n ^ i is closest to P1  K 0 , i.e., the scalar product n
^ i ðP 1  K 0 Þ is minimum.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 473

Fig. 8. Incorrect direction of the normal near the intersection between the two domains, when using a single level set function /. Due to the approximation
near kink K, the corner is smoothed out (see dashed red line) and the normal direction is badly approximated. (For interpretation of the references to colour
in this figure legend, the reader is referred to the web version of this article.)

Fig. 9. Treatment of the kinks described in Section 2.4.4.

3. Relaxation scheme: fictitious time

Since we want to provide the multigrid solver of Section 4 with a good smoother, we want to use a Gauss–Seidel-like
iterative scheme to solve the ðN i þ N g Þ  ðN i þ N g Þ linear system. For clarity, we describe in the following the Jacobi-like
scheme, which of course has not the smoothing property (see [62]). Indeed, in numerical tests we will use the Gauss–Seidel
Lexicographic version of such scheme.
Firstly, we tested that the naive Jacobi scheme applied to the linear system does not converge. In order to use a conver-
gent Jacobi iteration as a building block for a multigrid method, we keep a Jacobi-type iteration for inner equations, while we
relax in some way the boundary conditions. Let us consider the model Problem 1 (1)–(3) as stationary condition for the fol-
lowing associate time-dependent problem:
@u~
~ þ f in X;
¼ Du ð17Þ
@t
@u~
¼ lD ðg D  u
~ Þ on CD ; ð18Þ
@t

@u~ @u~
¼ lN g N  on CN ; ð19Þ
@t @n
~¼u
u ~ 0 in X; when t ¼ 0; ð20Þ
474 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

where lD and lN are two positive constants to be determined. A similar approach was adopted in a different context by An-
thony Jameson, where a dual time stepping strategy coupled with multigrid technique was used in order to solve an implicit
step for hyperbolic systems, thus allowing a large time step that overcomes the classical CFL condition [33].
Here the main novelty is the relaxation of the boundary condition, and the choice of the fictitious time step (or, more
properly, of the constants lD and lN ). Note that using positive constants, both Eq. (17) and Eq. (18) represent dissipative
equations that relax towards the stationary equilibrium. Eq. (19), on the other hand, represents an advection equation that
transports the boundary information from the boundary to the ghost point.
~ =@t ! 0, as t ! þ1), then uðxÞ ¼ limt!þ1 u
If the solution of the problem (17)–(20) is stationary (i.e. @ u ~ ðt; xÞ is a solution of
model Problem 1 (1)–(3). A relaxation scheme can be therefore obtained by discretizing the problem (17)–(20), where now
the time t represents an iterative parameter.
For any grid point ðih; jhÞ of Xh , we write an equation obtained from the discretization of (17) in such point, using forward
Euler in time and central difference in space and taking the maximum time step consented by the CFL condition
2
(i.e. Dt ¼ h =4):
 
ðnþ1Þ 2 ðnÞ ðnÞ ðnÞ ðnÞ
ui;j ¼ 1=4 h fi;j þ ui1;j þ uiþ1;j þ ui;j1 þ ui;jþ1 : ð21Þ

Eq. (21) is equivalent to discretize directly (1) using central difference in space and apply Jacobi iteration.
For any ghost point G 2 Ch we compute the projection point B on the boundary by (6) and discretize (18) or (19) if respec-
tively G 2 CD or G 2 CN . We use forward Euler in time in the point G and the discretization (7) in space in the point B. We
observe that the discretization in time is only first order accurate, but this does not degrade the overall accuracy since we are
interested at the stationary solution. We obtain the iterative scheme:
 
ðnþ1Þ ðnÞ ðnÞ
uG ¼ uG þ lD Dt g D ðBÞ  uh ðBÞ ; ð22Þ

if G 2 CD , or
!
ðnþ1Þ ðnÞ @uh ðnÞ
uG ¼ uG þ lN Dt g D ðBÞ  ðBÞ ; ð23Þ
@n

if G 2 CN .
ðnÞ ðnÞ
The reconstructions uh ðBÞ and @u
@n
h
ðBÞ are the ones described in Section 2.3. Constants lD and lN of (22) and (23) are
ðnÞ
obtained by CFL condition, i.e. in such a way that the coefficient of uG in the right-hand side of (22) and (23) is positive.
Such conditions read:
lN Dt 2
lD Dt < 1; < pffiffiffi : ð24Þ
h 3 2
pffiffiffi 2
pffiffiffitests of Section 5, we choose lD Dt ¼ 0:9 and lN Dt ¼ 0:9 2h=ð3 2Þ. Since Dt ¼ h =4, then
In numerical lD ¼ 3:6=h2 and
lN ¼ 7:2=ð3 2hÞ.
The method can be easily generalized in higher dimension.

3.1. Convergence proof

In this section we shall prove the convergence of the relaxation scheme only for the first order discretization of the
boundary conditions. For the second order method, numerical experiments confirm the convergence of the method, i.e.
the spectral radius of the iteration matrix B is less than one.
The first order accurate relaxation scheme is the following:
ðnþ1Þ 1 2 ðnÞ ðnÞ ðnÞ ðnÞ

ui;j ¼ h fi;j þ ui1;j þ uiþ1;j þ ui;j1 þ ui;jþ1 if ðih; jhÞ 2 Xh ; ð25Þ
4
 
ðnþ1Þ ðnÞ ðnÞ
uG ¼ uG þ lD Dt g D ðBÞ  uG if G 2 CD ; ð26Þ

Dt  ðnÞ    
uG  uQ x jnx j þ uG  uQ y ny 
ðnþ1Þ ðnÞ ðnÞ ðnÞ ðnÞ
uG ¼ uG þ lN Dtg N ðBÞ  lN if G 2 CN ; ð27Þ
h
where Q x and Q y are the two Upwind close points to G (we say that the grid point Q is an upwind close point to G if dðG; Q Þ ¼ h
^ > 0, see Fig. 10).
and ðG  Q Þ n
Note that the iterative scheme can be seen as a preconditioned iterative method with a diagonal preconditioner P, whose
diagonal is:
h i
2
diagðPÞ ¼ . . . ; 4=h ; . . . ; ðlD DtÞ1 ; . . . ; ðlN DtÞ1 ; . . . ;

where the entries refer respectively to the inner equations, the Dirichlet and the Neumann boundary conditions. Therefore,
the iterative scheme for the linear system Au ¼ f reads:
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 475

Fig. 10. B is the boundary closest point to G, while Q x and Q y are the two Upwind close points to G.

 
uðnþ1Þ ¼ uðnÞ þ P1 f  AuðnÞ :
where uðnÞ ; f 2 RNi þNg ; A; P 2 RðNi þNg ÞðNi þNg Þ . The iteration matrix is B ¼ ðbij Þi;j ¼ I  P1 A, where I is the identity matrix.
We shall make use of Gershgorin–Hadamard theorems on eigenvalue localization in the complex plane [52]. Let us check
that all the Gershgorin circles are subset (in the complex plane) of the unit circle Bðð0; 0Þ; 1Þ centered at the origin. For any
row k, we define
NX
i þN g  
ck ¼ bk;k ; rk ¼ bk;l ;
l¼1
l–k

respectively the center and radius of the associated Gershgorin circle Bððck ; 0Þ; rk Þ. Then:

Bððck ; 0Þ; r k Þ # Bðð0; 0Þ; 1Þ () rk 6 1  jck j: ð28Þ


Our goal is therefore to check that the right-hand side of (28) holds for any k ¼ 1; . . . ; N i þ N g . If k is related to one of the N i
equations of the kind (21), then ck ¼ 0; r k ¼ 1 and the right hand-side of (28) is satisfied. If k is related to an equation of the
kind (26), then ck ¼ 1  lD Dt; r k ¼ 0 and the right hand-side of (28) is (strictly) satisfied, by the CFL condition (24). If k is
related to an equation of the kind (27), then
lN Dt   
ck ¼ 1  jnx j þ ny  ; ð29Þ
h

l N Dt   
rk ¼ jnx j þ ny  ð30Þ
h

and the right hand-side of (28) is (strictly) satisfied if and only if rk 6 1. This is true because
pffiffiffi
lN Dt=h < 1= 2
by the CFL condition (24), and
  pffiffiffi
jnx j þ ny  6 2

(because n2x þ n2y ¼ 1). This leads us to claim qðBÞ 6 1. Now we cannot apply the second Gershgorin–Hadamard theorem di-
rectly to matrix B, since it is reducible. In fact, if we order the rows of B in such a way that the ones which refer to the iter-
ations (26) are placed first, we have:


ð1  lD DtÞI 0
B¼ ;
A21 A22
D D N D N N
where I 2 RNg Ng is the identity matrix, A21 2 RðNi þNg ÞNg ; A22 2 RðNi þNg ÞðNi þNg Þ , with N Dg and N Ng representing the cardinality of
the sets of ghost points whose projection on the boundary lies respectively on the Dirichlet and Neumann part. Therefore, the
eigenvalues of B are 1  lD Dt counted N Dg times and the eigenvalues of A22 . Now, if there exists an eigenvalue ~ k of B such that
j~
kj ¼ 1, this must be an eigenvalue of A22 . Since A22 is irreducible (it can be easily proved that the associate directed graph is
strongly connected, which is a characterization of the irreducible matrices), we can apply the second Gershgorin–Hadamard
theorem and state that ~ k belongs to the boundary of all Gershgorin circles of A22 . But, if we consider a grid point P 2 Xh such
that there exists at least one point of the five-point stencil centered in P (see Fig. 1) which is a ghost point whose projection
(see Fig. 2) lies on the Dirichlet part of the boundary, then the center ~c and radius ~r of the Gershgorin circle related to the row
of the matrix A22 which refers to such a grid point P satisfy:
476 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

3
~c ¼ 0; ~r 6
4
and then it must be ~
k 2 @Bð~c; ~r Þ, which is a contradiction. It follows that qðBÞ < 1. h

3.2. Extension of the relaxation scheme to other cases

In this section we describe how to modify the associate time-dependent problem (17)–(20) for the cases introduced in
Section 2.4, namely Robin boundary conditions, variable coefficient diffusion, anisotropic operators, sharp-edged domains.

3.2.1. Robin boundary conditions


Let us consider model Problem 2 (10), (11). The associate time-dependent problem is:
@u
¼ Du þ f in X;
@t


@u @u
¼ l g  au þ b on C;
@t @n
u ¼ u0 in X; when t ¼ 0:
~ be the biquadratic interpolants of u and / in the Upwind nine-point stencil. Therefore,
~ and /
For any ghost point G 2 Ch , let u
the second order accurate iterative scheme for the problem (10), (11) will be:
 
ðnþ1Þ 2 ðnÞ ðnÞ ðnÞ ðnÞ
ui;j ¼ 1=4 h fi;j þ ui1;j þ uiþ1;j þ ui;j1 þ ui;jþ1

for any grid point ðih; jhÞ 2 Xh , and


  
uP
ðnþ1Þ ðnÞ
~ðnÞ nH þ lDt g
~ ðnÞ ðHP Þ þ bru
¼ uP  lDt au ð31Þ
P
 
~ r/
^ ¼ r/=
for any ghost point G, where B is the closest boundary point to G; n ~ ; a ¼ aðBÞ; b ¼ bðBÞ; g ¼ gðBÞ, and l is cho-
sen in order to satisfy the CFL condition:
lDt 1
< pffiffiffi : ð32Þ
h ah þ 3=2 b 2

3.2.2. Convergence proof


First order accurate scheme is obtained replacing (31) with (see Fig. 10):

 
b  ðnÞ  
uG  uQ x jnx j þ uG  uQ y ny  :
ðnþ1Þ ðnÞ ðnÞ ðnÞ ðnÞ ðnÞ
uG ¼ uG þ lDt g  lDt auG þ
h
The convergence proof is similar to the one presented in the case of mixed boundary condition in Section 3.1, provided to
replace (29) and (30) with respectively:


b  
ck ¼ 1  lDt a þ jnx j þ ny  ;
h

lDt   
rk ¼ b jnx j þ ny  :
h
The CFL condition (32) ensures that ck P 0 and the right hand-side of (28) reads:


lDt    b  
b jnx j þ ny  6 lDt a þ jnx j þ ny  ;
h h
which is strictly satisfied for at least one ghost node since a is not identically equal to zero (i.e. the problem has not pure
Neumann conditions). This leads us to claim qðBÞ < 1 by the same argument of Section 3.1. 

3.2.3. Variable coefficient


Let us consider model Problem 3 of Section 2.4.2. The associate time-dependent problem is:
@u~
¼ lðr ðcru ~ Þ þ f Þ in X;
@t
@u~
¼ lD ðg D  u
~ Þ on CD ;
@t

@u~ @u~
¼ lN g N  on CN ;
@t @n
~¼u
u ~ 0 in X; when t ¼ 0;
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 477

where l is a positive function depending only on the space, in such a way in grid points ðih; jhÞ we have:
2
h
li;j Dt ¼ ;
ci1=2;j þ ciþ1=2;j þ ci;j1=2 þ ci;jþ1=2
so that we can regain the Jacobi scheme for inner equations. Constants lD and lN are defined as in (24). The convergence
proof for the first order accurate scheme can be extended straightforwardly to this case.

3.2.4. Anisotropic case


Let us consider model Problem 4 of Section 2.4.3. The associate time-dependent problem is:
@u
¼ lðr ðAruÞ þ f Þ in X;
@t
@u
¼ lD ðg D  uÞ on CD ;
@t
@u
¼ lN ðg N  ru NÞ on CN ;
@t
where l is a positive function having the same meaning as in the previous Section 3.2.3, i.e. in such a way the iteration
scheme is Jacobi-like for inner equations. The relaxation scheme is straightforward to obtain. We must observe that the con-
vergence of the relaxation scheme is not gained if the anisotropy is very high, i.e. if the ratio between the maximum and
minimum eigenvalues of the matrix A is greater than a suitable threshold.

3.2.5. Sharp-edged domain


Since the only difference is the spatial discretization, the relaxation scheme is straightforwardly obtained.

4. Multigrid approach

In this section we provide a multigrid strategy to accelerate the convergence of the relaxation scheme described in
Section 3. The main goal is to find a general strategy to make the multigrid convergent and to attain the optimal convergent
factor (i.e. the one predicted by the Local Fourier Analysis). We are not interested in this paper in constructing the most effi-
cient multigrid strategy, that is, we only want to describe how to treat the ingredients of the multigrid in presence of an
arbitrary domain and in relation with the boundary conditions, in order to limit the degradation of the convergence factor
due to boundary effects. In a few words, we describe the boundary treatment in order to gain the convergence factor pre-
dicted by the Local Fourier Analysis for the smoother used for inner equations, independently on the kind of smoother.
Therefore, we just use for simplicity a Gauss–Seidel Lexicographic smoother (we abbreviate it as Gauss–Seidel LEX or
GS-LEX), in place of the more efficient Red–Black Gauss–Seidel smoother, although it can be easily implemented in our
method. For the same reason, we only study the convergence factor of the W-cycle algorithm, without implementing the
more efficient Full Multigrid. We refer to [62] for a detailed explanation of the multigrid techniques and its ingredients.
In Section 4.1 we recall the standard algorithm of the multigrid, while in Section 4.2 we describe in details the transfer
operators, which differ from the standard ones.

4.1. General algorithm

The main idea behind the multigrid methods is to split the components of the error (high and low frequencies) and solve
them in different subspaces. In particular, the high frequency components of the error are solved on the fine grid, while the
low frequency components are solved in a coarser grid. To this purpose, we need to use a relaxation scheme having the
smoothing property, that is after a few relaxations on the fine grid the residue becomes smooth (the high frequency compo-
nents of the residue rapidly converge to zero), but not necessarily small. Therefore we transfer (in a suitable way) the residue
on a coarser grid and solve for the low frequency components (it costs less than solving them on the fine grid). Afterwards, we
interpolate the error on the fine grid and relax again a few times in order to reduce the error introduced by the interpolation.
This iteration is repeated until convergence. If we use only two grids, the algorithm is called Two-Grid Correction
Scheme (TGCS). By recursion, we can use more grids, obtaining for example the V-cycle, W-cycle algorithms (see [62] for more
details). The discrete problem to which the relaxation scheme (21)–(23) converges can be written as follows:
Dh uh ¼ fh in Xh ;

Lh uh ¼ g h on Ch ;
where Dh and Lh are the discrete versions of respectively the Laplacian and the boundary operator. Let us recall the TGCS,
which in our case is the following.

1. Set initial guess uh ¼ 0


2. Relax m1 times on the finest grid, using Eqs. (21)–(23)
478 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

C
3. Compute the defect rh ¼ ðrX
h ; rh Þ:

rXh ¼ fh þ Dh uh in Xh ;

rCh ¼ g h  Lh uh on Ch :
4. Transfer the defect to a coarser grid with spatial step 2h by a suitable restriction operator

r2h ¼ Ih2h ðrh Þ:


5. Solve exactly the residual problem in the coarser grid in the unknown e2h

D2h e2h ¼ rX2h in X2h ;

L2h e2h ¼ rC2h on C2h :


6. Transfer the error to the finest grid by a suitable interpolation operator

eh ¼ I2h
h ðe2h Þ:

7. Correct the fine-grid approximation


uh :¼ uh þ eh :
8. Relax m2 times on the finest grid, using again Eqs. (21)–(23)

To be more precise, rather than Jacobi iteration (21)–(23) we adopt Gauss–Seidel iteration during steps 2 and 8 of the
above algorithm. Furthermore, the two operators D2h and L2h appearing in step 5 have exactly the same structure of the cor-
responding operators on the fine grid, i.e. they are obtained by discretizing the original equation in X2h [ C2h .
In order to complete the description of the algorithm we have to specify the structure of interpolation and restriction
operators.

4.2. Transfer grid operators

In this section we define the transfer (interpolation and restriction) operators. The multigrid we are going to describe is a
geometric multigrid, and the Galerkin conditions (required in the Algebraic multigrid) are not satisfied. In practice, the inter-
polation and restriction operators are not one the transpose of the other (multiplied by a suitable constant) and the coarse
grid operator is constructed in the same way as in the fine grid, without taking into account the transfer operators. In this
way we can afford to treat in a simpler manner more complex geometries, maintaining the same sparsity pattern of the sys-
tem at all levels.
The defect rh is composed by the defect of the inner relaxations and the defect of the boundary conditions. The restriction
r2h ¼ I h2h rh has to be performed separately for the inner equation from the boundary conditions, since these defects may
show a sharp gradient crossing the boundary, because the discrete operators scale with different powers of h (see Fig. 11).
In addition, since we are dealing with arbitrary domain, ghost points may have a complex structure and the restriction of
the defect of the boundary conditions cannot be defined straightforwardly as in the rectangular case, where ghost points are
aligned with the grid and the restriction can be performed by a one dimensional operator.

Fig. 11. The defect after two relaxations of Example 5.2 shows a sharp gradient, and therefore the restriction process must be performed separately for the
interior equations from boundary conditions.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 479

Fig. 12. The error after two relaxations of Example 5.2 is continuous across the boundary, then we can use the standard bilinear interpolation operator even
for grid points close to the boundary.

Fig. 13. Upper, the nine points of N ðx; yÞ and the green boundary of the rectangle T . The bold red point is on the coarser and finer grids, while the little red
points are only on the finer grid. The arrows represent the action of the restriction operators. Below, the respective stencils to be used. (For interpretation of
the references to colour in this figure legend, the reader is referred to the web version of this article.)

For the sake of clarity, we describe the multigrid strategy in the two-dimensional case, but the procedure can be extended
straightforwardly to more dimensions.
Let us start by describing the restriction of the defect of the inner relaxations. We want to use a slight modification of the
full-weighting operator (we abbreviate it as FW operator, see [62, pp. 42–45] for the definition and for the stencil notation).
In practice, we use the full-weighting operator for inner points which are far enough from the boundary, and reduce the sten-
cil of the restriction for inner points close to the boundary, in such a way we weight only the defect of inner grid points. In
details, let ðx; yÞ 2 X2h . We focus our attention to the neighborhood of ðx; yÞ, that is N ðx; yÞ ¼ fðx þ jh; y þ ihÞ : j; i ¼ 1; 0; 1g.
Now consider the maximum full rectangle T with vertices belonging to N ðx; yÞ and such that T \ Dh # Xh (see Fig. 13). There-
fore, the stencil we use in ðx; yÞ to transfer the defect rh to the next coarse grid depends on the size of T . In fact, let T \ Dh be a
3  3 grid (i.e. N ðx; yÞ # Xh ). In this case we can use the standard full-weighting stencil:
2 3h
1 2 1
1 6 7
42 4 25 : ð33Þ
16
1 2 1 2h
Now let T \ Dh be a 3  2 grid. Without loss of generality, we can suppose that the vertices of T are ðx þ ih; y þ jhÞ, with
i 2 f1; 0g; i 2 f1; 0; 1g. In this case, the stencil we will use is:
2 3h
2 2 0
1 6 7
44 4 05 ; ð34Þ
16
2 2 0 2h
480 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 14. Red bold and small points are grid points of Xh , while red bold points are grid points of X2h . G1 is a ghost point on the coarser grid, but not on the
finer grid, then no value of the defect is stored in it. (For interpretation of the references to colour in this figure legend, the reader is referred to the web
version of this article.)

while, if T is a 2  2 grid, with vertex ðx þ jh; y þ ihÞ; j; i 2 f1; 0g, the stencil will be:
2 3h
0 0 0
1 6 7
44 4 05 : ð35Þ
16
4 4 0 2h

These three cases are summarized in Fig. 13.We proceed analogously in the case where T is a 2  1 or 1  1 grid.
Note that the stencils (33)–(35), can be derived as tensor products of the one-dimensional restriction operators.
In order to perform the restriction for the defect of the boundary conditions, we first extend the defect outside the domain
in a narrow band, and then perform the same restriction technique as for the defect of the inner relaxations, i.e. weighting
only grid points outside the domain (which therefore refer to the defect of the boundary conditions). Referring to Fig. 14, we
also observe that in the next coarser grid we need a boundary condition for the ghost point G1 . Since G1 R Ch , no value of the
defect is stored in G1 . Indeed, we expect that r2h is, in the ghost point G1 , the defect of the boundary condition referred to B1 ,
that is in the normal direction to the boundary. Hence, if we extend the defect rh outside Xh constant along the normal lines
to the boundary, we will find a suitable estimate of rh in G1 . After the restriction, the ghost points of the coarser grid will
contain the expected values of the defect.
The extension of the defect rh is performed by solving in a narrow band around the boundary the transport equation
@rh
^¼0
þ rrh n
@s
in a few steps of a fictitious time s, where n
^
ðnx ; ny Þ ¼ r/=jr/j is the unit normal vector to the level-set. In practice, it is
enough to use first order Upwind discretization for the gradient.
It remains to describe the interpolation operator. Since the interpolation operator acts on the error, which is contin-
uous across the boundary (see Fig. 12), we use the standard bilinear interpolation operator even for grid points close to
the boundary (after extending the error grid function in a narrow band surrounding the boundary, as described before
for the defect):
3 22h
1 2 1
17 6
I 2h
h ¼ 52 4 24 :
4
1 2 1 h

Remark 1 (Convergence factor). By these transfer operators and relaxation scheme we observe that the multigrid converges,
but often the convergence factor is far from the optimal one dictated by the Local Fourier Analysis applied to the inner
relaxations. To attain the optimal convergence factor we add some extra-relaxations on and close to the boundary. This
aspect is treated in details in Section 5.1.

Remark 2 (Coarser operator). We observe that the discrete operator on the coarsest grid is just the operator obtained dis-
cretizing directly the continuous operator in such grid, and not the operator obtained by the Galerkin condition

D2h ¼ I h2h Dh I2h


h :
The latter approach, typical of algebraic multigrid, makes the algebraic problem more expensive from a computational
point of view and does not take advantage of the fact that the discrete problem comes from a continuous problem.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 481

5. Numerical tests

In this section we provide some numerical tests showing second order accuracy in 2D and 3D. We test different smooth
geometries: circle, ellipse and flower-shaped domain. Then we switch to non-smooth geometries: domain with a saddle
point, cardioid-shaped domain, and general sharp-edged domains. For each geometry we test both the cases of mixed
and Robin boundary conditions. In all the tables we list the errors in the solution and its gradient in the L1 and L1 norms,
and the convergence factor of the multigrid.
The errors are computed as follows:
P !1=p P !1=p
P2Xh juP  uðPÞjp ruP  ruðPÞjp
P2Xh j
kekp ¼ ; krekp ¼ ; p ¼ 1; 1; ð36Þ
Ni Ni

where ruP ¼ ðuiþ1;j  ui1;j ; ui;jþ1  ui;j1 Þ=2h, with P


ðih; jhÞ.
Then we compute and plot the bestfit line of such errors and its slope, determining the accuracy order.
In all the tests we choose an analytical expressions of the exact solution u and diffusion coefficient c and reconstruct the
data of the problem (f, g D and g N for mixed boundary conditions, or f and g for Robin boundary conditions). We also choose an
analytical expression of the level-set function /0 and reinitialize it to the signed distance function /. Most of the geometries
of the tests are taken from [26,27,48].
Numerical tests (in 2D and 3D) are performed in the general case of variable coefficient problem with Robin boundary
conditions:

 r ðcruÞ ¼ f in X; ð37Þ
@u
au þ b ¼ g on C; ð38Þ
@n
where C ¼ @ X, while f : X ! R; c : X ! R; a : C ! R; b : C ! R and g : C ! R are assigned functions. In each test we per-
form either the mixed boundary conditions case (we always choose Dirichlet boundary condition for all points ðx; yÞ 2 C such
that x 6 0, Neumann boundary condition otherwise) or the Robin boundary condition case (the a and b coefficients are spec-
ified in each test).
In all the following tables, the values in the column of the accuracy order are computed as

log ðei1 =ei Þ


;
log ðNi =Ni1 Þ
where ei is the error indicated in the ith row.
The linear system is solved by the multigrid technique described in Section 4.
Note that the multigrid algorithm described before may be seen as an iterative scheme:

ðmþ1Þ ðmÞ
uh ¼ M h uh þ bh
for some matrix M h and vector bh . We call q the convergence factor, which is the spectral radius of the matrix M h . For rect-
angular domain with periodic boundary conditions and constant coefficients, the convergence factor is said to be local and it
is denoted by qloc . The convergence factors predicted by the Local Fourier Analysis (LFA) for Gauss–Seidel LEX relaxation and
FW restriction operator are listed in Table 1 (see [62, p. 117]), where m1 and m2 are respectively the number of pre- and post-
relaxations.
Now, we perform a numerical test in order to check if the convergence factor is close to the one predicted by LFA, which is
obtained for rectangular domains with periodic boundary conditions, i.e. without taking into account boundary effects.
In all the numerical tests we perform, the convergence factor is estimated as the ratio of consecutive defects, i.e.:

ðmÞ
rh
q ¼ qðmÞ ¼ 1
ðm1Þ
rh
1

for m large enough. In order to avoid difficulties related to numerical instability related to the machine precision, we will
always use the homogeneous model problem to compute the convergence factor, namely (37), (38) with f ¼ g ¼ 0, and per-
form the multigrid algorithm starting from an initial guess different from zero. We use the following stopping criterion:
 ðmÞ 
q  qðm1Þ 
< 103 :
qðmÞ
Note that, since we want to study the efficiency of the multigrid components proposed in this paper (smoother, restriction,
etc.), it is sufficient to study the V-cycle or W-cycle, while a more efficient algorithm (such as FMG) can be easily derived. In
particular, if not specified, we test the W-cycle using a coarsest grid with N ¼ 8.
482 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Table 1
Predicted convergence factor qloc by LFA for GS-LEX and FW restriction operator.

m ¼ m1 þ m2 1 2 3 4
qloc 0.400 0.193 0.119 0.084

Table 2
Measured convergence factor q with m1 ¼ m2 ¼ 1 on the left and with m1 ¼ 2; m2 ¼ 1 on the right.
N TGCS V-cycle W-cycle
64 0.67 0.68 0.71
128 0.68 0.73 0.68
256 0.70 0.71 0.70
64 0.58 0.72 0.58
128 0.58 0.73 0.59
256 0.61 0.83 0.60

Fig. 15. High frequency initial error after 1 (up-left), 3 (up-right), 5 (down-left), 10 (down-right) relaxation sweeps and k ¼ 0 extra-relaxations.

5.1. An initial test


pffiffiffi pffiffiffi
We start testing the multigrid algorithm on a circular domain X with center ð 2=30; 3=40Þ and radius r ¼ 0:786
(Fig. 17).
The measured convergence factors for Two-Grid Convergence Factor (TGCS), V-cycle and W-cycle are listed in Table 2.
As we can see, the measured convergence factor is far from the predicted one by LFA (Table 1). Then, some boundary ef-
fects degrade the convergence factor. We observed that in 1D the convergence factor is in accordance with the optimal one,
while in 2D we notice from Figs. 15 and 16 that the error has an oscillatory behavior along the tangential direction to the
boundary. Therefore we assume that the degradation is caused by the tangential error which is not smoothed enough. In fact,
in 1D such boundary effects do not degrade the convergence factor, because we have only two boundary points, and the tan-
gential error does not exist. Then, in 2D we must smooth the error also along the tangential direction to the boundary. To
overcome this difficulty, following Achi [5,6], we apply after a single relaxation and at each grid level, k extra relaxation
sweeps on all ghost points Ch and on all inside grid points of Xh within d > 0 distance from the boundary (taking
d ¼ OðhÞ the extra computational work is OðNÞ, then negligible as N ! 1). It can be proved numerically that a good choice
of these parameters will be:

k ¼ 5; d ¼ 3h:
The explanation of the optimal value k ¼ 5 is the following: the degradation observed in Table 2 is an indication that the
error decays much slower at the boundary. Assuming that the convergence factor in Table 2 is essentially the convergence
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 483

Fig. 16. High frequency initial error after 1 (up-left), 3 (up-right), 5 (down-left), 10 (down-right) relaxation sweeps and k ¼ 5 extra-relaxations.

Fig. 17. Example 5.2, circular domain.

Table 3
Example 5.2, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 2.98e5 – 1.61e4 – 1.15e4 – 7.07e4 – 0.14
64 8.56e6 1.80 4.65e5 1.79 3.30e5 1.81 2.21e4 1.67 0.10
128 1.94e6 2.14 1.11e5 2.07 8.42e6 1.97 5.49e5 2.01 0.096
256 5.76e7 1.76 3.17e6 1.80 2.25e6 1.90 2.46e5 1.16 0.084

factor at the boundary, qB , we want to match it with the convergence factor at the bulk, qI , therefore kopt is the smallest value
of k for which qkþ1
B 6 qI . The value qI , in turn, can be computed as the convergence factor for large value of k.
Investigating the smoothing property, we observe that choosing the initial error as an high frequency component, the er-
ror is not smoothed after a few relaxation sweeps. While, if we add the extra-relaxations, the error become sufficiently
smooth (Figs. 15 and 16).

5.2. Circular domain

pffiffiffiproblem (37) and (38) with c ¼ 1 and with an exact solution u ¼ sinðxÞ sinðyÞ, over a
Let us consider the two-dimensional
pffiffiffi
circular domain centered at ð 2=30; 3=40Þ and radius r ¼ 0:786 (Fig. 17). We test the cases of mixed (Table 3 and Fig. 18)
and Robin (Table 4 and Fig. 19) boundary conditions with a ¼ b ¼ 1.
484 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 18. Example 5.2, mixed boundary conditions.

Table 4
Example 5.2, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 3.04e5 – 1.02e4 – 9.78e5 – 4.54e4 – 0.12
64 7.40e6 2.04 2.65e5 1.95 2.81e5 1.80 1.36e4 1.74 0.10
128 1.78e6 2.06 6.73e6 1.98 7.77e6 1.85 4.44e5 1.62 0.089
256 4.66e7 1.93 1.76e6 1.93 1.97e6 1.98 1.12e5 1.99 0.093

5.2.1. Comparison with the Kaczmarz and the block relaxations


Note that the relaxation scheme (21)–(23) is composed by a Gauss–Seidel iteration over inner grid points and a suitable
relaxation over ghost points (boundary conditions). As an alternative to the relaxation of the boundary condition, we can use
the Kaczmarz relaxation [35] near the boundary, which is known to be unconditionally convergent. Let us recall the
Kaczmarz iteration scheme for a subset of equations J # 1; . . . ; N i þ N g of a linear system Lu ¼ f :

uTEMP ¼ uðmÞ ;
fj  < lj ; uTEMP > T
for j 2 J do : uTEMP :¼ uTEMP þ 2 lj ;
lj
2
uðmþ1Þ ¼ uTEMP :


The symbol < ; > denotes the inner product operator and lj is the jth row of the matrix L. If we choose J ¼ 1; . . . ; N i þ N g
then we obtain the classical Kaczmarz relaxation scheme for the solution of the linear system Lu ¼ f , and the iteration
scheme is equivalent to a Gauss–Seidel relaxation for the system LT Lu ¼ LT f . In our case, one iteration of the alternative relax-
ation we want to study is composed as follows: we perform a Gauss–Seidel sweep in the interior of the domain, followed by k
Kaczmarz iterations over ghost points and inner points close to the boundary (say within d distance from the boundary).
Another alternative is represented by the block relaxation [21]. As we pointed out, the elimination of the boundary con-
ditions is hard to perform. A middle ground between the elimination of the boundary conditions and the relaxation operator
we use in this paper is the block relaxation. Let us describe it in details. For each grid point P 2 Xh [ Ch we choose a stencil
St P # Xh [ Ch . For instance, if P 2 Xh we choose St P ¼ St P9 \ ðXh [ Ch Þ, where St P9 is the 3  3 stencil centered at P, else if
P 2 Ch we choose the stencil St P defined in Section 2.3.1. One iteration of the alternative relaxation is composed as follows.
We perform a Gauss–Seidel sweep in the interior of the domain except in grid points within d distance from the boundary.
For each grid point P 2 Xh [ Ch within d distance from the boundary we rewrite the linear system Lu ¼ f as follows (by a
permutation of rows):




A1;1 A1;2 u1 f1
Lu ¼ f () ¼ ;
A2;1 A2;2 u2 f2
where u1 is referred to those grid points belonging to St P . Therefore, we update the values of u1 as:

u1 ¼ A1
1;1 ðf1  A1;2 u2 Þ:
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 485

Fig. 19. Example 5.2, Robin boundary conditions.

Fig. 20. Smoothing factor l against the number of iterations for the three iterative schemes: Kaczmarz relaxation, block relaxation, new iteration.

Fig. 21. Convergence factor q of the entire multigrid against the number of extra-relaxations k for the three iterative schemes: Kaczmarz relaxation, block
relaxation, new iteration.

We perform a comparison between the relaxation proposed in this paper (that we call new iteration in the plots) and the two
alternative relaxation described above. Such a comparison is carried out in terms of smoothing factor and convergence fac-
tor. We perform the comparison using the Two-Grid Correction Scheme (TGCS) for the test case of the circular domain 5.2
with N ¼ 64.
486 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

In Fig. 20 we plot the smoothing factor l for the three iteration schemes, which is estimated by the ratio of subsequent
defects after each iteration, i.e.

ðmÞ
rh
ðmÞ
l ¼ 1
ðm1Þ :
rh
1

In practice, we perform only the iteration schemes, without taking into account the effects of the multigrid procedure. In
order to better capture the behavior of the smoothing factor, we choose an initial guess being highly oscillant, for example
u ¼ sinð40pxÞ sinð50pyÞ.
In Fig. 21 we depict the convergence factor q for the Kaczmarz and the new iteration against the number of extra-relax-
ations k (for comparison, we also plot the convergence factor of the block relaxation as an horizontal line, since it does not
depend on k). After five extra-relaxations, the new iteration reaches a plate configuration, since it achieves the convergence
factor of the Gauss–Seidel smoother for inner equations, i.e. the convergence factor predicted by the LFA (see Table 1). The
Kaczmarz iteration falls down slower, while the block iteration already provides the optimal convergence factor. The com-
putational cost of five point-iterations of the new method is considerably lower than the cost of one block-iteration.

5.3. Ellipsoidal domain

Let us consider the two-dimensional problem (37) and (38) with c ¼ 1 þ eðxþyÞ and with an exact solution
u ¼ sinðxÞ sinð2yÞ, over an ellipsoidal domain (Fig. 22) whose level-set is:
pffiffiffi pffiffiffi
ðXðx; yÞ  2=20Þ2 ðYðx; yÞ  3=30Þ2
/ðx; yÞ ¼ þ  1;
0:5632 0:2632
where
Xðx; yÞ ¼ cosðp=6Þ x  sinðp=6Þ y; Yðx; yÞ ¼ sinðp=6Þ x þ cosðp=6Þ y:
We test the cases of mixed (Table 5 and Fig. 23) and Robin (Table 6 and Fig. 24) boundary conditions with
a ¼ 0:5 þ 0:25 sinð2pxÞ sinðpyÞ and b ¼ 0:5 þ 0:25 cosðpxÞ cosð2pyÞ.

5.4. Flower-shaped domain

Let us consider the two-dimensional problem (37), (38) with c ¼ 2 þ cosð2xÞ cosð3yÞ and with an exact solution u ¼ exy ,
over a flower-shaped domain (Fig. 25) whose level-set is:

Fig. 22. Example 5.3, ellipsoidal domain.

Table 5
Example 5.3, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.76e4 – 6.94e4 – 1.21e3 – 2.72e3 – 0.14
64 2.59e5 2.77 8.84e5 2.97 3.16e4 1.93 8.90e4 1.61 0.27
128 1.31e5 0.98 3.75e5 1.24 9.42e5 1.74 3.30e4 1.43 0.15
256 3.21e6 2.03 8.96e6 2.07 2.34e5 2.01 1.13e4 1.55 0.29
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 487

Fig. 23. Example 5.3, mixed boundary conditions.

Table 6
Example 5.3, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 2.41e4 – 4.40e4 – 1.04e3 – 2.83e3 – 0.15
64 7.90e5 1.61 1.58e4 1.48 3.24e4 1.68 9.51e4 1.57 0.15
128 1.18e5 2.74 2.17e5 2.86 8.64e5 1.90 2.61e4 1.87 0.16
256 6.41e6 0.89 1.01e5 1.10 2.14e5 2.02 6.83e5 1.93 0.20

Fig. 24. Example 5.3, Robin boundary conditions.

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi pffiffiffi pffiffiffi


Y 5 þ 5X 4 Y  10X 2 Y 3
/ ¼ r  0:52  ; r¼ X2 þ Y 2; X ¼ x  0:03 3; Y ¼ y  0:04 2:
5r 5
We test the cases of mixed (Table 7 and Fig. 26) and Robin (Table 8 and Fig. 27) boundary conditions with a ¼ b ¼ 1.
With this geometry, the multigrid does not converge if we choose the coarsest grid with N ¼ 8, since the coarsest grid
should not be too coarse in order to resolve the curvature of the boundary. This is a problem with geometric multigrid meth-
ods, that is the method is limited by the coarsest level one can use. A possible solution with complicated geometries can be
using the multigrid as a preconditioner for a Krylov subspace method (see [29]), which is under investigation. For the mo-
ment, in this test we use a coarsest grid with N ¼ 16.

5.5. Flower shaped domain with Dirichlet boundary condition: comparison with the method [26]

In this Example we compare the numerical results between our method and the method proposed in [26]. We recall the
method proposed in [26] applies to Dirichlet boundary condition, then we have to reduce our technique to the case of pure
Dirichlet condition to make comparison. We see that our method, even though is second order accurate, gives a greater error
than in [26]. A possible explanation is that the method proposed in [26] may define more than one value in each ghost point,
unlike our method, which defines just one value for each ghost point. In details, referring to the Fig. 28, the method [26]
488 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 25. Example 5.4, flower-shaped domain.

Table 7
Example 5.4, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


64 6.63e4 – 3.38e3 – 2.69e3 – 6.05e2 – 0.15
128 9.11e4 0.46 2.36e3 0.52 1.17e3 1.20 2.97e2 1.03 0.28
256 6.79e5 3.74 1.98e4 3.58 2.15e4 2.45 9.67e3 1.62 0.20
512 1.97e5 1.79 5.94e5 1.74 5.76e5 1.90 2.31e3 2.06 0.27

Fig. 26. Example 5.4, mixed boundary conditions.

consists in discretizing the Laplace operator (5) in the inside grid points P 1 and P 2 , and using the linear interpolation to define
the numerical value in the ghost points belonging to the five-point stencil. For instance, the ghost point G belongs either to
the stencil centered in P1 or in P 2 . Then we have two value in G:
ð1Þ
#1 uG þ ð1  #1 ÞuP1 ¼ gðB1 Þ;

ð2Þ
#2 uG þ ð1  #2 ÞuP2 ¼ gðB2 Þ:
ð1Þ ð2Þ
Both equations are solved respectively for uG and uG , and these values are plugged in (5), written respectively for P 1 and P2 .
Let us consider the two-dimensional problem (37), (38) with c ¼ 1 and with an exact solution u ¼ x2 þ y2 , over a flower-
shaped domain whose level-set is:

y5 þ 5x4 y  10x2 y3 pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi


/ ¼ r  0:5  ; r¼ x2 þ y 2 :
5r 5
We have Dirichlet boundary condition on all the boundary. Table 9 shows the numerical results and compares them with the
results taken from [26].
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 489

Table 8
Example 5.4, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


64 3.95e4 – 2.24e3 – 2.46e3 – 4.50e2 – 0.11
128 2.15e4 0.88 1.14e3 0.98 8.00e4 1.62 2.21e2 1.03 0.093
256 3.65e5 2.56 1.75e4 2.70 1.85e4 2.11 9.51e3 1.22 0.087
512 1.04e5 1.81 5.11e5 1.77 4.92e5 1.91 2.25e3 2.08 0.096

Fig. 27. Example 5.4, Robin boundary conditions.

Fig. 28. Comparison between our method and the method proposed in [26].

Table 9
This table refers to the Example 5.5 (top) and the numerical results from [26] (bottom).

N kek1 Order kek1 Order

100 1:8536  10 4 – 5:8390  10 4 –


200 5:4324  105 1.77 1:0523  104 2.47
400 1:3104  105 2.05 2:5508  105 2.04

100 7:329  105 – 9:777  105 –


200 1:776  105 2.04 2:427  105 2.01
400 4:714  106 1.92 6:178  106 1.97

5.6. Domain with a saddle point

Let us consider the two-dimensional problem (37) and (38) with c ¼ 2 þ cosð2xÞ cosð3yÞ and with an exact solution
u ¼ exy , over a domain with a saddle point (Fig. 29) whose level-set is:
490 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 29. Example 5.6, domain with a saddle point.

Table 10
Example 5.6, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 3.42e3 – 3.14e2 – 1.50e2 – 9.72e2 – 0.57
64 5.86e4 2.54 5.65e3 2.48 2.14e3 2.81 3.11e2 1.65 0.28
128 1.98e4 1.57 1.90e3 1.57 6.81e4 1.65 8.76e3 1.83 0.34
256 5.18e5 1.93 4.65e4 2.03 1.73e4 1.98 2.71e3 1.69 0.52

Fig. 30. Example 5.6, mixed boundary conditions.

pffiffiffi pffiffiffi
/ðx; yÞ ¼ 256Y 4  16X 4  128Y 2 þ 36X 2 ; X ¼ x  0:03 3; Y ¼ y  0:04 2:
We test the cases of mixed (Table 10 and Fig. 30) and Robin (Table 11 and Fig. 31) boundary conditions with
a ¼ 0:5 þ 0:2 sinð2pxÞ sinðpyÞ and b ¼ 0:5 þ 0:25 cosð3pxÞ cosð2pyÞ. Also in this test we choose the coarsest grid with
N ¼ 16 instead of N ¼ 8 and the same argument of the test 5.4 applies.

5.7. Cardioid-shaped domain

Let us consider the two-dimensional problem (37) and (38) with c ¼ 2 þ cosð2xÞ cosð3yÞ and with an exact solution
u ¼ exy , over a cardioid-shaped domain (Fig. 32) whose level-set is:
   2 pffiffiffi pffiffiffi
/ðx; yÞ ¼ 3 X 2 þ Y 2  X  X 2  Y 2 ; X ¼ x  0:04 3; Y ¼ y  0:05 2:

We test the cases of mixed (Table 12 and Fig. 33) and Robin (Table 13 and Fig. 34) boundary conditions with a ¼ b ¼ 1.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 491

Table 11
Example 5.6, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 2.39e3 – 1.74e2 – 1.06e2 – 2.01e1 – 0.19
64 3.44e4 2.80 3.15e3 2.47 1.41e3 2.91 3.18e2 2.66 0.32
128 1.02e4 1.76 1.13e3 1.48 4.35e4 1.70 8.01e3 1.99 0.33
256 2.71e5 1.91 2.76e4 2.03 1.14e4 1.93 2.52e3 1.67 0.22

Fig. 31. Example 5.6, Robin boundary conditions.

Fig. 32. Example 5.7, cardioid-shaped domain.

Table 12
Example 5.7, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.49e3 – 4.21e3 – 5.18e3 – 6.32e2 – 0.42
64 5.05e4 1.56 1.77e3 1.25 1.83e3 1.50 3.08e2 1.04 0.12
128 4.52e5 3.48 3.06e4 2.54 3.09e4 2.57 2.87e2 0.10 0.097
256 7.28e6 2.63 2.57e5 3.57 5.24e5 2.56 2.80e3 3.36 0.20
512 4.13e6 0.82 2.30e5 0.16 2.01e5 1.38 1.01e3 1.46 0.13

5.8. Anisotropic case

This example is taken from [32] but it is applied to a simpler geometry. Let us consider the two-dimensional problem of
Section 2.4.3 with


2 þ xy 1 þ xy

1 þ xy 3 þ xy
492 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 33. Example 5.7, mixed boundary conditions.

Table 13
Example 5.7, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.49e3 – 4.68e3 – 5.01e3 – 3.65e2 – 0.066
64 8.52e4 0.81 2.08e3 1.17 1.67e3 1.59 1.66e2 1.13 0.13
128 1.19e4 2.84 3.98e4 2.39 3.00e4 2.47 2.39e2 0.52 0.10
256 4.91e5 1.28 1.34e4 1.57 9.74e5 1.62 2.94e3 3.03 0.094
512 7.41e6 2.73 2.38e5 2.50 1.76e5 2.47 8.79e4 1.74 0.090

Fig. 34. Example 5.7, Robin boundary conditions.

Fig. 35. Example 5.8, representation of the direction of the co-normal vectors with respect to the boundary.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 493

Table 14
Example 5.8, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


64 2.38e3 – 2.80e2 – 1.59e2 – 2.86e1 – 0.13
128 4.81e4 2.30 4.97e3 2.49 3.20e3 2.31 5.48e2 2.38 0.17
256 1.22e4 1.98 1.22e3 2.03 7.91e4 2.02 1.34e2 2.03 0.14
512 3.12e5 1.96 3.04e4 2.01 2.04e4 1.96 3.46e3 1.95 0.14

Fig. 36. Example 5.8, mixed boundary conditions.

Table 15
Example 5.8, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


64 4.35e3 – 3.85e2 – 2.28e2 – 3.25e1 – 0.14
128 1.03e3 2.07 6.66e3 2.53 4.57e3 2.32 3.18e2 3.35 0.15
256 2.08e4 2.32 1.44e3 2.21 8.74e4 2.39 9.98e3 1.67 0.13
512 5.59e5 1.89 3.81e4 1.92 2.32e4 1.91 5.10e3 0.97 0.13

Fig. 37. Example 5.8, Robin boundary conditions.

with an exact solution u ¼ sinðpxÞ cosðpyÞ, over the flower-shaped domain of Ex. 5.4. We test the cases of mixed (Table 14
and Fig. 36) and Robin (Table 15 and Fig. 37) boundary conditions with a ¼ b ¼ 1. In Fig. 35 we can observe the direction of
the co-normal direction with respect to the boundary. In this test we choose the coarsest grid with N ¼ 16 instead of N ¼ 8
and the same argument of the test 5.4 applies.
494 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 38. Example 5.9, domain as intersection between two domain.

Table 16
Example 5.9, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 9.73e6 – 8.70e5 – 4.59e4 – 1.22e3 – 0.076
64 3.15e6 1.63 2.60e5 1.74 1.25e4 1.87 4.56e4 1.42 0.096
128 8.93e7 1.82 6.86e6 1.92 3.28e5 1.93 1.29e4 1.82 0.11
256 2.01e7 2.15 1.44e6 2.25 7.82e6 2.07 3.28e5 1.98 0.10

Fig. 39. Example 5.9, mixed boundary conditions.

Table 17
Example 5.9, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.45e5 – 1.35e4 – 4.37e4 – 1.31e3 – 0.084
64 4.33e6 1.74 4.05e5 1.74 1.19e4 1.87 5.65e4 1.21 0.10
128 1.17e6 1.89 1.14e5 1.83 3.11e5 1.94 2.32e4 1.29 0.096
256 2.63e7 2.15 2.46e6 2.21 7.43e6 2.07 5.11e5 2.18 0.089

5.9. Domain as intersection between two domains

Let us consider the two-dimensional problem (37), (38) with c ¼ 1 and with an exact solution u ¼ sinðxÞ sinðyÞ, over a
domain X ¼ X1 \ X2 , where X1 is a circle centered at (0.25, 0) and radius 0.75, and X2 is a circle centered at (0.25, 0)
and the same radius 0.75 (Fig. 38). We test the cases of mixed (Table 16 and Fig. 39) and Robin (Table 17 and Fig. 40) bound-
ary conditions with a ¼ b ¼ 1.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 495

Fig. 40. Example 5.9, Robin boundary conditions.

Fig. 41. Example 5.10, domain as intersection between two domains.

Table 18
Example 5.10, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.91e5 – 2.16e4 – 4.54e4 – 1.41e3 – 0.082
64 5.46e6 1.81 5.82e5 1.89 1.09e4 2.05 5.19e4 1.44 0.090
128 1.38e6 1.98 1.42e5 2.04 2.58e5 2.08 1.95e4 1.41 0.11
256 4.06e7 1.77 3.79e6 1.91 6.50e6 1.99 7.23e5 1.43 0.11

Fig. 42. Example 5.10, mixed boundary conditions.


496 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Table 19
Example 5.10, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 5.54e5 – 2.35e4 – 5.12e4 – 1.00e3 – 0.074
64 1.64e5 1.76 6.19e5 1.92 1.23e4 2.06 2.63e4 1.93 0.10
128 4.03e6 2.02 1.43e5 2.11 2.87e5 2.10 8.06e5 1.71 0.11
256 1.15e6 1.81 3.99e6 1.85 7.18e6 2.00 1.91e5 2.08 0.10

Fig. 43. Example 5.10, Robin boundary conditions.

Fig. 44. Example 5.11, domain as union between two domains.

Table 20
Example 5.11, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.28e5 – 2.33e4 – 4.58e4 – 1.63e3 – 0.098
64 3.07e6 2.05 5.81e5 2.01 1.23e4 1.90 5.17e4 1.66 0.10
128 8.35e7 1.88 1.65e5 1.81 3.24e5 1.92 1.54e4 1.75 0.089
256 1.88e7 2.15 3.74e6 2.14 7.80e6 2.06 3.90e5 1.98 0.092

5.10. Domain as intersection between two domains: rotated case

Let us consider the same problem as in Example 5.9, but in a geometry which is rotated of p=6 anticlockwise (Fig. 41). We
test the cases of mixed (Table 18 and Fig. 42) and Robin (Table 19 and Fig. 43) boundary conditions with a ¼ b ¼ 1. We can
observe, by comparison with Example 5.9, that the numerical results are almost the same, indicating very small grid anisot-
ropy effect.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 497

Fig. 45. Example 5.11, mixed boundary conditions.

Table 21
Example 5.11, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


32 1.72e5 – 1.68e4 – 5.46e4 – 1.44e3 – 0.26
64 4.42e6 1.96 4.50e5 1.90 1.51e4 1.86 4.54e4 1.66 0.11
128 1.19e6 1.89 1.30e5 1.79 4.01e5 1.91 1.35e4 1.75 0.091
256 2.75e7 2.11 3.03e6 2.10 9.62e6 2.06 4.26e5 1.66 0.094

Fig. 46. Example 5.11, Robin boundary conditions.

Table 22
Example 5.12, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


16 2.32e5 – 1.85e4 – 5.18e4 – 1.70e3 – 0.20
32 6.01e6 1.95 5.33e5 1.79 1.36e4 1.93 4.47e4 1.93 0.10
64 1.65e6 1.87 1.36e5 1.97 3.54e5 1.94 1.23e4 1.86 0.11
128 4.22e7 1.97 3.68e6 1.89 9.41e6 1.91 3.10e5 1.99 0.10

5.11. Domain as union between two domains

Let us consider the two-dimensional problem (37) and (38) with c ¼ 1 and with an exact solution u ¼ sinðxÞ sinðyÞ, over a
domain X ¼ X1 [ X2 , where X1 is a circle centered at (0.25,0) and radius 0.55, and X2 is a circle centered at (0.25, 0) and the
same radius 0.55 (Fig. 44). We test the cases of mixed (Table 20 and Fig. 45) and Robin (Table 21 and Fig. 46) boundary con-
ditions with a ¼ b ¼ 1.
498 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

Fig. 47. Example 5.12, mixed boundary conditions.

Table 23
Example 5.12, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


16 2.03e5 – 1.32e4 – 5.79e4 – 1.53e3 – 0.18
32 5.60e6 1.86 3.77e5 1.80 1.52e4 1.93 4.04e4 1.92 0.098
64 1.68e6 1.73 9.91e6 1.93 3.92e5 1.95 1.13e4 1.84 0.093
128 4.25e7 1.99 2.57e6 1.95 9.89e6 1.99 2.92e5 1.95 0.11

Fig. 48. Example 5.12, Robin boundary conditions.

Table 24
Example 5.13, mixed boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


16 1.23e5 – 1.07e4 – 2.61e4 – 9.69e4 – 0.15
32 1.75e6 2.81 1.98e5 2.43 7.20e5 1.86 2.84e4 1.77 0.18
64 4.79e7 1.87 5.36e6 1.89 1.90e5 1.92 8.14e5 1.80 0.14
128 1.56e7 1.62 1.34e6 2.00 4.83e6 1.97 2.13e5 1.94 0.16
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 499

Fig. 49. Example 5.13, mixed boundary conditions.

Table 25
Example 5.13, Robin boundary conditions.

N kek1 Order kek1 Order krek1 Order krek1 Order q


16 7.41e6 – 5.58e5 – 2.94e4 – 8.88e4 – 0.096
32 1.87e6 1.99 1.55e5 1.85 8.39e5 1.81 2.65e4 1.75 0.10
64 5.68e7 1.72 4.30e6 1.85 2.19e5 1.94 7.65e5 1.79 0.12
128 1.49e7 1.93 1.15e6 1.90 5.54e6 1.98 1.95e5 1.97 0.11

Fig. 50. Example 5.13, Robin boundary conditions.

5.12. 3D numerical tests: sphere

Let us consider the three-dimensional


pffiffiffi pffiffiffi (37), (38) with c = 1 and with an exact solution u ¼ sinðxÞ sinðyÞ sinðzÞ,
pffiffiffi problem
over a sphere centered at ð 2=30; 3=40;  2=50Þ and radius r ¼ 0:786. We test the cases of mixed (Table 22 and
Fig. 47) and Robin (Table 23 and Fig. 48) boundary conditions with a ¼ b ¼ 1.

5.13. 3D numerical tests: ellipsoid

Let us consider the three-dimensional problem (37) and (38) with c = 1 and with an exact solution u ¼ sinðxÞ sinðyÞ sinðzÞ,
over an ellipsoid whose level-set is:
pffiffiffi !2 pffiffiffi !2 pffiffiffi !2
x  2=30 y  3=40 x þ 2=50
/ðx; y; zÞ ¼ þ þ  1:
0:786 0:386 0:586

We test the cases of mixed (Table 24 and Fig. 49) and Robin (Table 25 and Fig. 50) boundary conditions with a = b = 1.
500 A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501

6. Conclusion and work in progress

A multigrid technique for Poisson equation on an arbitrary domain and mixed boundary conditions is presented. This
multigrid strategy can be applied to a general framework of ghost-point method in a regular Cartesian grid, in case of
non-eliminated boundary conditions. A novel relaxation procedure is adopted for ghost points, providing an effective
smoother for the multigrid. Suitable transfer operators for inside equations and boundary conditions are provided. The con-
vergence rate is improved by adding some extra-relaxations on the ghost points and in a narrow band of inside grid points
close to the boundary. Numerical tests on different geometries have been performed. On simpler domains (such as circle or
ellipse) the optimal convergence factor is reached even if the method is used on very coarse grids, while for more complex
domains (such as the flower-shaped one) the optimal convergence factor is obtained only on sufficiently fine grids, and
sometimes it is slightly different from the optimal one.
A comparison with other treatments of the boundary condition smoothing procedure has been carried out (Kaczmarz and
block relaxation), confirming that the smoother proposed in this paper is better in terms of convergence factor, and not
worse in terms of smoothing factor.
The application of this method to solve the pressure equation coming from the projection method of Chorin [15,16] in the
framework of the incompressible Navier–Stokes equation is in preparation. Several extensions of the discretization tech-
nique and multigrid approach are presently under investigation. We mention the case of discontinuous coefficients, which
models, for example, a system composed by different materials separated by an interface; in such a case the method is suit-
ably modified in order to achieve second order accuracy and a convergence factor being independent on the jump in the coef-
ficient. A preliminary result can be found in [18].

References

[1] P. Angot, C.-H. Bruneau, P. Fabrie, A penalization method to take into account obstacles in incompressible viscous flows, Numer. Math. 81 (1999).
[2] T.D. Aslam, A partial differential equation approach to multidimensional extrapolation, Journal of Computational Physics 193 (2003) 349–355.
[3] F. Battaglia, A.K. Kulkarni, J. Feng, C.L. Merkle, Simulations of planar flapping jets in confined channels, AIAA Journal 36 (1998) 1425–1431.
[4] J. Bedrossian, J.H. von Brecht, S. Zhu, E. Sifakis, J.M. Teran, A second order virtual node method for poisson interface problems on irregular domains,
Journal of Computational Physics 229 (2010) 6405–6426.
[5] A. Brandt, Rigorous quantitative analysis of multigrid, I: constant coefficients two-level cycle with L2-Norm, SIAM Journal on Numerical Analysis 31
(1994) 1695–1730.
[6] A. Brandt. Guide to multigrid developments, in: W. Hackbusch, U. Trottenberg (Eds.), Multigrid Methods, Lectures Notes in Mathematics, vol. 960,
Berlin, Springer, 1982, pp. 220–312.
[7] J.H. Bramble, B.E. Hubbard, Approximation of solutions of mixed boundary value problems for Poisson’s equation by finite differences, J. Assoc. Comput.
Mach. 12 (1965) 114–123.
[8] W.L. Briggs, V.E. Henson, S.F. McCormick, A Multigrid Tutorial, SIAM, 2000.
[9] R.E. Caflisch, M.F. Gyure, B. Merriman, S.J. Osher, C. Ratsch, D.D. Vvedensky, J.J. Zinck, Island dynamics and the level set method for epitaxial growth,
Applied Mathematics Letters 4 (1999) 13–22.
[10] D. Calhoun, A Cartesian grid method for solving the two-dimensional streamfunction-vorticity equations in irregular regions, Journal of Computational
Physics 176 (2002) 231–275.
[11] L.A. Catalano, A. Dadone, V.S.E. Daloiso, D. Scardigno, A multigrid procedure for Cartesian ghost-cell methods, International Journal for Numerical
Methods in Fluids 58 (2008) 743–750.
[12] T.F. Chan, W. Wan, Robust multigrid methods for nonsmooth coefficient elliptic linear systems, Journal of Computational and Applied Mathematics
123 (2000) 323–352.
[13] F. Chantalat, C.-H. Bruneau, C. Galusinski, A. Iollo, Level-set, penalization and cartesian meshes: a paradigm for inverse problems and optimal design,
Journal of Computational Physics 228 (2009) 6291–6315.
[14] H. Chen, C. Min, F. Gibou, A supra-convergent finite difference scheme for the Poisson and heat equations on irregular domains and non-graded
adaptive Cartesian grids, Journal of Scientific Computing 31 (2007) 19–60.
[15] A. Chorin, Numerical solution of the Navier–Stokes equations, Mathematics of Computation 22 (1968) 745–762.
[16] A. Chorin, A numerical method for solving incompressible viscous flow problems, Journal of Computational Physics 135 (1997) 115–125.
[17] M. Cisternino, L. Weynans, A parallel second order Cartesian method for elliptic interface problems, Commun. Comput. Phys. 12 (2012) 1562–1587.
[18] A. Coco, G. Russo, Second order multigrid methods for elliptic problems with discontinuous coefficients on an arbitrary interface, I: One dimensional
problems, Numerical Mathematics: Theory, Methods and Applications 5 (2012) 19–42.
[19] R. Crockett, P. Colella, D. Graves, A Cartesian grid embedded boundary method for solving the Poisson and heat equations with discontinuous
coefficients in three dimensions, Journal of Computational Physics 230 (2011) 2451–2469.
[20] L.D. Dailey, R.H. Pletcher, Evaluation of multigrid acceleration for preconditioned time-accurate Navier–Stokes algorithms, Computer and Fluids 25
(1996) 791–811.
[21] J. Dendy, Black box multigrid, Journal of Computational Physics 48 (1982) 366–386.
[22] J. Donea, An arbitrary Lagrangian–Eulerian finite element method for transient fluid-structure interactions, Computer Methods in Applied Mechanics
and Engineering 33 (1982) 689–723.
[23] A. du Chéné, C. Min, F. Gibou, Second-order accurate computation of curvatures in a level set framework using novel high order reinitialization
schemes, Journal of Scientific Computing Archive 35 (2008) 114–131.
[24] R. Fedkiw, T. Aslam, B. Merriman, S. Osher, A non-oscillatory Eulerian approach to interfaces in multimaterial flows (the ghost fluid method), Journal of
Computational Physics 152 (1999) 457–492.
[25] L. Formaggia, F. Nobile, Stability analysis of second-order time accurate schemes for ALE–FEM, Computer Methods in Applied Mechanics and
Engineering 193 (2004) 4097–4116.
[26] F. Gibou, R. Fedkiw, A second-order-accurate symmetric discratization of the poisson equation on irregular domains, Journal of Computational Physics
176 (2002) 205–227.
[27] F. Gibou, R. Fedkiw, A fourth order accurate discretization for the Laplace and heat equations on arbitary domains, with applications to the Stefan
problem, Journal of Computational Physics 202 (2005) 577–601.
[28] R. Glowinski, T.W. Pan, T.I. Hesla, D.D. Joseph, A distributed Lagrange multiplier/fictitious domain method for particulate flows, International Journal of
Multiphase Flow 25 (1999) 755–794.
A. Coco, G. Russo / Journal of Computational Physics 241 (2013) 464–501 501

[29] R.D. Guy, B. Philip, A multigrid method for a model of the implicit immersed boundary equations, Communications in Computational Physics 12 (2012)
378–400.
[30] W. Hackbusch, Multi-grid Methods and Applications, Springer, 1985.
[31] W. Hackbusch, Elliptic Differential Equations: Theory and Numerical Treatment, Springer, 2003.
[32] S. Hou, W. Wang, L. Wang, Numerical method for solving matrix coefficient elliptic equation with sharp-edged interfaces, Journal of Computational
Physics 229 (2010) 7162–7179.
[33] A. Jameson, Time dependent calculations using multigrid, with applications to unsteady flows past airfoils and wings, AIAA Conference Paper, 1991, pp.
91–1596.
[34] J.L. Hellrung Jr., L. Wangb, E. Sifakis, J.M. Teran, A second-order virtual node method for elliptic problems with interfaces and irregular domains in three
dimensions, Journal of Computational Physics 231 (2012) 2015–2048.
[35] S. Kaczmarz, Angenherte Auflsung von Systemen linearer Gleichungen, Bulletin International de l’Acadmie Polonaise des Sciences et des Lettres, Classe
des Sciences Mathmatiques et Naturelles, Srie A, Sciences Mathmatiques 35 (1937) 355–357.
[36] R. LeVeque, Z. Li, The immersed interface method for elliptic equations with discontinuous coefficients and singular sources, SIAM Journal on
Numerical Analysis 31 (1994) 1019–1044.
[37] C. Liu, X. Zheng, C.H. Sung, Preconditioned multigrid methods for unsteady incompressible flows, Journal of Computational Physics 139 (1998) 35–57.
[38] R. Löhner, J.R. Cebral, F.E. Camelli, S. Appanaboyina, J.D. Baum, E.L. Mestreau, O.A. Soto, Adaptive embedded and immersed unstructured grid
techniques, Computer Methods in Applied Mechanics and Engineering 197 (2008) 217–2197.
[39] Z.H. Ma, L. Qian, D.M. Causon, H.B. Gu, C.G. Mingham, A Cartesian ghost-cell multigrid Poisson solver for incompressible flows, International Journal for
Numerical Methods in Engineering 85 (2011) 230–246.
[40] A. Mayo, The fast solution of Poisson’s and the biharmonic equations on irregular regions, SIAM Journal on Numerical Analysis 21 (1984) 285–299.
[41] P. McCorquodale, P. Colella, D. Grote, J.-L. Vay, A node-centered local refinement algorithm for poisson’s equation in complex geometries, Journal of
Computational Physics 201 (2004) 34–60.
[42] C.L. Merkle, M. Athavale, A time accurate unsteady incompressible algorithm based on artificial compressibility, AIAA Conference Paper, 1987, pp. 87–
1137.
[43] Y.T. Ng, H. Chen, C. Min, F. Gibou, Guidelines for Poisson solvers on irregular domains with Dirichlet boundary conditions using the ghost fluid method,
Journal of Computer Science 41 (2009) 300–320.
[44] Y.T. Ng, C. Min, F. Gibou, An efficient fluid-solid coupling algorithm for single-phase flows, Journal of Computational Physics 228 (2009) 8807–8829.
[45] R.H. Nochetto, M. Paolini, C. Verdi, An adaptive finite element method for two-phase Stefan problem in two space dimensions. Part II: Implementation
and numerical experiments, SIAM Journal on Scientific and Statistical Computing 12 (1991) 1207–1244.
[46] M. Oevermann, C. Scharfenberg, R. Klein, A sharp interface finite volume method for elliptic equations on Cartesian grids, Journal of Computational
Physics 228 (2009) 5184–5206.
[47] S. Osher, R. Fedkiw, Level Set Methods and Dynamic Implicit Surfaces, Applied Mathematical Sciences, Springer-Verlag, New York, 2002.
[48] J. Papac, F. Gibou, C. Ratsch, Efficient symmetric discretization for the Poisson, heat and Stefan-type problems with Robin boundary conditions, Journal
of Computational Physics 229 (2010) 875–889.
[49] C.S. Peskin, Numerical analysis of blood flow in the heart, Journal of Computational Physics 25 (1977) 220–252.
[50] A. Quarteroni, Numerical Models for Differential Problems, Springer, 2009.
[51] A. Quarteroni, R. Sacco, Numerical Approximation of Partial Differential Equations, Springer, 1994.
[52] A. Quarteroni, R. Sacco, F. Saleri, Numerical Mathematics, Springer, 2000.
[53] M.M. Rai, Navier–Stokes simulations of blade-vortex interaction using high-order accurate upwind schemes, AIAA Conference Paper, 1987, pp. 87–
0543.
[54] S.D. Rango, D.W. Zingg, Improvements to a dual time stepping method for computing unsteady flows, AIAA Journal 35 (1996) 1548–1550.
[55] G. Russo, P. Smereka, A remark on computing distance functions, Journal of Computational Physics 163 (2000) 51–67.
[56] A. Sarthou, S. Vincent, J. Caltagirone, P. Angot, Eulerian–Lagrangian grid coupling and penalty methods for the simulation of multiphase flows
interacting with complex objects, International Journal for Numerical Methods in Fluids 00 (2007) 1–6.
[57] A. Schmidt, Computation of three dimensional dendrites with finite elements, Journal of Computational Physics 125 (1996) 293–312.
[58] J. Sethian, Level Set Methods and Fast Marching Methods: Evolving Interfaces in Computational Geometry, Fluid Mechanics, Computer Vision and
Materials Science, Cambridge University Press, 1999.
[59] C.M. Shieh, P.J. Morris, High-order accurate dual time-stepping algorithm for viscous aeroacoustic simulations, AIAA Conference Paper, 1998, pp. 912–
922.
[60] G.H. Shortley, R. Weller, The numerical solution of Laplace’s equation, Journal of Applied Physics 9 (1938) 334–348.
[61] M. Sussman, P. Smereka, S. Osher, A level set approach for computing solutions to incompressible 2-phase flow, Journal of Computational Physics 114
(1994) 146–159.
[62] U. Trottemberg, C. Oosterlee, A. Schuller, Multigrid, Academic Press, 2000.
[63] J.W.L. Wan, X.-D. Liu, A boundary condition-capturing multigrid approach to irregular boundary problems, Journal of Scientific Computing 25 (2004)
1982–2003.
[64] W.L. Wan, Interface preserving coarsening multigrid for elliptic problems with highly discontinuous coefficients, Numerical Linear Algebra with
Applications 7 (2000) 727–741.
[65] A. Wiegmann, Z. Li, R. LeVeque, Crack jump conditions for elliptic problems, Applied Mathematics Letters 12 (1999) 81–88.
[66] S. Yu, Y. Zhou, G. Wei, Matched Interface and Boundary (MIB) method for elliptic problems with sharp-edged interfaces, Journal of Computational
Physics 224 (2007) 729–756.

You might also like