Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2011 Feb 15.
Published in final edited form as: J Sci Comput. 2008 Jun 1;35(2-3):266–299. doi: 10.1007/s10915-008-9190-z

A New Ghost Cell/Level Set Method for Moving Boundary Problems: Application to Tumor Growth

Paul Macklin 1, John S Lowengrub 2,
PMCID: PMC3039490  NIHMSID: NIHMS262252  PMID: 21331304

Abstract

In this paper, we present a ghost cell/level set method for the evolution of interfaces whose normal velocity depend upon the solutions of linear and nonlinear quasi-steady reaction-diffusion equations with curvature-dependent boundary conditions. Our technique includes a ghost cell method that accurately discretizes normal derivative jump boundary conditions without smearing jumps in the tangential derivative; a new iterative method for solving linear and nonlinear quasi-steady reaction-diffusion equations; an adaptive discretization to compute the curvature and normal vectors; and a new discrete approximation to the Heaviside function. We present numerical examples that demonstrate better than 1.5-order convergence for problems where traditional ghost cell methods either fail to converge or attain at best sub-linear accuracy. We apply our techniques to a model of tumor growth in complex, heterogeneous tissues that consists of a nonlinear nutrient equation and a pressure equation with geometry-dependent jump boundary conditions. We simulate the growth of glioblastoma (an aggressive brain tumor) into a large, 1 cm square of brain tissue that includes heterogeneous nutrient delivery and varied biomechanical characteristics (white matter, gray matter, cerebrospinal fluid, and bone), and we observe growth morphologies that are highly dependent upon the variations of the tissue characteristics—an effect observed in real tumor growth.

Keywords: Ghost fluid method, Ghost cell method, Level set method, Tumor growth, NAGSI, Nonlinear elliptic equations, Heaviside function, Heterogeneous media, Heterogeneous tissue structure, Adaptive normal vector calculation, Normal derivative jump boundary condition, Poisson equation

1 Introduction

The algorithms we develop in this paper are motivated by our interest in modeling tumor growth in complex, heterogeneous tissues. Cancer is a fundamental scientific and societal problem, and in the past several decades, intensive research has been focused on understanding the complexity of cancer progression, developing new therapies, and formulating optimal treatment protocols. While much work has been done in the mathematical community on tumor modeling (e.g., see the reviews [3, 6, 7, 9, 46, 47]), to date there has been little work in modeling tumor growth in realistic, heterogeneous tissues on large spatial scales. The methods we present in this paper will provide the foundation for a biologically-detailed millimeter-to-centimeter-scale model of tumor growth in heterogeneous tissues with realistic features (e.g., mechanically soft and hard regions, bone, and inhomogeneous nutrient delivery) [33, 35, 39]. However, the methods described in this paper have applications beyond the tumor growth context and can be applied to general systems of linear and nonlinear quasi-steady reaction-diffusion problems on moving, heterogeneous domains.

In previous work [34, 3638], we investigated simpler models of tumor growth using a level set/ghost fluid method that we developed in [34] and [36]; our technique tested second-order accurate when applied to interior problems, including the tumor growth model. (Hereafter, we refer to ghost fluid methods as ghost cell methods to emphasize that they have applications beyond fluid mechanics.) In [37], we improved the accuracy and robustness of level set-based curvature calculations in cases where two interfaces are in close contact, and we extended our approach to the two-sided problem in [38]. However, this work still smeared any jumps in the tangential derivative across the interface, assumed homogeneous tumor microenvironments (with piecewise constant biophysical parameters) and was not capable of simulating growth into complex tissue structures. We note that Zheng et al. [56] and Hogea et al. [26] have also used level set methods to study tumor growth and angiogenesis, but this work also assumed homogeneous tissues and used lower-order accurate level set methods. Frieboes et al. [16, 17] and Wise et al. [53] have begun studying 3D tumor growth using a diffuse interface approach, while others have begun studying the tumor problem using multiphase mixture models (e.g., see [4, 8], and [10]). Still others use discrete models, such as cellular automata and agents (e.g., see [1, 5], and [9] for some recent examples).

In this paper, we present a ghost cell/level set method for the evolution of interfaces whose normal velocity depend upon the solutions of linear and nonlinear quasi-steady reaction-diffusion equations with curvature-dependent boundary conditions. We introduce a new normal derivative jump discretization for the ghost cell method that accurately discretizes the jump without numerically smearing any tangential derivative jump. In this approach, the normal jump is written as a combination of two grid-aligned jumps that are easier to compute. This addresses a longstanding problem with the ghost cell method, and in numerical testing, our extended ghost cell method achieves better than 1.5-order accuracy in cases where the traditional normal derivative jump stencil either fails to converge or attains sub-first-order accuracy, regardless of mesh refinement. We also present a new adaptive normal vector calculation that allows us to robustly calculate appropriate normal vectors even in the presence of multiple, non-convex regions; we use this new adaptive normal vector discretization in our improved ghost cell method.

To solve nonlinear quasi-steady reaction-diffusion equations on large domains, we developed a nonlinear adaptive Gauss-Seidel-type iterative method (NAGSI) that can solve both linear and nonlinear problems using a localized update on a regular Cartesian mesh, and is fully compatible with ghost cell extrapolations. NAGSI is an adaptive solution method that builds upon earlier Gauss-Seidel-type iterative (GSI) methods by using a dynamic selection criterion to focus computational effort without the need for a complex adaptive mesh. We find that NAGSI is second-order accurate when used to solve a variety of linear and nonlinear problems, and its adaptivity achieves between a 10% and 50% reduction in computational time when compared to identical GSI methods without our adaptivity.

We apply these techniques to nonlinear moving boundary problems, where the velocity of the boundary depends upon the gradients of linear and nonlinear quasi-steady reaction-diffusion equations. When testing on a modified Hele-Shaw flow problem, our overall method demonstrates second-order accuracy. In the Hele-Shaw type problem, we simulate a growing drop of incompressible fluid in a medium with heterogeneous permeability; the drop grows preferentially in the regions of highest permeability. We also apply the techniques developed in this paper to model the growth of glioblastoma (an aggressive brain tumor) in a large (1 cm × 1 cm), heterogeneous section of brain tissue, including white and gray matter with differing biomechanical properties, cerebrospinal fluid, and bone. The numerical advances presented in this paper enabled us to solve this complex problem in a short period of time (under 24 hours of computation) while observing new behavior, such as preferential growth of the tumor in regions of reduced biomechanical resistance.

The outline of this paper is as follows. In Sect. 2, we introduce the general system of quasi-steady, linear and nonlinear reaction-diffusion equations that we solve on moving domains. In Sect. 3, we discuss the level set method, present our techniques for robustly and accurately calculating geometric quantities (i.e., curvature and normal vectors), introduce the ghost cell method, present our new normal derivative jump discretization that preserves the tangential derivative jump, and introduce our nonlinear adaptive Gauss-Seidel-type iterative (NAGSI) scheme for solving linear and nonlinear quasi-steady reaction-diffusion equations. We close Sect. 3 by combining these techniques to solve the general system presented in Sect. 2. In Sect. 4, we test the numerical convergence of our new ghost cell method using the new normal derivative jump discretization and the NAGSI solver, as well as our overall technique. In Sect. 5, we present examples derived from Hele-Shaw flow in a heterogeneous material and tumor growth in a complex, heterogeneous simulated tissue. We discuss our results and future work in Sect. 6.

2 The Equations for the Quasi-Steady Reaction-Diffusion System

We wish to solve systems of (potentially nonlinear) quasi-steady reaction-diffusion equations on a domain Inline graphic that is divided into two subdomains Ω(t) and Ωc(t) by a moving interface Σ(t). See Fig. 1. The interface Σ(t) evolves with a velocity that depends upon the gradients of these solutions. That is, we solve for a system of functions p1, p2, …, pk on Inline graphic with that satisfy equations of the form

Fig. 1.

Fig. 1

Regions for the general nonlinear quasi-steady reaction-diffusion moving boundary system

0=(Di(x,t,pi)pi)+fR,i(x,t,p1,,pi)pi+fS,i(x,t,p1,,pi) (1)

on Inline graphic\Σ, coupled with jump boundary conditions

[pi]=gi, (2)
[Dipin]=hi (3)

on Σ and either Dirichlet, Neumann, or extrapolation (extrapolated from the interior of the domain) boundary conditions on Inline graphic. Here, n is the outward unit normal vector (pointing into Ωc), and we define a jump in a quantity q at a point xΣ ∈ Σ by

[q(x)]=qinqout=limΩxxq(x)limΩcxxq(x). (4)

In the case where gi = 0 and hi = 0, this reduces to a regular (linear or nonlinear) diffusion problem throughout the domain Inline graphic.

The interfacial outward normal velocity V is given by

V=i=1kαipin. (5)

3 Numerical Solution Techniques

Before discussing our solution technique for the overall system, we introduce the key methods that will be required. Our overall technique is centered around a level set/ghost cell method which we first developed for a tumor growth problem in [34, 36, 37], and [38]. For completeness, we shall describe the overall approach, with a focus on new improvements in the method.

3.1 Narrow Band/Local Level Set Method

Level set methods were first developed by Osher and Sethian in [44] and have been used to study the evolution of moving surfaces that experience frequent topology changes (e.g., merger of regions and fragmentation), particularly in the contexts of fluid mechanics and computer graphics. (See the books [43, 48] and references [42, 44, 49].) In the level set method, the location of a region Ω is captured implicitly by introducing an auxilliary signed distance function ϕ that satisfies

{φ(x)<0,xΩ,φ(x)=0,x=Ω,φ(x)>0,xΩ,|φ(x)|1. (6)

In the level set approach, instead of explicitly tracking the position of interface Σ and manually handling topology changes, the level set function is updated by solving a PDE, which automatically accounts for the interface motion and all topology changes. If V is the outward normal velocity of the interface, then we update the position of the interface implicitly via

φt+V|φ|=0, (7)

where is an extension of V off of the interface. The extension is often obtained using a Hamilton-Jacobi PDE (e.g., see [55] and [2]). The fast marching method developed by Adalsteinsson and Sethian in [2] constructs an extension while simultaneously reinitializing the level set function using an ordered sequence of discrete operations, but is only first-order accurate. In [36] we developed a bilinear extension technique that is both faster and more accurate than the traditional, PDE-based approach.

Solving (7) can introduce numerical error into the level set function that perturbs it away from being a distance function, even for special choices of that are constant in the normal direction from the interface [2, 48] and thereby preserve distance functions. This is compensated for by reinitializing the level set function at regular intervals by solving

φτ=sign(φ0)(1|φ|) (8)

to steady state [45, 51]. Here, τ is pseudo-time, and ϕ0 is the original level set function prior to the reinitialization.

We discretize the spatial operator |▽ϕ| in (7) and (8) using the fifth-order weighted essentially non-oscillatory (WENO) method [27, 28], and we discretize pseudo-time in (8) using the third-order total variation-diminishing Runge-Kutta method (TVD-RK) from [23] and [24]. Due to the computational cost and the complexity of our tumor system, we currently discretize time in (7) using a forward Euler algorithm and a small step size. We discretize the sign function as in [51].

Lastly, because the primary purpose of a level set function is to track the position of the interface Σ over time, its accuracy is most important on and near the interface. To find the best compromise between accuracy and computational efficiency, we seek to update ϕ only as much as is necessary to accurately advect the interface. This can be done using the narrow band/local level set technique [40, 45]. Given an initialized level set function ϕ, only the points that fall within a fixed distance of the interface are updated during level set operations (e.g., velocity extensions and level set reinitialization). In the level set context, the narrow band can be identified by

{x:|φ(x)|R}, (9)

where R > 0 is a fixed constant that is chosen to suit the problem. In our work with the tumor problem, we use R = 20Δx. In some cases, we shall use a semiband {x : ϕ(x) ≤ R}.

3.2 Calculating Geometric Quantities

One of the advantages of the level set method is that the level function encodes all the geometric information. In particular, the outward-facing normal vector n is given by

n=φ|φ|, (10)

and the mean curvature can be computed via

κ=n=(φ|φ|). (11)

As we noted and used in [36] and [37], the level set function can also be used to estimate the closest point xΣ = (xΣ, yΣ) on the interface to a given point x = (x, y) by

x=xφ(x)n(x). (12)

These geometric quantities can readily be calculated at computational grid points using standard centered differences. If a geometric quantity (e.g., curvature) is desired at a non-grid point x′, then we calculate the geometric quantity at nearby node points and interpolate to find the desired quantity at x′ [34, 36, 37]. In our work, we have generally used bicubic interpolation (or cubic interpolation when x′ lies on a grid edge but not on a computational grid point).

However, as we demonstrated in [34] and [36], the level set function can develop discontinuities in its derivatives in regions that are equidistant from multiple portions of the interface. Furthermore, advecting and reinitializing the level set function tends to introduce error into the regions near the singularities. This can lead to difficulty when computing normal vectors and curvature when two interfaces are in close contact, introducing inaccuracy into the geometric quantities. See Fig. 2.

Fig. 2.

Fig. 2

Two interfaces in close contact: Points along the central dashed line are equidistant from both interfaces, resulting in discontinuities in the level set derivatives. The level set function ϕ tends to be an inaccurate approximation of a distance function and irregular in the adjacent gray areas

In [37], we introduced a new, geometry-aware curvature discretization to automatically detect and accurately deal with this scenario. To calculate the curvature κ at a point xΣ = (xΣ, yΣ) on the interface, recall that we need to compute and interpolate the curvature κi,j at nearby computational node points. Using the level set quality function

Q(x)=|1|φ(x)|| (13)

that we first defined in [34] and [36], we detected level set irregularity whenever Qη for some threshold η > 0. (In our work, we have generally used η ∼ 0.001.) To calculate the curvature κi,j at a computational node point (xi, yj), we evaluated Q at each of the nine grid points in {(xi+k, yj+) : −1 ≤ k, ℓ ≤ 1}. If Q < η at each of these points, then the level set function was deemed sufficiently smooth to calculate the curvature κi,j using the standard 9-point curvature stencil

{φxφi+1,jφi1,j2Δx,φyφi,j+1φi,j12Δy,φxxφi1,j2φi,j+φi+1,jΔx2,φyyφi,j12φi,j+φi,j+1Δy2,φxyφi+1,j+1φi1,j+1φi+1,j1+φi1,j14ΔxΔy,κi,jφxxφy22φxφyφxy+φyyφx2(φx2+φy2)32, (14)

which is second order accurate where the level set function is smooth [34, 36]. If we could calculate the curvature κi,j at enough nearby points to compute a bicubic or bilinear interpolation at xΣ, then we used that interpolated curvature value.

If Q > η at one of the points on the stencil, we constructed a positively-oriented local approximation of the interface γ(s) = (x(s), y(s)) by finding five points {xk=(xk,yk)}k=22 with x0 = xΣ on the interface and calculating a quadratic least squares polynomial fit. After adjusting γ to ensure that γ(0) = xΣ, we then used γ to construct a local level set function that effectively removed the influence of the nearby irregularity, which we could then discretize using the standard 9-point stencil. In our numerical testing, this geometry-aware, adaptive curvature discretization was second order accurate, even during periods of topological change such as the merger of drops in modified Hele-Shaw flow [37]. In more recent testing, we have found that so long as γ is a least squares quadratic or cubic polynomial fit and not a direct interpolation of the five points xk on the interface, it can be differentiated directly to compute the curvature.

We now extend this technique to calculate normal vectors. Suppose we desire the normal vector at a computational node point (xi, yj). If the level set is sufficiently smooth at the four points of {(xi−1, yj), (xi, yj−1), (xi+1, yj), (xi, yj+1)} (i.e., Q < η at those points), then we use the standard normal vector discretization

{φxφi+1,jφi1,j2Δx,φyφi,j+1φi,j12Δy,n1φx2+φy2+ε(φx,φy), (15)

where ε is a small positive number used to avoid division by zero; we use ε ∼ 10−16 in our work.

Otherwise, we identify the closest point on the interface xΣ by (12), construct the approximating curve γ(s) = (x(s), y(s)) through xΣ as in the adaptive curvature algorithm, and directly differentiate the curve to determine the unit tangent and outward normal vectors:

s=γ(0)γ(0)=1(x(0))2+(y(0))2(x(0),y(0)), (16)
n=1(x(0))2+(y(0))2(y(0),x(0)). (17)

We have found that both quadratic and cubic least squares polynomial fits are sufficiently smooth for this direct differentiation of the normal and tangent vectors.

3.3 The Ghost Cell Method

We wish to solve quasi-steady reaction-diffusion problems of the form

{0=(D(x)p)+fR(x)p+fS(x),xΩΩc,[p]=g,x,[Dpn]=h,x, (18)

coupled with standard (e.g., Dirichlet, Neumann, or extrapolation) boundary conditions on Inline graphic. (Note that D and p are scalars, i.e., D = Di and p = pi for some fixed 1 ≤ ik in the notation of (1).)

Standard finite differences cannot be applied across the interface due to the jump boundary conditions on Σ. The ghost cell method was developed to deal with this issue when solving elliptical problems by creating “ghost” computational points and using those ghost points in standard finite difference discretizations [15, 2022, 32]. In [34] and [36], we extended the ghost cell method to attain second-order accuracy on interior problems (i.e., p is constant in Ωc) with boundary conditions that depend upon the geometry (e.g., curvature) and without a jump condition on the normal derivative. A similar extension to the ghost cell method was presented in [19] to solve Laplace's equation without geometric boundary conditions and yielded fourth-order convergence on fixed domains and third-order convergence on moving boundaries. In [38], we extended our approach to solve systems like (18) in the case where h = 0 and D was constant in Ω and Ωc (with different constants). We applied the method to model avascular tumor growth in [38] and verified second-order accuracy for our overall solutions, although our method numerically smeared jumps in the tangential derivative. In the following section, we present our new ghost cell scheme, which includes a new technique for discretizing the normal derivative jump condition without smearing the tangential derivative jump.

Alternative approaches for overcoming the tangential smearing problem include the immersed interface method (IIM) [30] and the matched interface boundary (MIB) method [54, 57, 58]. The IIM requires the use of local coordinates (based on the normal and tangential directions of the interface) to properly discretize the normal derivative jump. The MIB method is a high-order generalization of the IIM and the ghost cell method that constructs elaborate extensions of the solution to several ficticious points on both sides of the interface; the extensions are designed to explicitly satisfy [p], [∂p/∂s], and [D∂p/∂n] simultaneously. The ghost fluid method has several advantages over these alternatives. Because the method is applied in a dimension-by-dimension manner, it is simple to implement and can be trivially extended to higher dimensions. Its accuracy can easily be improved by using higher-order extrapolations on each side of the interface. Like the MIB method, our new ghost cell method satisfies the normal derivative jump boundary condition without smearing the tangential derivative jump, but it retains the dimension-by-dimension aspect of the ghost cell method and does not require the explicit treatment of the tangential derivative jump. It is also much simpler to implement and can be incorporated into existing ghost cell frameworks.

3.3.1 Ghost Cell Extrapolations for the Diffusional Term

Suppose we wish to discretize the x-derivative of ∇ · (D(x)∇p) at a computational node point x = (xi, yj), and assume that D is C1 with respect to x throughout Ω and Ωc. (The diffusion constant may be discontinuous across the interface Σ; this case is treated below.) If (xi−1, yj), (xi, yj), and (xi+1, yj) are all in the same region, i.e.,

φi1,j0,φi,j0,andφi+1,j0, (19)

or

φi1,j>0,φi,j>0,andφi+1,j>0, (20)

then we can use the standard second-order discretization

x(D(x)px)1Δx2(Dxpi1,j(Dx+Dx+)pi,j+Dx+pi+1,j),Dx=D(xi12Δx,yj),Dx+=D(xi+12Δx,yj). (21)

Suppose, however, that (xi, yj) and (xi+1, yj) are not in the same region. Assume without loss of generality that (xi, yj) ∈ Ω and (xi+1, yj) ∈ Ωc; the case where (xi, yj) ∈ Ωc and (xi+1, yj) ∈ Ω is treated similarly. Then the interface Σ must separate (xi, yj) and (xi+1, yj) at some point

x=(x,yj)=(xi+θΔx,yj), (22)

where 0 < θ ≤ 1. In this scenario, we must modify our computational stencil by extending the solution in Ω to a “ghost cell point” i+1,j in the other region; we replace pi+1,j in (21) with the extrapolation i+1,j. See Fig. 3. If (xi−2, yj) and (xi−1, yj) are both in Ω, then we obtain i+1,j as a quadratic extrapolation of p from pi−2, j, Pi−1,j, and u:

Fig. 3.

Fig. 3

A typical ghost cell extrapolation i+1. Particular care must be taken to satisfy [p] = g and [Dp · n] = h without numerically smearing any tangential derivative jump [ ∇p · s]

p^i+1,j=2(1θ)2+θpi23(1θ)1+θpi1+6(1+θ)(2+θ)p. (23)

If (xi−1, yj) ∈ Ω but (x1−2, yj) ∉ Ω, then we obtain i+1,j by linear extrapolation from pi−1,j and p:

p^i+1,j=(1θ)1+θpi1,j+21+θp. (24)

If (xi−1, yj) ∉ Ω, then we use the constant extrapolation i+1,j = p. Note that in all cases, we require p. In the ghost cell approach, p is determined by the jump boundary conditions. We shall return to this point in the next section.

If D is continuous across the interface Σ, then Dx+ may be used in the ghost cell approximation without modification. If D is discontinuous across Σ, then we replace it with an extension D^x+ in a manner analogous to i+1,j. Suppose that D is defined at computational node points. If (xi−2, yj) and (xi−1, yj) are both in Ω, then we use quadratic extrapolation:

D^x+=38Di2,j54Di1,j+158Di,j. (25)

If (xi−1, yj) ∉ Ω but (x1−2, yj) ∉ Ω, then we use linear extrapolation from Di−1,j and Di,j:

D^x+=12Di1,j+32Di,j. (26)

If (xi−1, yj) ∉ Ω, then we use constant extrapolation D^x+=Di,j.

The case where we require a ghost cell extrapolation i−1,j is completely analogous, and the y-derivative is discretized in exactly the same manner. To apply the method to a 3-D problem, for instance, we need only repeat the process separately for the z-derivative term z(D(x)pz).

3.3.2 Determining p from the Jump Boundary Conditions

As we have seen, the ghost cell extrapolations require p. At the same time, the jump boundary conditions have not yet been applied to the scheme. By introducing the jump boundary conditions into the ghost cell extrapolation, we can simultaneously satisfy the jump conditions while eliminating p from the extrapolation, instead expressing the discretization solely in terms of computational node points.

First, we discretize the jump boundary condition by

ppr=sign(φi,j)g(x). (27)

The −sign(ϕi,j) term ensures that the jump condition has been applied in the proper direction from region Ω to region Ωc.

This introduces an additional, non-grid point pr into our calculation. However, by considering the normal derivative jump condition, we shall have two equations for p and pr, allowing us to completely eliminate them from the extrapolation. The proper discretization of the normal derivative jump [Dp · n] across the interface has been an open problem since the introduction of the ghost cell method for the Poisson problem [15, 21, 32]. Suppose that we wish to discretize [Dp · n] at the point xΣ = (xΣ, yj) = (xi + θΔx, yj) from the preceding discussion. In [32], the normal derivative jump was discretized as

[Dp.n]=(Dpn)(Dpn)rDppi,jθΔxDrpi+1,jpr(1θ)Δx, (28)

where

Dr=limζx+θΔxD(ζ,yj),D=limζx+θΔxD(ζ,yj),pr=limζx+θΔxp(ζ,yj),andp=limζx+θΔxp(ζ,yj). (29)

Notice that this is equivalent to assuming that the normal vector cuts the computational mesh at a right angle (i.e., n = (1, 0)), potentially leading to numerical smearing of any jump in the tangential derivative. Furthermore, if θ ∼ 0 or θ ∼ 1, then the discretization can be unstable due to the uneven spacing of the stencil points. See the left frame in Fig. 4. In numerical testing in [32], this stencil was less than first-order accurate due to the low order of the discretization (first-order left and right differences of the derivative), coupled with the numerical smearing of the tangential derivatives.

Fig. 4.

Fig. 4

Left: The traditional, unstable stencil for [Dp · n] from [32]. Right: Our stablized extension of this stencil from [38]

In [38], we introduced a new discretization for the normal derivative jump in the case where [Dp · n] = 0:

[Dp.n]Dppi1,j(1+θ)ΔxDrpi+2,jpr(2θ)Δx. (30)

This discretization guarantees that all three stencil points (xi−1, yj), (xΣ, yj), and (xi+1, yj) are at least Δx apart and consequently solves the stability problem. However, the discretization still numerically smears any jump in the tangential derivative because it approximates the normal vector as n = (1, 0). See the right frame in Fig. 4.

We now introduce a new normal derivative jump discretization that eliminates the numerical smearing of the jump in the tangential derivative. Let n = (nx, ny), and suppose that nx · ny ≥ 0, i.e., the normal vector faces up and right or down and left. Assuming no additional nearby interfaces (so that all right and left points are contained within the same regions), we begin by defining

ur=(xi+2x,0)=((2θ)Δx,0),vr=(xi+1x,yj+1yj)=((1θ)Δx,Δy),u=(xi1x,0)=((1+θ)Δx,0),andv=(xix,yj1yj)=(θΔx,Δy). (31)

See the left frame in Fig. 5.

Fig. 5.

Fig. 5

Our new first-order (left) and higher-order (right) computational stencils for the normal derivative jump [Dp · n]

Because ur and vr are linearly independent, they form a basis for ℝ2, and we can write

n=arur+brvr, (32)

where ar and br are obtained by solving the linear system

(ur,ur)ar+(vr,ur)br=(n,ur),(ur,vr)ar+(vr,vr)br=(n,vr). (33)

Using this, we can express (∂p/∂n)r as a combination of grid (ur) and off-grid (vr) directional derivatives:

(pn)r=(p)rn=ar(p)rur+br(p)rvr=arur(p)rurur+brvr(p)rvrvr=arur(p(ur/ur))r+brvr(p(vr/vr))r, (34)

where

ur=(2θ)Δx,vr=(1θ)2Δx2+Δy2. (35)

Using one-sided, first-order differences, we obtain the approximation

(pn)rarur(pi+2,jpr)ur+brvr(pi+1,j+1pr)vr=ar(pi+2,jpr)+br(pi+1,j+1pr). (36)

Similarly, u and v form a basis for ℝ2, and we can express

n=au+bv, (37)

rewrite the normal derivative as

(pn)=au(p(u/u))+bu(p(v/v)), (38)

and approximate it (to first-order) as

(pn)a(pi1,jp)+b(pi,j1p). (39)

By combining (36) and (39), we obtain a new discretization of [Dp · n] = h:

[Dp.n]D(a(pi1,jp)+b(pi,j1p))Dr(ar(pi+2,jpr)+br(pi+1,j+1pr))=sign(φi,j)h(x). (40)

When we combine this with the jump condition in (27), p and pr are completely determined. In practice, we implement this new discretization in the following way:

  1. We construct 2 × 2 linear systems for ar and br and a and b and solve them exactly using the standard inversion for 2 × 2 systems.

  2. We construct a 2 × 2 linear system for pr and p using the jump condition for ppr and the normal derivative jump discretization in (40). We solve this linear system for p and pr using the standard 2 × 2 inversion and use p in the ghost cell discretization.

The case where nx · ny < 0 is similar: we replace pi+1,j+1 by pi+1,j−1 in vr, and we replace pi,j−1 by pi,j+1 in vr. All other calculations are identical. The case of discretizing [Dp · n] at a point (xiθΔx, yj) is completely analogous, and the discretization in the y-direction is identical. In the 3-D case, we would proceed similarly by defining third basis vectors such as

wr=(xi+1x,0,zk+1zk)=((1θ)Δx,0,Δz),w=(xix,0,zk1zk)=(θΔx,0,Δz). (41)

This method has several advantages. In the spirit of the ghost cell method, the new stencil can be expressed entirely in terms of computational grid points and the jump interface location. Furthermore, the discretization can be applied in a dimension-by-dimension manner, just as in existing ghost cell methods. The implementation is simple and can be readily substituted into existing code in place of previous normal discretizations. Because the stencil discretizes D∂p/∂n in the true direction of the normal vector, it should result in more accurate numerical solutions with less numerical smearing of the tangential derivative jump. Whereas the ghost cell method in [32] was constructed with restrictions to guarantee a diagonally-dominant matrix system that must necessarily converge, we have no rigorous proof of convergence for our method. However, we find that in practice that our method does converge, even for difficult interfacial morphologies. (Indeed, we shall verify that our method is first-order accurate, even in situations where the discretization by [32] fails to converge; the discretization we present in the next section attains above-1.5-order accuracy.) Lastly, we note that if n = (1, 0) or n = (−1, 0), then the normal derivative jump discretization in (40) simplifies to (30). This further illustrates the point that earlier discretizations of the normal derivative jump were equivalent to assuming that the interface cuts the computational grid at a right angle.

3.3.3 Higher-Order Approximations of [Dp · n]

By using additional stencil points (with the same definitions of u, ur, v, and vr), we can improve the accuracy of the normal derivative jump discretization. If (xi+1, yj), (xi+2, yj), and (xi+3, yj) are all in the same region, we can replace the grid-aligned partial derivative in (34) with the second-order approximation

(p(ur/ur))r(5+2θ)(2θ)(3θ)Δxpr+(3θ)(2θ)Δxpi+2,j(2θ)(3θ)Δxpi+3,j. (42)

See the right frame of Fig. 5.

Similarly, if (xi, yj), (xi−1, yj), and (xi−2, yj) are all in the same region, then we can replace the grid-aligned partial derivative in (38) with the second-order approximation

(p(u/u))(1+θ)(2+θ)Δxpi2,j+(2+θ)(1+θ)Δxpi1,j(3+2θ)(1+θ)(2+θ)Δxp. (43)

Because v and vr generally do not intersect the computational mesh at grid points, interpolation of nearby grid points is required to improve the accuracy of the off-grid directional derivatives in (34) and (38).

If (xi+1, yj), (xi+1, yj+1), (xi+1, yj+2), and (xi+2, yj+2) are all in the same region, then we can replace the off-grid directional derivative in (34) by the higher-order approximation

(p(vr/vr))r32vrpr+2vrpi+1,j+112vr[θpi+1,j+2+(1θ)pi+2,j+2], (44)

where the bracketed term is a linear interpolation to obtain a point along the path of vr. See the right frame of Fig. 5.

Similarly, if (xi, yj), (xi, yj−1), (xi, yj−2), and (xi−1, yj−2) are all in the same region, then we can improve our approximation of the off-grid derivative in (38) with

(p(v/v))32vp+2vpi,j112v[(1θ)pi,j2+θpi1,j2]. (45)

Putting all this together, the higher-order discretization of [Dp · n] = h is given by

[Dpn]+Da((1+θ)2(2+θ)pi2,j+(2+θ)pi1,j(3+2θ)(2+θ)p)+Db(32p+2pi,j112[(1θ)pi,j2+θpi1,j2])Drar((5+2θ)(3θ)pr+(3θ)pi+2,j(2θ)2(3θ)pi+3,j)Drbr(32pr+2pi+1,j+112[θpi+,j+2+(1θ)pi+2,j+2])=sign(φi,j)h(x). (46)

In principle, all these partial differences can be made more accurate still by using additional node points. In particular, one could use quadratic or cubic interpolations in the off-grid directional derivative differences.

3.4 NAGSI: a Nonlinear Adaptive Gauss-Seidel Type Iterative Method for Solving Nonlinear Quasi-Steady Reaction-Diffusion Equations

We now develop a fully-nonlinear, adaptive method to solve the nonlinear reaction-diffusion equation

0=(D(x,p)p)+fR(x,p)p+fS(x,p),xD, (47)

where D and p are scalars (i.e., D = Di and p = pi for some fixed 1 ≤ ik in the notation of (1)), Inline graphic is a rectangular domain in ℝn, and standard boundary conditions (e.g., Neumann, Dirichlet, or extrapolation) have been assigned. Here, fR and fS are the reaction and source terms, respectively. Without loss of generality, we assume that fR ≤ 0; if this condition is not satisfied, then the positive part of fR p can be rewritten as part of the source term fS. The diffusivity D is assumed to be smooth and strictly positive. For simplicity, we shall consider the 2-D case where Inline graphic = [a, b] × [c, d]; the n-D case is completely analogous.

In Sect. 3.4.1, we give a semi-implicit formulation of our method which allows for solving (47) using a GSI method, similar to pseudo-time methods discussed in [12, 31, 41] and GSI method literature (e.g., see [11, 25], and [52]). Using this formulation, we present a new form of adaptivity in Sect. 3.4.2 that can be applied to regular Cartesian meshes.

3.4.1 A Semi-Implicit Formulation of GSI Methods

To solve (47), we solve the related equation

pτ=(D(x,p)p)+fR(x,p)p+fS(x,p) (48)

to steady state, where τ is pseudo-time. For numerical stability, we begin by implicitly discretizing pseudo-time with a backwards Euler difference, lagging the dependence of D on p, and applying the standard second-order centered difference to the diffusional term:

pi,jn+1pi,jnΔτ=+1Δx2(Dxpi1,jn+1(Dx+Dx+)pi,jn+1+Dx+pi+1,jn+1)+1Δy2(Dypi,j1n+1(Dy+Dy+)pi,jn+1+Dy+pi,j+1n+1)+fR(xi,pin)pin+1+fS(xi,pin)+O(Δτ+Δx2+Δy2),Dx=D(xi12Δx,yj,12(pi1,jn+pi,jn)),Dx+=D(xi+12Δx,yj12(pi,jn+pi+1,jn)),Dy=D(xi,yj12Δy,12(pi,j1n+pi,jn)),Dy+=D(xi,yj+12Δy,12(pi,jn+pi,j+1n)). (49)

Here, pi,jn=p(xi,yj,τn), xi = a + iΔx, yj = c + jΔy, τn = nΔτ, and Δx, Δy and Δτ are spatial and pseudo-temporal discretization step sizes, respectively.

This system has the form

A(x,pn)pn+1=b(x,pn) (50)

which can be solved to steady state by constructing the operator A(x, pn) and right-hand side b(x, pn) and solving the linear system in (50) with an iterative method (e.g., BiCGStab(ℓ) from [50]) at every pseudo-time step until the system reaches steady state. However, constructing these operators may be computationally expensive, making the method disadvantageous. Furthermore, after some initial large change throughout the computational domain, the solution may only be rapidly changing on a small subset of the domain. In such a case, the majority of the computational cost of constructing and solving a new linear system at every pseudo-timestep will be unnecessary.

By changing the points used in the discretization of ∇ · (Dp), we can make the scheme semi-implicit. Assuming that we sweep through grid points with increasing i and j:

pi,jn+1pi,jnΔτ=+1Δx2(Dxpi1,jn+1(Dx+Dx+)pi,jn+1+Dx+pi+1,jn)+1Δy2(Dypi,j1n+1(Dy+Dy+)pi,jn+1+Dy+pi,j+1n)+fR(xi,pin)pin+1+fS(xi,pin)+O(Δτ+Δx2+Δy2),Dx=D(xi12Δx,yj,12(pi1,jn+1+pi,jn)),Dx+=D(xi+12Δx,yj12(pi,jn+pi+1,jn)),Dy=D(xi,yj12Δy,12(pi,j1n+1+pi,jn)),Dy+=D(xi,yj+12Δy,12(pi,jn+pi,j+1n)), (51)

which we can solve algebraically for pi,jn+1 based upon known quantities:

pi,jn+1=pi,jnΔτ+Dx+pi+1,jn+Dxpi1,jn+1Δx2+Dy+pi,j+1n+Dypi,j1n+1Δy2+fS(xi,yj,pi,jn)1Δτ+Dx+Dx+Δx2+Dy+Dy+Δy2fR(xi,yj,pi,jn). (52)

Using this, we now introduce a 2-D GSI scheme:

  • Step 1: Discretize the domain [a, b] × [c, d] by
    a=x0,,xi=a+iΔx,,xm=a+mΔx=b, (53)
    c=y0,,yj=c+jΔy,,yn=c+nΔn=d. (54)
  • Step 2: Store an initial guess in the 2-D array p = (pi,j).

  • Step 3: Update the boundary points {p0,j,pm,j}j=0n and {pi,0,pi,n}i=0m according to the boundary conditions.

  • Step 4: Choose a tolerance ε, and set r > ε.

  • Step 5: While r > ε:

    • Part a: For 1 ≤ i < m and 1 ≤ j < n:

      1. Set r = 0.

      2. Calculate pi,jn+1 based upon (52).

      3. If ri,j=|pi,jn+1pi,jn|>r, set r = ri,j.

      4. Overwrite pi,j with the newly calculated pi,jn+1.

The resulting scheme, which overwrites previous values pi,jn with updated values pi,jn+1 while sweeping through the domain, is a nonlinear Gauss-Seidel-like iterative (GSI) method. To prevent biases (e.g., asymmetry) from the update order, we alternate sweeping directions: up and right (increasing i and j), then up and left (decreasing i, increasing j), then down and left (decreasing i and j), and then down and right (increasing i and decreasing j). By overwriting the current values in the {pi,j} data structure with newly-calculated values, the proper indexing of the pseudo-time index in the discretization of ∇ · (Dp) is automatic.

There are numerous advantages to this technique. First and foremost, there is no need to invert a large linear system at every iteration. Second, because the scheme makes use of updated information while sweeping through the domain (unlike Jacobi-like iterations), the effects of linearizing the equation with respect to pseudo-time are reduced. Because (52) updates the solution based upon local operations (i.e., it only requires information on nearby computational nodes), it is parallelizable and simple to implement, particularly on shared-memory architectures. Lastly, we note that this technique is fully compatible with the ghost cell method of enforcing jump boundary conditions on irregular domains by replacing the appropriate point in the stencil with a ghost cell extrapolation (e.g., replace pi+1,jn with p^i+1.jn).

We note that Gauss-Seidel-like iterative methods have been used to solve nonlinear problems in the past, generally in the context of nonlinear optimization (e.g., see [11, 25]). The idea of adapting linear iterative methods to solving nonlinear problems is not new (e.g., see [52]). However, most of those techniques use complicated, block structures, which in themselves require iterative solutions and are not as well-suited to adaptivity.

3.4.2 Adaptivity

The local nature of our GSI technique allows for a new approach to adaptivity using a regular Cartesian mesh. On any sweep through the solution domain, as the solution converges, the numerical solution tends to change most on a small fraction of the computational nodes. Therefore, we can select computational nodes where the numerical solution is changing most rapidly and use (52) to update only those nodes. The modified, nonlinear adaptive GSI technique (NAGSI) is as follows:

  • Step 1: Discretize the domain [a, b] × [c, d] by
    a=x0,,xi=a+iΔx,,xm=a+mΔx=b, (55)
    c=y0,,yj=c+jΔy,,yn=c+nΔy=d. (56)
  • Step 2: Store an initial guess in the 2-D array p = {pi,j}.

  • Step 3: Update the boundary points {p0,j,pm,j}j=0n and {pi,0,pi,n}i=0m according to the boundary conditions.

  • Step 4: Choose a tolerance ε, and set r > ε.

  • Step 5: While r > ε:

    • Part a: For 1 ≤ i < m and 1 ≤ j < n:

      1. Set r = 0.

      2. Calculate pi,jn+1 based upon (52).

      3. If ri,j=|pi,jn+1pi,jn|>r, set r = ri,j.

      4. Overwrite pi,j with the newly calculated pi,jn+1.

    • Part b: Set a threshold η < r. In our work, we have used η=14r.

    • Part c: Sweep through the domain again (with a different sweep direction), this time creating a list ={(ik,jk)}k=1N of nodes where ri,j > η.

    • Part d: Repeat M times:

      1. For 1 ≤ kN, update pik,jk according to (52).

The scheme is illustrated schematically in Fig. 6.

Fig. 6.

Fig. 6

Overview of the NAGSI adaptivity: upper left: We sweep through the entire domain and update all points. We then set a threshold η not exceeding the residual. upper right: We sweep through the entire domain again (using a different sweep pattern) and flag all points where the change exceeded the threshold η. lower left and right: We sweep through and update the flagged points only, for one or more times

In our work, we use M = 2; in testing, we have found that additional iterations through the selected nodes Inline graphic resulted in little change in the approximate solution. This is because Inline graphic behaves as a small, irregular subdomain of Inline graphic with fixed boundary conditions (i.e., the remaining computational nodes), and so an elliptical equation can approach a steady state on the subdomain quickly. However, the optimal choice of M may depend upon the problem under study and could potentially be dynamically chosen; we are currently investigating these approaches.

While the method does need to sweep through the entire computational domain for some of the iterations, its adaptivity is based upon the same philosophy of traditional adaptive mesh techniques of focusing computational effort adaptively where it is most needed, leading to accelerated convergence when compared to non-adaptive, fixed grid methods. In testing on level set problems with large solution gradients, we have found that the adaptivity decreases the computational time of NAGSI by 10% to 50% (results not shown). Furthermore, the strategy for choosing the list Inline graphic of flagged points can be tailored to the computational problem (e.g., in level set methods, one might choose Inline graphic to include a narrow band about the zero level set). Because the method requires little extra effort to implement, it can conceivably be used to improve performance in existing computational frameworks with a minimum of reprogramming. We note that NAGSI's convergence could be accelerated by combining it with multigrid techniques (e.g., such as those used for iterative techniques in computational fluid dynamics problems by [12, 31], and [41]) by implementing NAGSI at each level of the multigrid technique. Lastly, we note that while we have focused our adaptivity approach on improving performance on fixed, regular grids, we believe it is possible to apply a similar philosophy to irregular grids by choosing local discretizations that can be applied to selected mesh points for improved performance.

3.5 Solving the Overall System

We solve the overall model from Sect. 2 using a level set/ghost cell method that uses the methods we just introduced. At every fixed time t, our method consists of the following steps:

  • Step 1: Maintain ϕ as a distance function, and pre-compute any required geometrical quantities, such as normal vectors and curvature. Use the geometry-aware discretization discussed in Sect. 3.2.

  • Step 2: Solve the quasi-steady reaction-diffusion problems for each pi using NAGSI. (See Sect. 3.4.) In the event that jump boundary conditions [pi] and [Dipi · n] are prescribed, use the ghost cell extrapolations described in Sect. 3.3.

  • Step 3: Calculate and extend the normal velocity V:

    • Part a: Calculate ∇pi for each i in the narrow band {x : |ϕ(x)| ≤ R} using second-order centered differences if all points in the stencil are in the same region (all inside Ω or all outside Ω). Otherwise, use high-order, one-sided Taylor expansions. In our work, we use five-point stencils when possible, and degrade to lower-order one-sided stencils as necessary.

    • Part b: Use our bilinear velocity extension from [36] to create a normal extension of V = Σαipi · n.

    • Part c: Problems with geometric boundary conditions (e.g., those that depend upon the curvature κ) require that Δt ∼ Δx3 to maintain stability. To avoid this prohibitive time step restriction, apply the Gaussian filtering technique we developed in [34] and [36] to the extended velocity , which removes high-frequency noise from the velocity. Note that if the jump boundary conditions of the pi do not require the curvature, then this filtering may not be required.

    • Part d: Use our bilinear velocity extension from [36] to extend the filtered velocity.

    • Part e: Calculate the CFL condition Δt=Δx2max(V).

  • Step 4: Construct |∇ϕ| using fifth-order WENO. Use this to advect the interface Σ.

  • Step 5: (Optional) If using a higher-order Runge-Kutta approximation, repeat steps (2)–(4) for each part of the Runge-Kutta scheme.

4 Convergence of the Numerical Techniques

We now present convergence results for the newly developed numerical techniques and the overall scheme. For a given norm ‖ · ‖, we define two orders of convergence. If ph is a numerical solution computed on a computational grid with mesh length h, and if the exact solution p is known, then we define

order of convergence=log(ph1pph2p)log(h1h2) (57)

where the norm is computed at the computational node points, and h2 < h1 are two different mesh lengths.

If the exact solution is unknown, then we solve on meshes with mesh lengths h1 = h, h2=12h, and h3=14h, and we compute the order of convergence via

order of convergence=log(phph2ph2ph3)log(2), (58)

where each norm is computed on the common grid points. In our work, we use the discrete maximum norm for all convergence testing.

4.1 Convergence of the Ghost Cell Method with the New [Dp · n] Stencils and NAGSI

Example 1

An Example with Large Tangential and Normal Jumps:

To test the convergence and impact of our new normal derivative jump discretization, we studied the following problem

2p=0,if|x|<1, (59)
2p=0,if|x|>1, (60)
[p]=x+y,if|x|=1, (61)
[pn]=x+y,if|x|=1, (62)
u=0,ifx([2,2]×[2,2]), (63)

whose solution is

p(x,y)={x+y,if|x|1,0,else. (64)

Note that the solution in (64) has a nonzero jump in tangential derivative:

[ps]=(1,1)(y,x)=yx, (65)

where s is the positively-oriented tangent vector along boundary of the circle.

We solved this system with mesh sizes Δx ∈ {0.16, 0.08, 0.04}, using our new NAGSI solver along with the ghost cell extrapolations described above, using both the traditional, grid-aligned normal derivative stencil from [32] and the new normal derivative jump stencils. The traditional stencil from [32] (as stabilized in [38]) failed to converge (left part of Table 1), with visible distortions in the solution (blue squares in Fig. 7). In contrast, when we recomputed the solution using our new normal derivative jump stencils, we obtained 2.50- and 2.67-order convergence for our first-order and higher-order stencils, respectively (middle and right parts of Table 1, respectively). Thus, we see that preserving the accuracy in the tangential derivative jump can have a substantial impact on the overall accuracy of the solution and is necessary for convergence in this example.

Table 1.

Comparison of the [Dp · n] stencil for the traditional (left), first-order new (middle), and higher-order new (right) methods on Example 1

Traditional stencil New stencil (1st order) New stencil (Higher order)



Δx error Δx error Δx error
0.16 0.168897 0.16 0.00295862 0.16 0.00331730
0.08 0.170776 0.08 5.11947e–4 0.08 5.73877e–4
0.04 0.168131 0.04 9.22828e–5 0.04 8.18444e–5
order 0.00751 order 2.50 order 2.67
Fig. 7.

Fig. 7

(Color online) Comparison of solutions along the line y = x using the traditional (blue squares) and new (red circles) [Dp · n] stencils using Δx = 0.04. The exact solution is given by the solid black line

Example 2

An Example with a Large Tangential Jump and no Normal Jump:

We solved the same system as in the previous example, but with

[pn]=0if|x|=1. (66)

In this example, the traditional stencil converged, but only to order 0.319 (top part of Table 2). In contrast, our first-order method attained 1.11-order accuracy (lower left part of Table 2), and our higher-order method achieved 1.53-order convergence (lower right part of Table 2).

Table 2.

Comparison of the [Dp · n] stencil for the traditional (top) and new first-order (bottom left) and higher-order (bottom right) methods on Example 2

Difference norm
p0.16 − p0.08 0.0282768
p0.08 − p0.04 0.0226730
order 0.319


Difference norm Difference norm


p0.16 − p0.08 0.0201711 p0.16 − p0.08 0.00655476
p0.08 − p0.04 0.00936549 p0.08 − p0.04 0.00226471
order 1.11 order 1.53


Example 3

An Example with Large Normal Jumps and Zero Tangential Jumps:

To further investigate the accuracy of our new normal jump stencil, we studied the following problem:

2p=4,if|x|<1, (67)
2p=0,if|x|>1, (68)
[p]=0,if|x|=1, (69)
[pn]=2,if|x|=1, (70)
p=0,ifx([2,2]×[2,2]), (71)

whose solution is

p(x,y)={1x2y2,if|x|1,0,else. (72)

Due to the jump boundary condition, this problem is sensitive to the discretization of the discontinuous source term: error in the numerical integral of the source term inside |x| ≤ 1 will vertically shift the quadratic (interior) part of the solution, and due to the coupling of the interior and exterior normal derivatives, error in the source term will lead to error in the exterior region as well. We treat the discontinuous source term by solving

0=2p+4H(φ),x[2,2]×[2,2], (73)

and we discretize H with a numerical Heaviside function . See Appendix for further discussion on the choice of .

Notice that this solution has no jump in the tangential derivative. Nonetheless, the traditional normal jump stencil (again, as stabilized in [38]) yields sub-first-order convergence (left part of Table 3), whereas our new stencil is first-order accurate (middle part of Table 3), and the higher-order method is 2.65-order accurate. Thus, we can see that the failure of the traditional [Dp · n] stencil to properly separate the normal and tangential jumps degrades the accuracy of the entire solution, even in the absence of a tangential derivative jump.

Table 3.

Comparison of the [Dp · n] stencil for the traditional (left) and new first-order (middle) and higher-order (right) methods on Example 3

Traditional stencil New (1st order) stencil New (higher order) stencil



Δx error Δx error Δx error
0.16 0.647074 0.16 0.244280 0.16 0.0401866
0.08 0.540950 0.08 0.101704 0.08 0.00830349
0.04 0.458996 0.04 0.0492541 0.04 0.00312614
order 0.248 order 1.16 order 1.84

4.2 Convergence of the Overall Method

We examined the convergence of the overall method by studying a drop moving under Hele-Shaw-type flow in an heterogeneous medium. Let Σ be the boundary of a circle of radius 1 centered at ( 52,52).

We represent Σ as the zero contour of a level set function ϕ on the computational domain Inline graphic = [0, 10] × [0, 10] containing both Ω = {xInline graphic: ϕ(x) < 0} and its complement Ωc = {xInline graphic: ϕ(x) > 0}.

The drop has normal velocity

V=μPnifx, (74)

which we implement in the level set context as

φt+V|φ|=0, (75)

where is the normal extension of the velocity off of Σ that we described in [36].

pressure P satisfies

0=(μP)+H(φ)ifxΩΩc, (76)
[P]=κifx, (77)
[μPn]=0ifx (78)

with

μ=η+(1η)e1.5(x2+y252)8ifxD, (79)
η=0.0001, (80)

and with boundary conditions

P0onD. (81)

See Fig. 8 for a plot of the permeability μ. Note that this models the growth of a drop of incompressible fluid in a heterogeneous domain, where fluid is added at a constant rate throughout the drop domain via the Heaviside source term H(− ϕ).

Fig. 8.

Fig. 8

Permeability μ for the convergence example

We chose three spatial resolutions: Δx = Δy = 0.20 (low resolution), Δx = Δy = 0.10 (medium resolution), and Δx = Δy = 0.05 (high resolution). We used the discrete numerical Heaviside function that we describe in Appendix. We used a simple, first-order forward Euler time discretization with CFL condition

Δtmax(Δx2max|V|,0.05). (82)

and fifth-order WENO for V | ∇ϕ|. As in [34, 36], we used Gaussian filtering to attain a first-order CFL stability condition while maintaining accuracy. In these simulations, we used a smoothing parameter (standard deviation) of σ = 2Δx = 0.40 for low resolution, σ = 3Δx = 0.30 for medium resolution, and σ = 4Δx = 0.15 for high resolution.

We calculated the order of convergence (of the level set function ϕ) at times t ∈ {0.10, 0.20, 0.30, 0.40, 0.50} according to (58). Due to the small time step, the time error is small and is consequently dominated by the spatial error. The average order of convergence was 1.86. See Table 4. We shall discuss the behavior of the solution in Sect. 5.1.

Table 4.

Convergence of the Overall Method

t ϕ0.2ϕ0.1 ϕ0.1ϕ0.05 order
0.1 0.0504799 0.0184189 1.45
0.2 0.0946371 0.0179485 2.40
0.3 0.0665503 0.0396410 0.747
0.4 0.130442 0.0342100 1.93
0.5 0.231275 0.0335707 2.78
average order of convergence 1.86

5 Numerical Examples

5.1 Hele-Shaw-Type Flow in Heterogeneous Media

We solved the Hele-Shaw-type problem from the overall convergence study with Δx = Δy = 0.10, Inline graphic = [0, 10] × [0, 10], and the permeability μ shown in Fig. 8 until t = 1.8. The solution is plotted in 0.20 time increments in Fig. 9. As volume is added to the drop Ω (via the Heaviside source term in the pressure equation), pressure builds inside the drop that pushes the boundary Σ outward and causes the region Ω to grow. Because the permeability μ varies between 0.0001 and 1 throughout the domain, the drop grows preferentially inside the region where μ ∼ 1. See Fig. 9. Because volume is added at a constant rate throughout the drop, the rate of growth is proportional to the volume of the drop; this can be observed as an increasing distance between solution curves.

Fig. 9.

Fig. 9

Outward growth of the medium-resolution (Δx = Δy = 0.10) solution in t = 0.20 increments for the convergence example

5.2 Tumor Growth in Heterogeneous Tissues

We now demonstrate our technique by applying it to a nonlinear tumor growth problem. Let ϕ be a level set function whose zero contour denotes the boundary Σ of an avascular tumor Ω = Ω (x, t) growing into a surrounding, non-cancerous tissue Ωc = Ωc(x, t). This models the early stage of in vivo growth before the onset of angiogenesis. We take our computational domain Inline graphic to be a rectangular region that fully contains Ω and Ωc; note that Inline graphic = Ω ∪ Ωc.

Let c denote the non-dimensionalized nutrient concentration within the computational domain, scaled by the far-field nutrient value in well-vascularized, non-pathological tissue. We scale space by the oxygen diffusional length scale L ≈ 200 μm. Outside the tumor, the blood vasculature (with density B) delivers nutrient, which diffuses into the tumor and is consumed by proliferating cells. As the tumor grows, less nutrient reaches the interior, until it drops to a level cH where tumor cells become hypoxic. The hypoxic tumor cells become quiescent and consume less nutrient. If the tumor continues to grow and the interior nutrient level drops further below a critical threshold cN, the tumor cells begin to die (necrose). When cells necrose, they release their cellular contents, which are both oxygen-reactive (e.g., see [18, 29]) and growth-inhibiting. These processes can be modeled as

0=(Dc)λc(x,c)c+λbulkc(1c)B(x)H(φ)ifxΩ, (83)
cn=0ifxD, (84)

where B is the pre-existing blood vessel density, λbulkc is the nutrient delivery rate in the pre-existing blood vasculature, D is the nutrient diffusivity, and λc(x, c) is chosen to combine the rates of nutrient uptake (in the viable and hypoxic portion of the tumor) and decay (in the necrotic portion of the tumor); we assume no nutrient uptake in the non-cancerous tissue Ωc. Normalized by the nutrient uptake rate in the viable region, the uptake and decay function is modeled by

λc(x,c)={0ifxΩc,1ifxΩand1c>cH,q(c)ifxΩandcHc>cN,λNcifxΩandcNc. (85)

Here, λNc is the rate of nutrient decay in the necrotic core, and q(c) is a polynomial that smoothly connects regions and is chosen to satisfy

q(cH)=1,q(cH)=0,q(cH+cN2)=λHc,q(cN)=λNcq(cN)=0, (86)

where λHc is the rate of nutrient uptake by hypoxic cells. In our numerical example, we shall take cH = 0.3, cN = 0.2, λHc=0.5, and λNc=0.25. In this case,

q(c)=20000c4+18500c36275c2+930c50.75. (87)

Notice that this makes our nutrient equation nonlinear.

We model the tumor as an incompressible fluid growing in a porous medium, and so the local rate of change in tumor volume is given by ∇ · u, where u is the cellular velocity field. Proliferating tumor cells in the viable rim of the tumor generate an internal biomechanical pressure p that increases the tumor volume (at a rate proportional to the nutrient level c) and pushes the tumor boundary outward with normal velocity V via Darcy's law (u = −μp). The enzymatic breakdown of necrotic tumor tissue is modeled by a local decrease in the pressure that reduces volume (at a constant rate GN) and slows growth. Cell-to-cell adhesion is modeled as a surface tension (curvature) boundary condition on Σ. The non-cancerous tissue in Ωc is also assumed to be affected by the tumor-generated pressure, but the cells in Ωc do not proliferate. We model the pressure by

u=(μp)={0ifxΩc,cifxΩandc>cH,0ifxΩandcHc>cN,GNifxΩandcNc (88)

with boundary conditions

[p]=1Gκifx, (89)
[μpn]=0ifx. (90)

We model the normal velocity of the tumor boundary by Darcy's law:

V=μpnifφ(x)=0. (91)

We choose boundary conditions on p along Inline graphic to suit the problem under study. Here, G that characterizes the tumor aggressiveness (the rate of proliferation compared to the cell-cell adhesion time scale), GN is a parameter that governs the rate of tumor cell breakdown in necrotic regions, and μ is the cellular mobility. This tumor growth model is an extension of current models given in [13, 34, 36, 37, 56] and [38], and will be further extended and investigated in future work [33, 39].

We simulated this tumor system on a computational domain Inline graphic = [0, 50] × [0, 50] with Δx = Δy = 0.10, with tissue and tumor properties chosen to model the evolution of glioblastoma in brain tissue. Because the oxygen diffusional length scale is approximately 200 μm, this corresponds to an approximately 1 cm square of simulated brain tissue. We set G = 20, GN = 1, λbulkc=1, cH = 0.3, cN = 0.2, and used q(c) as given in (87). We model growth in a complex, heterogeneous brain tissue as shown in the first frame in Fig. 10. In the white region, μ = 0.0001, D = 0.0001, and B = 0, which models a rigid material such as the skull. In the black regions, μ = 10, D = 1, and B = 0, which models an incompresible fluid (cerebrospinal fluid). The light and dark gray regions model tissues of differing biomechanical properties (white and gray matter). In the light gray regions, μ = 1.5, D = 1, and B = 1; in the dark gray regions, μ = 0.5, D = 1, and B = 1. The red region (color images are available online) denotes the initial shape and position of the simulated tumor. We smoothed μ, B, and D using a Gaussian filter with standard deviation σ = 3Δx = 0.3 to satisfy smoothness requirements of the reaction-diffusion equations. We used (linear) extrapolation boundary conditions on the pressure along x = 0, y = 0, and y = 50 to simulated growth into a larger, unshown tissue, and we set p = 0 along the rigid boundary at x = 50.

Fig. 10.

Fig. 10

(Color online) Long-time tumor simulation from t = 0.0 days (top left) to t = 35.0 days (bottom right) in 5 day increments

We simulated from t = 0 to t = 60. Using a 3.3 GHz Pentium 4 workstation and a C++ implementation, the 501 × 501 simulation required under 24 hours to compute. Because our (mitosis) time scale ranges from approximately 18 to 36 hours for this problem, this corresponds to 45 to 90 days of growth. We plot our solution in t = 5.0 (approximately 5 days) increments in Figs. 10 and 11. In those plots, red regions correspond to viable tumor tissue (where c > cH), blue regions denote hypoxic tumor tissue (cHc > cN), and brown regions denote necrotic tumor cells (cNc). (Please see the online version of the article for color figures.) In this simulation, the tumor grows rapidly until the nutrient level drops below cH = 0.30 (see t = 5.0), at which time a large portion of the tumor becomes hypoxic. The tumor continues to grow at a slower rate until the interior of the tumor becomes necrotic. (See t = 10.0.) This causes non-uniform volume loss within the tumor and contributes to morphological instability. We note that because the biomechanical responsiveness is continuous across the tumor boundary and the microenvironment has a moderate nutrient gradient, this simulation corresponds to the border between the invasive, fingering growth regime and the invasive, fragmenting growth regime that we investigated in [38].

Fig. 11.

Fig. 11

(Color online) Long-time tumor simulation (continued) from t = 40.0 days (top left) to t = 60.0 days (bottom) in 5 day increments

However, additional effects can be seen that were not observed in the aforementioned study. As the tumor grows out of the biomechanically permissive tissue (light gray; μ = 1.5) and into the biomechanically resistant tissue (dark gray; μ =0.5), its rate of invasion into the tissue slows. (See t = 15 to 25.0.) This results in preferential growth into the permissive (light gray) material, a trend which can be clearly seen from t = 30.0 onward. When the tumor grows through the resistive tissue (dark gray) and reaches the fluid (black), the tumor experiences a sudden drop in biomechanical resistance to growth. As a result, the tumor grows rapidly and preferentially in the 1/2 mm fluid structures that separate the tissue. Such growth patterns are not observed when simulating homogeneous tissues.

Other observed differences are due to our new treatment of hypoxic (quiescent) tumor cells. Certain regions that we had previously classified as necrotic (in [34, 3638]) are now treated as quiescent. As a result, tumor volume loss is reduced, and in particular, this may result in large hypoxic regions that have little or no viable rim. Had these regions been treated as necrotic, the invasive fingers would have been thinner, and the tumor may have fragmented. Therefore, the separate treatment of the hypoxic regions can have a significant impact on the details of the invasive morphology of the tumor. We shall investigate this effect in greater detail in future work.

6 Conclusions and Future Work

In this paper, we built upon our earlier work from [34, 36, 37] and [38] to develop an accurate ghost cell/level set technique for evolving interfaces whose normal velocity is given by the normal derivatives of solutions to linear and nonlinear quasi-steady reaction-diffusion equations with curvature-dependent boundary conditions. The technique is capable of describing complex morphologies evolving in heterogeneous domains. The algorithm involved several new developments, including a new ghost cell technique for accurately discretizing jumps in the normal derivative without smearing jumps in the tangential derivative, a new adaptive solver for linear and nonlinear quasi-steady reaction-diffusion problems (NAGSI), an adaptive normal vector discretization for interfaces in close contact, and an accurate discrete approximation to the Heaviside function.

We demonstrated the accuracy, efficiency, and capabilities of the method on a variety examples. For instance, we considered a model of solid tumor growth consisting of a fully nonlinear reaction-diffusion equation for the nutrient and a pressure equation that includes geometric boundary conditions. We solved the tumor system in a heterogeneous environment including complex structures (white matter, gray matter, cerebrospinal fluid, and bone), much like human brain tissue. We observed growth morphologies that were highly dependent upon the variations in the cellular mobility and the nutrient delivery–an effect observed in real tumor growth. The accuracy of the algorithm is a key step in the development of a new generation of predictive tumor growth models that can eventually lead to clinical applications. In future work, we will conduct a more thorough study of tumor growth in inhomogeneous tissue, investigate models of tumor-microenvironment coupling that include active remodeling of the tissue by the tumor [33], and study the effects of coupling tumor growth to complex models of angiogenesis with Alexander Anderson, Mark Chaplain, Steven McDougall, and Vittorio Cristini.

Acknowledgments

We thank the National Science Foundation Division of Mathematical Sciences and the UCI Department of Mathematics for their financial support. John Lowengrub is partially supported by the NIH grant P50GM76516 for a National Center of Excellence in Systems Biology at UCI. Paul Macklin was partially supported by a U.S. Department of Education GAANN (Graduate Assistance in Areas of National Need) fellowship.

We thank Alexander “Sandy” Anderson and Mark Chaplain at the University of Dundee, Steven McDougall at Heriot-Watt University, and Vittorio Cristini at the University of Texas Health Science Center in Houston for valuable discussions. We thank the University of Dundee and Heriot-Watt University for their gracious hospitality during numerous visits in 2006 and 2007.

Appendix: A Simple Numerical Heaviside Function

Given a discretized domain with grid points {xi}i=0m×{yj}j=0n and a function f defined on those node points, we wish to define a numerical Heaviside function (f) = Hi,j (f) on the computational node points which approximates the true Heaviside function

H(f)={0iff<0,1iff0 (92)

and such that

Hi,j(f)ΔxΔyxi12Δxxi+12Δxyj12Δyyj+12ΔyH(f(s,t))dsdt, (93)

i.e., the numerical Heaviside function approximates the percentage of the computational node centered at (xi, yj) that is occupied by the region {x : f(x) > 0}. We accomplish this by examining the value of f at (i, j) and the eight surrounding computational nodes:

Hi,j(f)=s=i1i+1t=j1j+1w|si|,|tj|H(fi,j), (94)

where the weights are given by the relative areas of the sub-grid sections in Fig. 12, and can be written as

Fig. 12.

Fig. 12

The weights w used for computing our numerical Heaviside function at a node (i, j)

wm,n=22mn16={116ifm=1andn=1,18ifm=1andn=0,18ifm=0andn=1,14ifm=0andn=0. (95)

See Fig. 12. For the function in the figure, Hi,j(f)=1116.

To study the accuracy of this numerical Heaviside function, we calculated the order of the convergence for third ghost cell method example in Sect. 4.1 using our discrete Heaviside function. For comparison, we also considered the Heaviside function from Sussman and Fatemi [51]

Hδ(f)={0iff<δ,12[1+fδ+1πsin(πfδ)]if|f|δ,1iff>δ, (96)

with δ = Δx, and the Heaviside function in recent work by Engquist et al. [14]:

Hδ(f)={0iffδ,12(1+fδ)if|f|<δ,1iffδ, (97)

where we used δ = Δx.

The results, given in Table 5, demonstrate approximately first-order convergence of the problem using the Sussman and Fatemi Heaviside function (left part of Table 5), slightly better than first-order convergence for the Engquist et al. Heaviside function (middle part of Table 5), and near-second-order convergence for our discrete Heaviside function (right part of Table 5). The key to this problem is the accurate approximation of the source term without smearing the integral of the source outside of the circle |x| ≤ 1. All three methods approximate the area of the circle to second-order accuracy (not shown), but only the discrete Heaviside approximation was designed to accurately approximate the area of the region locally as well as globally.

Table 5.

Convergence of a ghost cell problem using a Heaviside function, computed with the continuous approximation by Sussman and Fatemi in [51] (left), the continuous approxmation by Engquist et al. in [14] (middle), and our discrete Heaviside approximation (right)

Sussman and Fatemi [51] Engquist et al. [14] Discrete Heaviside function



Δx error Δx error Δx error
0.16 0.0269720 0.16 0.0307405 0.16 0.0401866
0.08 0.00776372 0.08 0.00843434 0.08 0.00830349
0.04 0.00671369 0.04 0.00598091 0.04 0.00312614
order 1.00 order 1.18 order 1.84

Contributor Information

Paul Macklin, Email: Paul.T.Macklin@uth.tmc.edu, SHIS, U. of Texas Health Science Center, 7000 Fannin, Suite 600, Houston, TX 77030, USA.

John S. Lowengrub, Email: lowengrub@math.uci.edu, Dept. of Mathematics, University of California, 103 MSTB, Irvine, CA 92697, USA

References

  • 1.Abbott RG, Forrest S, Pienta KJ. Simulating the hallmarks of cancer. Artif Life. 2006;12(4):617–634. doi: 10.1162/artl.2006.12.4.617. [DOI] [PubMed] [Google Scholar]
  • 2.Adalsteinsson D, Sethian JA. The fast construction of extension velocities in level set methods. J Comput Phys. 1999;148(1):2–22. doi: 10.1006/jcph.1998.6090. [DOI] [Google Scholar]
  • 3.Adam J. General aspects of modeling tumor growth and the immune response. In: Adam J, Bellomo N, editors. A Survey of Models on Tumor Immune Systems Dynamics. Birkhäuser; Boston: 1996. pp. 15–87. [Google Scholar]
  • 4.Ambrosi D, Preziosi L. On the closure of mass balance models for tumor growth. Math Models Methods Appl Sci. 2002;12(5):737–754. doi: 10.1142/S0218202502001878. [DOI] [Google Scholar]
  • 5.Anderson ARA, Weaver AM, Cummings PT, Quaranta V. Tumor morphology and phenotypic evolution driven by selective pressure from the microenvironment. Cell. 2006;127(5):905–915. doi: 10.1016/j.cell.2006.09.042. [DOI] [PubMed] [Google Scholar]
  • 6.Araujo RP, McElwain DLS. A history of the study of solid tumor growth: The contribution of mathematical modeling. Bull Math Biol. 2004;66(5):1039–1091. doi: 10.1016/j.bulm.2003.11.002. [DOI] [PubMed] [Google Scholar]
  • 7.Bellomo N, de Angelis E, Preziosi L. Multiscale modelling and mathematical problems related to tumor evolution and medical therapy. J Theor Med. 2003;5(2):111–136. doi: 10.1080/1027336042000288633. [DOI] [Google Scholar]
  • 8.Byrne H, Preziosi L. Modelling solid tumour growth using the theory of mixtures. Math Med Biol. 2003;20(4):341–366. doi: 10.1093/imammb/20.4.341. [DOI] [PubMed] [Google Scholar]
  • 9.Byrne HM, Alarcón T, Owen MR, Webb SD, Maini PK. Modeling aspects of cancer dynamics: A review. Philos Trans R Soc A. 2006;364(1843):1563–1578. doi: 10.1098/rsta.2006.1786. [DOI] [PubMed] [Google Scholar]
  • 10.Chaplain MAJ, Graziano L, Preziosi L. Mathematical modelling of the loss of tissue compression responsiveness and its role in solid tumour development. Math Med Biol. 2006;23(3):192–229. doi: 10.1093/imammb/dql009. [DOI] [PubMed] [Google Scholar]
  • 11.Chatterjee C, Chong EKP. Efficient algorithms for finding the centers of conics and quadrics in noisy data. Pattern Recogn. 1997;30(5):673–684. doi: 10.1016/S0031-3203(96)00122-7. [DOI] [Google Scholar]
  • 12.Cowles G, Martinelli L. Control theory based shape design for the incompressible Navier-Stokes equations. Int J Comput Fluid Dyn. 2003;17(6):499–514. doi: 10.1080/10618560310001614773. [DOI] [Google Scholar]
  • 13.Cristini V, Lowengrub JS, Nie Q. Nonlinear simulation of tumor growth. J Math Biol. 2003;46:191–224. doi: 10.1007/s00285-002-0174-6. [DOI] [PubMed] [Google Scholar]
  • 14.Engquist B, Tornberg AK, Tsai R. Discretization of Dirac delta functions in level set methods. J Comput Phys. 2005;207(1):28–51. doi: 10.1016/j.jcp.2004.09.018. [DOI] [Google Scholar]
  • 15.Fedkiw RP, Aslam T, Merriman B, Osher S. A non-oscillatory Eulerian approach to interfaces in multimaterial flows (the Ghost Fluid Method) J Comput Phys. 1999;152(2):457–492. doi: 10.1006/jcph.1999.6236. [DOI] [Google Scholar]
  • 16.Frieboes HB, Lowengrub JS, Wise S, Zheng X, Macklin P, Bearer EL, Cristini V. Computer simulation of glioma growth and morphology. Neuro Image. 2007;37(S1):S59–S70. doi: 10.1016/j.neuroimage.2007.03.008. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 17.Frieboes HB, Wise SM, Lowengrub JS, Cristini V. Three-dimensional diffuse-interface simulation of multispecies tumor growth-II: Investigation of tumor invasion. Bull Math Biol. 2008 in press. [Google Scholar]
  • 18.Galaris D, Barbouti A, Korantzopoulos P. Oxidative stress in hepatic ischemia-reperfusion injury: the role of antioxidants and iron chelating compounds. Curr Pharm Des. 2006;12(23):2875–2890. doi: 10.2174/138161206777947614. [DOI] [PubMed] [Google Scholar]
  • 19.Gibou F, Fedkiw R. A fourth order accurate discretization for the Laplace and heat equations on arbitrary domains, with applications to the Stefan problem. J Comput Phys. 2005;202(2):577–601. doi: 10.1016/j.jcp.2004.07.018. [DOI] [Google Scholar]
  • 20.Gibou F, Fedkiw R, Caflisch R, Osher S. A level set approach for the numerical simulation of dendritic growth. J Sci Comput. 2003;19(1–3):183–199. doi: 10.1023/A:1025399807998. [DOI] [Google Scholar]
  • 21.Gibou F, Fedkiw R, Cheng LT, Kang M. A second order accurate symmetric discretization of the Poisson equation on irregular domains. J Comput Phys. 2002;176(1):205–227. doi: 10.1006/jcph.2001.6977. [DOI] [Google Scholar]
  • 22.Glimm J, Marchesin D, McBryan O. A numerical-method for 2 phase flow with an unstable interface. J Comput Phys. 1981;39:179–200. doi: 10.1016/0021-9991(81)90144-3. [DOI] [Google Scholar]
  • 23.Gottlieb S, Shu CW. Total variation diminishing Runge–Kutta schemes. Math Comput. 1997;67(221):73–85. doi: 10.1090/S0025-5718-98-00913-2. [DOI] [Google Scholar]
  • 24.Gottlieb S, Shu CW, Tadmor E. Strong stability-preserving high-order time discretization methods. SIAM Rev. 2001;43(1):89–112. doi: 10.1137/S003614450036757X. [DOI] [Google Scholar]
  • 25.Hallett AH, Ma Y, Yin YP. Hybrid algorithms with automatic switching for solving nonlinear equation systems. J Econ Dyn Control. 1996;20(6):1051–1071. doi: 10.1016/0165-1889(95)00889-6. [DOI] [Google Scholar]
  • 26.Hogea CS, Murray BT, Sethian JA. Simulating complex tumor dynamics from avascular to vascular growth using a general level-set method. J Math Biol. 2006;53(1):86–134. doi: 10.1007/s00285-006-0378-2. [DOI] [PubMed] [Google Scholar]
  • 27.Jiang GS, Peng D. Weighted ENO schemes for Hamilton-Jacobi equations. SIAM J Sci Comput. 2000;21(6):2126–2143. doi: 10.1137/S106482759732455X. [DOI] [Google Scholar]
  • 28.Jiang GS, Shu CW. Efficient implementation of weighted ENO schemes. J Comput Phys. 1996;126(2):202–228. doi: 10.1006/jcph.1996.0130. [DOI] [Google Scholar]
  • 29.Kloner RA, Jennings RB. Consequences of brief ischemia: stunning, preconditioning, and their clinical implications: part 1. Circulation. 2001;104(24):2981–2989. doi: 10.1161/hc4801.100038. [DOI] [PubMed] [Google Scholar]
  • 30.LeVeque RJ, Li Z. The immersed interface method for elliptic equations with discontinuous coefficients and singular sources. SIAM J Numer Anal. 1994;31(4):1019–1044. doi: 10.1137/0731054. [DOI] [Google Scholar]
  • 31.Lin PT, Baker TJ, Martinelli L, Jameson A. Two-dimensional implicit time-dependent calculations on adaptive unstructured meshes with time evolving boundaries. Int J Numer Methods Fluids. 2006;50(2):199–218. doi: 10.1002/fld.1050. [DOI] [Google Scholar]
  • 32.Liu XD, Fedkiw R, Kang M. A boundary condition capturing method for Poisson's equation on irregular domains. J Comput Phys. 2000;160(1):151–178. doi: 10.1006/jcph.2000.6444. [DOI] [Google Scholar]
  • 33.Lowengrub JS, Macklin P. A centimeter-scale nonlinear model of tumor growth in complex, heterogeneous tissues. J Math Biol. 2008 in press. [Google Scholar]
  • 34.Macklin P. MS thesis. University of Minnesota School of Mathematics; 2003. Numerical simulation of tumor growth and chemotherapy. [Google Scholar]
  • 35.Macklin P. PhD dissertation. University of California, Irvine Department of Mathematics; 2007. Toward computational oncology: nonlinear simulation of centimeter-scale tumor growth in complex, heterogeneous tissues. [Google Scholar]
  • 36.Macklin P, Lowengrub JS. Evolving interfaces via gradients of geometry-dependent interior Poisson problems: application to tumor growth. J Comput Phys. 2005;203(1):191–220. doi: 10.1016/j.jcp.2004.08.010. [DOI] [Google Scholar]
  • 37.Macklin P, Lowengrub JS. An improved geometry-aware curvature discretization for level set methods: application to tumor growth. J Comput Phys. 2006;215(2):392–401. doi: 10.1016/j.jcp.2005.11.016. [DOI] [Google Scholar]
  • 38.Macklin P, Lowengrub JS. Nonlinear simulation of the effect of microenvironment on tumor growth. J Theor Biol. 2007;245(4):677–704. doi: 10.1016/j.jtbi.2006.12.004. [DOI] [PubMed] [Google Scholar]
  • 39.Macklin P, McDougall S, Anderson ARA, Chaplain MAJ, Cristini V, Lowengrub JS. Multi-scale modelling and nonlinear simulation of vascular tumour growth. J Math Biol. 2008 doi: 10.1007/s00285-008-0216-9. in press. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 40.Malladi R, Sethian JA, Vemuri BC. A fast level set based algorithm for topology-independent shape modeling. J Math Imaging Vis. 1996;6(2–3):269–289. doi: 10.1007/BF00119843. [DOI] [Google Scholar]
  • 41.McMullen MS, Jameson A. The computational efficiency of non-linear frequency domain methods. J Comput Phys. 2006;212(2):637–661. doi: 10.1016/j.jcp.2005.07.021. [DOI] [Google Scholar]
  • 42.Osher S, Fedkiw R. Level set methods: An overview and some recent results. J Comput Phys. 2001;169(2):463–502. doi: 10.1006/jcph.2000.6636. [DOI] [Google Scholar]
  • 43.Osher S, Fedkiw R. Level Set Methods and Dynamic Implicit Surfaces. Springer; New York: 2002. [Google Scholar]
  • 44.Osher S, Sethian JA. Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-Jacobi formulations. J Comput Phys. 1988;79(1):12–49. doi: 10.1016/0021-9991(88)90002-2. [DOI] [Google Scholar]
  • 45.Peng D, Merriman B, Osher S, Zhao H, Kang M. A PDE-Based fast local level set method. J Comput Phys. 1999;155(2):410–438. doi: 10.1006/jcph.1999.6345. [DOI] [Google Scholar]
  • 46.Quaranta V, Weaver AM, Cummings PT, Anderson ARA. Mathematical modeling of cancer: The future of prognosis and treatment. Clin Chim Acta. 2005;357(2):173–179. doi: 10.1016/j.cccn.2005.03.023. [DOI] [PubMed] [Google Scholar]
  • 47.Sanga S, Sinek JP, Frieboes HB, Fruehauf JP, Cristini V. Mathematical modeling of cancer progression and response to chemotherapy. Expert Rev Anticancer Ther. 2006;6(10):1361–1376. doi: 10.1586/14737140.6.10.1361. [DOI] [PubMed] [Google Scholar]
  • 48.Sethian JA. Level Set Methods and Fast Marching Methods. Cambridge University Press; Cambridge: 1999. [Google Scholar]
  • 49.Sethian JA, Smereka P. Level set methods for fluid interfaces. Annu Rev Fluid Mech. 2003;35(1):341–372. doi: 10.1146/annurev.fluid.35.101101.161105. [DOI] [Google Scholar]
  • 50.Sleijpen GLG, van der Vorst HA, Fokkema DR. Bicgstab(ℓ) and other hybrid Bi-CG methods. Numer Algorithms. 1994;1(7):75–109. doi: 10.1007/BF02141261. [DOI] [Google Scholar]
  • 51.Sussman M, Fatemi E. An efficient, interface preserving level set re-distancing algorithm and its application to interfacial incompressible fluid flow. SIAM J Sci Comput. 1999;20(4):1165–1191. doi: 10.1137/S1064827596298245. [DOI] [Google Scholar]
  • 52.Vrahatis MN, Magoulas GD, Plagianakos VP. From linear to nonlinear iterative methods. Appl Numer Math. 2003;45(1):59–77. doi: 10.1016/S0168-9274(02)00235-0. [DOI] [Google Scholar]
  • 53.Wise SM, Lowengrub JS, Frieboes HB, Cristini V. Nonlinear simulation of three-dimensional multispecies tumor growth-I: Model and numerical method. J Theor Biol. 2008 doi: 10.1016/j.jtbi.2008.03.027. to appear. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 54.Yu S, Zhou Y, Wei GW. Matched interface and boundary (MIB) method for elliptic problems with sharp-edged interfaces. J Comput Phys. 2007 doi: 10.1016/j.jcp.2006.10.030. [DOI] [Google Scholar]
  • 55.Zhao HK, Chan T, Merriman B, Osher S. A variational level set approach to multiphase motion. J Comput Phys. 1996;127(1):179–195. doi: 10.1006/jcph.1996.0167. [DOI] [Google Scholar]
  • 56.Zheng X, Wise SM, Cristini V. Nonlinear simulation of tumor necrosis, neo-vascularization and tissue invasion via an adaptive finite-element/level set method. Bull Math Biol. 2005;67(2):211–259. doi: 10.1016/j.bulm.2004.08.001. [DOI] [PubMed] [Google Scholar]
  • 57.Zhou YC, Wei GW. On the ficticious-domain and interpolation formulations of the matched interface and boundary (MIB) method. J Comput Phys. 2006;219(1):228–246. doi: 10.1016/j.jcp.2006.03.027. [DOI] [Google Scholar]
  • 58.Zhou YC, Zhao S, Feig M, Wei GW. High order matched interface and boundary method for elliptic equations with discontinuous coefficients and singular sources. J Comput Phys. 2006;213(1):1–30. doi: 10.1016/j.jcp.2005.07.022. [DOI] [Google Scholar]

RESOURCES