FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and...

30
SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING OF G-NI SPECTRAL METHODS CLAUDIO CANUTO , PAOLA GERVASIO , AND ALFIO QUARTERONI § Abstract. Several old and new finite-element preconditioners for nodal-based spectral discretiza- tions of Δu = f in the domain Ω = (1, 1) d (d = 2 or 3), with Dirichlet or Neumann boundary conditions, are considered and compared in terms of both condition number and computational effi- ciency. The computational domain covers the case of classical single-domain spectral approximations (see [C. Canuto et al., Spectral Methods. Fundamentals in Single Domains, Springer, Heidelberg, 2006]), as well as that of more general spectral-element methods in which the preconditioners are ex- pressed in terms of local (upon every element) algebraic solvers. The primal spectral approximation is based on the Galerkin approach with numerical integration (G-NI) at the Legendre–Gauss–Lobatto (LGL) nodes in the domain. The preconditioning matrices rely on either P 1 , Q 1 , or Q 1,NI (i.e., with numerical integration) finite elements on meshes whose vertices coincide with the LGL nodes used for the spectral approximation. The analysis highlights certain preconditioners, which yield the solution at an overall cost proportional to N d+1 , where N denotes the polynomial degree in each direction. Key words. spectral method, finite elements, preconditioned iterative methods, elliptic equations AMS subject classifications. 65F10, 65N35 DOI. 10.1137/090746367 1. Introduction. Spectral methods are currently recognized as among the fun- damental successful strategies for numerically solving partial differential equations. Their distinguishing feature is the intrinsic ability to yield a high rate of convergence (even exponentially fast) for smooth solutions. Their potential drawback arises from the severe condition number (higher than those of the corresponding finite-element or finite-difference matrices, for instance) of the associated algebraic system. This fact has called, over the years, for the development of ad hoc preconditioning strategies. In this regard, a major conceptual breakthrough for preconditioning nodal-based spec- tral methods has been the intuition (early pursued by Orszag [22], Deville and Mund [13], and Canuto and Quarteroni [8]) of using lower-order approximation matrices (those of finite differences or finite elements) built up on the same grid involved in the spectral discretization. Orszag considered the matrix arising from the Fourier or Chebyshev collocation approximation of the Laplace operator with or without periodic boundary condi- tions; he proposed to precondition it by the second-order finite-difference matrix built up on the same collocation grid. Successively, Canuto and Quarteroni extended the finite-difference preconditioner to the variable-coefficients differential operator Lu = −∇· (ν (x)u)+α(x)u with Dirichlet boundary conditions; moreover, they intro- duced a bilinear Lagrange finite-element preconditioner. Independently, Deville and Received by the editors January 12, 2009; accepted for publication (in revised form) October 27, 2009; published electronically January 15, 2010. http://www.siam.org/journals/sisc/31-6/74636.html Department of Mathematics, Politecnico di Torino, 10129 Torino, Italy ([email protected]. it). Department of Mathematics, University of Brescia, 25133 Brescia, Italy ([email protected]). § Laboratory of Modeling and Scientific Computing (MOX), Department of Mathematics, Po- litecnico di Milano, 20133 Milan, Italy, and CMCS-EPFL, CH-1015 Lausanne, Switzerland (alfio. quarteroni@epfl.ch). 4422

Transcript of FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and...

Page 1: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

SIAM J. SCI. COMPUT. c© 2010 Society for Industrial and Applied MathematicsVol. 31, No. 6, pp. 4422–4451

FINITE-ELEMENT PRECONDITIONING OF G-NI SPECTRALMETHODS∗

CLAUDIO CANUTO† , PAOLA GERVASIO‡ , AND ALFIO QUARTERONI§

Abstract. Several old and new finite-element preconditioners for nodal-based spectral discretiza-tions of −Δu = f in the domain Ω = (−1, 1)d (d = 2 or 3), with Dirichlet or Neumann boundaryconditions, are considered and compared in terms of both condition number and computational effi-ciency. The computational domain covers the case of classical single-domain spectral approximations(see [C. Canuto et al., Spectral Methods. Fundamentals in Single Domains, Springer, Heidelberg,2006]), as well as that of more general spectral-element methods in which the preconditioners are ex-pressed in terms of local (upon every element) algebraic solvers. The primal spectral approximationis based on the Galerkin approach with numerical integration (G-NI) at the Legendre–Gauss–Lobatto(LGL) nodes in the domain. The preconditioning matrices rely on either P1, Q1, or Q1,NI (i.e., withnumerical integration) finite elements on meshes whose vertices coincide with the LGL nodes used forthe spectral approximation. The analysis highlights certain preconditioners, which yield the solutionat an overall cost proportional to Nd+1, where N denotes the polynomial degree in each direction.

Key words. spectral method, finite elements, preconditioned iterative methods, ellipticequations

AMS subject classifications. 65F10, 65N35

DOI. 10.1137/090746367

1. Introduction. Spectral methods are currently recognized as among the fun-damental successful strategies for numerically solving partial differential equations.Their distinguishing feature is the intrinsic ability to yield a high rate of convergence(even exponentially fast) for smooth solutions. Their potential drawback arises fromthe severe condition number (higher than those of the corresponding finite-element orfinite-difference matrices, for instance) of the associated algebraic system. This facthas called, over the years, for the development of ad hoc preconditioning strategies. Inthis regard, a major conceptual breakthrough for preconditioning nodal-based spec-tral methods has been the intuition (early pursued by Orszag [22], Deville and Mund[13], and Canuto and Quarteroni [8]) of using lower-order approximation matrices(those of finite differences or finite elements) built up on the same grid involved inthe spectral discretization.

Orszag considered the matrix arising from the Fourier or Chebyshev collocationapproximation of the Laplace operator with or without periodic boundary condi-tions; he proposed to precondition it by the second-order finite-difference matrix builtup on the same collocation grid. Successively, Canuto and Quarteroni extendedthe finite-difference preconditioner to the variable-coefficients differential operatorLu = −∇·(ν(x)∇u)+α(x)u with Dirichlet boundary conditions; moreover, they intro-duced a bilinear Lagrange finite-element preconditioner. Independently, Deville and

∗Received by the editors January 12, 2009; accepted for publication (in revised form) October 27,2009; published electronically January 15, 2010.

http://www.siam.org/journals/sisc/31-6/74636.html†Department of Mathematics, Politecnico di Torino, 10129 Torino, Italy ([email protected].

it).‡Department of Mathematics, University of Brescia, 25133 Brescia, Italy ([email protected]).§Laboratory of Modeling and Scientific Computing (MOX), Department of Mathematics, Po-

litecnico di Milano, 20133 Milan, Italy, and CMCS-EPFL, CH-1015 Lausanne, Switzerland ([email protected]).

4422

Page 2: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4423

Mund proposed to precondition the Chebyshev collocation matrix by either bilinearor biquadratic Lagrange finite elements, as well as by bicubic Hermite elements. Theyinvestigated the efficiency of such preconditioners and deduced that bilinear Lagrangeelements produced spectral accuracy with the minimum computational work. In thesuccessive paper [14], Deville and Mund analyzed the spectrum of the Chebyshev col-location matrix when preconditioned by finite differences, Lagrange or Hermite finiteelements, versus the variation of both boundary conditions and operator coefficients.In [26], Quarteroni and Zampieri proposed and investigated a bilinear finite-elementpreconditioner for the matrix arising from a Galerkin discrete variational formulationof the Laplace equation with either Neumann or Dirichlet boundary conditions; theuse of numerical integration based on the Legendre–Gauss–Lobatto grid yields theequivalence of the Galerkin (or weak) approach with the collocation (or strong) ap-proach, up to a multiplication by a diagonal matrix coinciding with the spectral massmatrix. The use of Legendre expansions instead of Chebyshev ones permits the formu-lation of spectral methods in a weak form, an alternative to the strong one, yieldinggreater generality and flexibility. Indeed, the weak Legendre formulation prevailedover strong forms, and various preconditioners based on either linear (P1) or bilinear(Q1) finite elements were used also inside multidomain strategies (see, e.g., [18, 9]).

What follows is a brief account on known theoretical results for the above-mentioned preconditioners on the Laplace operator. Orszag [22] proved that thecondition number of the Fourier collocation matrix (for periodic boundary condi-tions) preconditioned by finite differences is bounded by π2/4. The same result wasestablished by Haldenwang et al. [20] for the Chebyshev collocation case. Canuto [6]and Parter and Rothman [25] proved the so-called finite-element–spectral equivalence(sometimes referred to as the FEM-SEM equivalence) in both L2- and H1-normsfor univariate functions; in particular, the equivalence in the H1-norm states thatthe linear finite-element stiffness matrix built on the Legendre–Gauss–Lobatto grid isspectrally equivalent to the nodal-based Legendre Galerkin stiffness matrix. Thanksto the tensorial structure of interpolation operators, such results are easily extendedto multivariate functions for multilinear (Q1) finite elements. Moreover, Parter andRothman [25] also proved the equivalence for P1 elements in two dimensions. Fi-nally, Parter [23, 24] investigated the preconditioning of the Legendre collocation (orstrong) spectral matrix by both bilinear finite elements and finite differences, and heproved that the eigenvalues of the preconditioned matrices are bounded in modulusindependently of N .

In this paper we further elaborate on this algorithmic and theoretical pathway.First, we propose several new kinds of preconditioners and analyze their theoreticalbehavior. Next, we extensively investigate their numerical performance and com-pare it with those of already existing preconditioners. More specifically, in additionto classical P1 and Q1 finite-element preconditioners, we consider a number of pre-conditioners based on Q1 finite elements with numerical integration. We distinguishbetween strong and weak forms of the reference differential problem, and we adaptfinite-element preconditioners to both forms. Moreover, since strong forms are notsymmetric, to allow for the use of the conjugate-gradient algorithm, we also proposesymmetrized-strong versions of such preconditioners.

A careful numerical investigation, supported in many cases by theoretical proofs,shows that all preconditioners considered in this paper are spectrally equivalent tothe corresponding Legendre spectral matrices. The inspection of the condition num-bers of the preconditioned matrices indicates that the preconditioner based on the

Page 3: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4424 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

Q1 approach for the strong form gives the smallest condition number. However, ifwe measure preconditioner efficiency in terms of CPU-time, the best performance isobtained by the preconditioners based on the Q1 approach with numerical integration,for both 2D and 3D (two- and three-dimensional) geometries. Symmetrized-strongpreconditioners show very good theoretical properties, i.e., their iterative conditionnumbers are very small, yet they are not efficient from the computational point of viewdue to the higher cost of each iteration. Finally, we have considered three differentalgebraic solvers to compute the preconditioned residual at each conjugate-gradientiteration: the classical Cholesky factorization, a multifrontal method with nested dis-section ordering, and a preconditioned conjugate-gradient with inexact factorization.The computational performances of each of these solvers have been carefully measuredand compared.

Our analysis will concern the case of a reference computational domain, a squarein 2D, a cube in 3D. This choice has a twofold motivation. On the one hand, spec-tral methods are still widely used nowadays to approximate (initial-) boundary-valueproblems in a single domain (see [7]): the latter is either the reference hypercubeΩ = (−1, 1)d (d = 2, 3) or another domain Ωs that can be mapped into Ω by aninvertible regular map Fs : Ωs → Ω. On the other hand, our results may also be ofinterest in the framework of spectral element methods (SEMs). The latter are set upon a computational domain Ω, possibly featuring a complex shape, that is split intosmaller subdomains, say Ωm, m = 1, . . . ,M , which may or may not overlap. In thiscontext, domain decomposition preconditioners are typically built upon an additivesum of local terms, which involve restriction and prolongation matrices and local al-gebraic solvers on each subdomain, say, for the sake of conciseness,

∑mRmA

−1m Rm.

The solution of the local systems Amwm = rm on each subdomain Ωm must thereforebe efficiently addressed by either direct factorization algorithms (in the case wherethe size of local matrices is moderate) or preconditioned iterative algorithms. Thelatter can benefit from the preconditioning strategies developed in this paper on thereference domain Ω.

We remark that, even if the focus of the paper is on using FEM low-order dis-cretizations as preconditioners for nodal-based spectral discretizations, many alterna-tive choices are possible in the context of modal-based methods, e.g., those based onmultigrid and multilevel techniques [4, 5].

An outline of the paper is as follows. In section 2 we review both spectral andfinite-element discretizations of the Laplace problem. In section 3 we introduce allthe preconditioners discussed in the paper. In section 4 we theoretically analyze theiterative condition numbers of all the weak forms and of those strong forms based onboth Q1 and Q1 with numerical integration approaches. We also briefly consider thecase of variable diffusion coefficient and Neumann boundary conditions. In section 5we introduce the algebraic solvers for computing the preconditioned residuals, and wereport a detailed analysis of the computational costs of all possible strategies.

2. Galerkin-numerical integration and finite-element matrices. We firstconsider the homogeneous Dirichlet boundary-value problem

(2.1) −Δu = f in Ω = (−1, 1)d, u = 0 on ∂Ω,

where d = 1, 2, 3 and f ∈ C0(Ω). Other boundary conditions will be discussed lateron.

The Legendre Galerkin–numerical integration (G-NI) discretization of this prob-lem consists of finding a polynomial u

Nin Q0

N(Ω) (the space of the algebraic polyno-

Page 4: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4425

mials of degree ≤ N in each direction, vanishing on ∂Ω) satisfying

(2.2) (∇uN,∇v

N)N = (f, v

N)N for all v

N∈ Q0

N (Ω),

where (·, ·)N denotes the d-dimensional Legendre–Gauss–Lobatto (LGL) discrete innerproduct in Ω; it can be written as

(2.3) (u, v)N =

(N−1)d∑j=1

u(xj)v(xj)wj , u, v ∈ Q0N(Ω),

where xj (for j = 1, . . . , (N −1)d) denote the (N −1)d interior LGL nodes (numberedin lexicographical order) and wj are the corresponding weights (see [7, sect. 2.2]).

The algebraic system corresponding to (2.2) reads

(2.4) KGNI

u =MGNI

f ,

where u and f are the vectors whose components are the values of uN

and f at xj .Correspondingly, ψj (for j = 1, . . . , (N − 1)d) will denote the characteristic Lagrangepolynomial at xj , defined by the conditions ψj ∈ Q0

N(Ω) and ψj(xk) = δjk for allk = 1, . . . , (N − 1)d. Thus, the symmetric positive-definite (s.p.d.) stiffness and massmatrices KGNI and MGNI are defined as

(KGNI

)ij = (∇ψj ,∇ψi)N , (MGNI

)ij = (ψj , ψi)N ,(2.5)

for i, j = 1, . . . , (N − 1)d. While the algebraic system (2.4) corresponds to the dis-cretization of the weak form of (2.1), the linear system

(2.6) M−1GNI

KGNIu = f

corresponds to the discretization of (2.1) by the collocation approach (see [7, 3]), alsoreferred to as the strong form. In view of an efficient iterative solution, system (2.6)can be equivalently written in symmetric form as

(2.7) (M−1/2GNI

KGNI

M−1/2GNI

)(M1/2GNI

u) =M1/2GNI

f ,

where, given any s.p.d. matrix B, B1/2 denotes its square root, i.e., the matrix suchthat B1/2B1/2 = B, while B−1/2 is a shorthand notation for (B1/2)−1. System (2.7)will be referred to as the symmetrized-strong form.

We will write systems (2.4), (2.6), and (2.7) in the general form

(2.8) Lu = f ,

where, for v = u or f , the symbol v means v in both (2.4) and (2.6), while it standsfor M1/2

GNIv in (2.7).

The stiffness matrix KGNI is structured with lower and upper bandwidth equalto nb = (N − 1)d−1(N − 2); the total number of its nonzero elements is about nz =d ·N (d+1). Thanks to the orthogonality of Lagrange basis functions ψj in the discreteinner product (·, ·)N , the mass matrix MGNI is diagonal.

The extremal eigenvalues of KGNI

and MGNI

satisfy the following estimates[3, 21, 7],

λmin(KGNI) � N−2 , λmax(KGNI

) � N ,λmin(MGNI ) � N−2 , λmax(MGNI ) � N−1 ,

(2.9)

Page 5: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4426 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

R TTT

a b c d

Figure 2.1. Finite elements in Ω induced by the 2D LGL grid. (a) Q1, (b) P1 with all trianglesoriented in the same way, (c) P1 with alternating orientation, (d) P1 with random orientation.

and this yields

(2.10) K(KGNI

) � N3, K(M−1GNI

KGNI

) = K(M−1/2GNI

KGNI

M−1/2GNI

) � N4,

where K(A) := maxi λi(A)/mini λi(A) is the so-called iterative condition number ofany matrix A similar to an s.p.d. matrix.

The matrix M−1GNI

KGNI

is similar to an s.p.d. matrix since both MGNI

and

KGNI

are s.p.d. matrices. Moreover, M−1/2GNI

KGNI

M−1/2GNI

is symmetric and similarto M−1

GNIK

GNI.

It is well known (see, e.g., Figure 4.46 in [7]) that the solution of (2.8) by adirect method is efficient only for very small values of N (on the order of 10). Forlarger systems, preconditioned iterative techniques should be preferred. Among them,algebraic preconditioners, such as those based on the diagonal or the incompleteCholesky factorization of the stiffness matrix, yield iterative condition numbers of thepreconditioned matrix which grow linearly with respect to N (see Figures 4.44–4.45in [7]). On the other hand, preconditioners based on the sparse matrices generated bylow-order finite-element discretizations on the Gauss-Lobatto grid may yield iterativecondition numbers not only independent of N but also extremely small (close tounity).

In what follows, we will carry on a thorough comparative investigation of theperformances of several finite-element preconditioners; each of them is inspired by oneof the weak, strong, or symmetrized-strong forms, (2.4), (2.6), or (2.7), introducedabove.

The finite-element matrices we are going to consider are built on the partition (ormesh) of Ω = [−1, 1]d, made of all the rectangles in two or parallelepipeds in threedimensions (in general, d-intervals denoted by R) whose vertices are two consecutiveLGL nodes in each direction (see Figure 2.1(a)). On such a mesh, piecewise d-linearshape functions are defined, yielding Q1 finite elements. Alternatively, one can buildthe finite-element preconditioners on the mesh of Ω made of triangles or tetrahedra(in general, simplices denoted by T ), still with vertices at the LGL nodes (see Fig-ures 2.1(b)–(d) and 2.2), corresponding to P1 finite elements. In 2D geometries, twotriangles T are obtained by splitting each rectangle R by one of its diagonals; wedistinguish among uniformly oriented meshes as in Figure 2.1(b), alternating meshesas in Figure 2.1(c), and random meshes as in Figure 2.1(d). When Ω ⊂ R3, we haveconsidered two splittings of a hexahedron into tetrahedra, with five or six elements, asshown in the left or right portions of Figure 2.2, respectively. The latter choice allowsus to put side by side hexahedra with the same internal splitting, leading to a globallyuniformly oriented mesh. The former choice requires two adjacent hexahedra to have

Page 6: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4427

Figure 2.2. At left (resp., right), two adjacent hexahedra, each of them partitioned into five(resp., six) tetrahedra, which have two consecutive LGL nodes (in each direction) as vertices.

complementary splittings which reflect into each other across the common interface;they generate a global alternating mesh.

Let ϕj (with j = 1, . . . , (N − 1)d) denote the Q1 finite-element characteristicLagrange function at an interior xj , i.e., the globally continuous, piecewise d-linearfunction in eachR, vanishing on ∂Ω, such that ϕj(xk) = δjk for all k = 1, . . . , (N−1)d.The associated finite-element stiffness matrix KQ1 is defined by

(2.11) (KQ1)ij = (∇ϕj ,∇ϕi), i, j = 1, . . . , (N − 1)d ,

where (·, ·) denotes the standard L2-inner product in Ω. We will also consider itsnumerical approximation KQ1,NI , defined by

(2.12) (KQ1,NI )ij =∑R

∫R

Π1,R(∇ϕTj ∇ϕi) dx, i, j = 1, . . . , (N − 1)d,

where Π1,R(g) denotes the d-linear interpolant of a function g at the vertices of R;this corresponds to using the trapezoidal numerical integration formula in each R.The finite-element mass matrix MQ1 is defined by

(2.13) (MQ1)ij = (ϕj , ϕi), i, j = 1, . . . , (N − 1)d,

and its diagonal approximation is the lumped mass matrix MQ1,NI , defined by

(2.14) (MQ1,NI )ij =∑R

∫R

Π1,R(ϕjϕi) dx, i, j = 1, . . . , (N − 1)d.

We note that KQ1 = KQ1,NI when d = 1, thanks to the exactness of the trapezoidalrule for linear functions. In contrast, MQ1 �=MQ1,NI for d = 1, 2, 3.

Finally, for d = 2, 3 and a simplicial mesh in Ω, let ϕj denote the P1 finite-element characteristic Lagrange function at interior xj , i.e., the globally continuous,piecewise linear function in each T , vanishing on ∂Ω, such that ϕj(xk) = δjk for allk = 1, . . . , (N − 1)d. The resulting stiffness and mass matrices are

(2.15) (KP1)ij = (∇ϕj ,∇ϕi), (MP1)ij = (ϕj , ϕi), for i, j = 1, . . . , (N − 1)d.

Remark 1. Since the computational domain Ω ⊂ R2 is a rectangle, the stiffnessmatrices KQ1,NI and KP1 coincide independently of the orientation of the trianglesof the mesh, as can be checked in a straightforward manner. Moreover, denoting byLFD the classic five-point centered finite-difference Laplace approximation matrix,the identity LFD =M−1

Q1,NIKQ1,NI holds.

Page 7: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4428 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

The matrix KFE

, chosen among KQ1 , KQ1,NI , and KP1 , may be used to pre-condition system (2.4) in weak form; the matrix M−1

FEKFE , with MFE chosen among

MQ1 , MQ1,NI , and MP1 , may be invoked to precondition system (2.6) in strong form;while the matrix M−1/2

FEK

FEM−1/2

FEmay be useful to precondition system (2.7) in

symmetrized-strong form.We introduce the space QN(Ω) of algebraic polynomials defined on Ω, of degree

≤ N in each direction (a possible basis for QN is given by the characteristic Lagrangefunctions ψj associated with all nodes of the LGL grid); the space Vh of continuousfunctions on Ω which are d-linear on each d-interval R induced by the LGL mesh ofΩ (the functions ϕj associated with all nodes of the LGL grid form a basis for Vh);and the space Wh of continuous functions on Ω which are linear on each simplex Tinduced by the LGL mesh of Ω (the functions ϕj associated with all nodes of theLGL grid form a basis for Wh). V

0h and W 0

h will denote the subspaces of Vh and Wh,respectively, of vanishing functions at the boundary ∂Ω.

For any vN

∈ QN (Ω) we denote by vh ∈ Vh the continuous piecewise d-linearinterpolation of v

Nat LGL nodes. It is well known [6, 25] that v

Nand vh are linked

together by an algebraic interpolation isomorphism. Moreover, for d = 2, 3 and for anyvN ∈ QN (Ω) we will denote by wh ∈Wh the continuous piecewise linear interpolationof v

Nat LGL nodes. Even if, for any given N , the nodes of the mesh in Ω are uniquely

defined, the mesh of simplexes T is not, as we have discussed above. This impliesthat wh will depend on the mesh chosen. For a fixed mesh, wh and vN (and then alsowh and vh) are linked together by an algebraic interpolation isomorphism.

For any N ≥ 2, given vN∈ Q0

N(Ω) (or equivalently either vh ∈ V 0h or wh ∈ W 0

h ),

v ∈ R(N−1)d will be the array whose components are the values vN (xj) = vh(xj) =wh(xj) at the interior LGL nodes xj .

3. Preconditioners. The finite-element matrices introduced above can be suit-ably combined to produce preconditioned matrices and systems in order to solve (2.8).We will denote by H any preconditioning matrix for the spectral matrix L which ap-pears in (2.8), so that the corresponding (left) preconditioned system will be

(3.1) H−1Lu = H−1f .

In what follows we will set P = H−1L.We have considered eleven possible expressions for P , which, for the reader’s

convenience, are listed in Table 3.1. (A subset of these combinations was alreadyreported in [7].) Three preconditioned matrices, named Pw

Q1, Pw

Q1,NI, and Pw

P1, are

based on the weak form (2.4); three others, named P sQ1, P s

Q1,NI, and P s

P1, are based

on the strong form (2.6); finally, five preconditioners, named P ss,rtQ1

, P ss,chQ1

, P ss,rtQ1,NI

,

P ss,chP1

, and P ss,rtP1

, are symmetrized forms of the previous strong preconditioners. In

particular, P ss,rtQ1

and P ss,chQ1

are two symmetrized version of P sQ1, which differ from

each other in the computation of (MQ1)−1/2, as we are going to explain.

For any s.p.d. matrix B, its square root B1/2 can be expressed as B1/2 =WΛ1/2WT , where Λ and W denote, respectively, the matrices of eigenvalues andeigenvectors of B. The matrix P ss,rt

Q1is defined starting from the square root of M−1

Q1,

computed in this way. However, when the computation of both Λ and W becomestoo expensive, as an alternative to diagonalization, one can employ the Choleskydecomposition of B, namely B = BChB

TCh, with BCh lower triangular; then, BCh

replaces B1/2. The matrix P ss,chQ1

is defined accordingly. The matrix P ss,rtQ1,NI

is thesymmetrized version of P s

Q1,NI(in this case MQ1,NI is diagonal with positive entries

Page 8: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4429Table3.1

Preconditioned

matrices

andassociatedtransform

edlinearsystem

sPu=

ffor(2.4)and(2.6)( w

ithB

−T

=(B

T)−

1) .

P=H

−1L

H(preconditioner)

L(spectralmatrix)

uf

(3.2)

Pw Q1

KQ

1K

GN

Iu

MG

NIf

(3.3)

Ps Q1

(MQ

1)−

1K

Q1

(MG

NI)−

1K

GN

Iu

f(3.4)

Pw Q1, N

IK

Q1, N

IK

GN

Iu

MG

NIf

(3.5)

Ps Q1, N

I(M

Q1, N

I)−

1K

Q1, N

I(M

GN

I)−

1K

GN

Iu

f(3.6)

Pss,rt

Q1

(MQ

1)−

1/2K

Q1(M

Q1)−

1/2

(MG

NI)−

1/2K

GN

I(M

GN

I)−

1/2

(MG

NI)1

/2u

(MG

NI)1

/2f

(3.7)

Pss,ch

Q1

(MQ

1, C

h)−

1K

Q1(M

Q1, C

h)−

T(M

GN

I)−

1/2K

GN

I(M

GN

I)−

1/2

(MG

NI)1

/2u

(MG

NI)1

/2f

(3.8)

Pss,rt

Q1, N

I(M

Q1, N

I)−

1/2K

Q1, N

I(M

Q1, N

I)−

1/2

(MG

NI)−

1/2K

GN

I(M

GN

I)−

1/2

(MG

NI)1

/2u

(MG

NI)1

/2f

(3.9)

Pw P1

KP1

KG

NI

uM

GN

If

(3.10)

Ps P1

(MP1)−

1K

P1

(MG

NI)−

1K

GN

Iu

f(3.11)

Pss,rt

P1

(MP1)−

1/2K

P1(M

P1)−

1/2

(MG

NI)−

1/2K

GN

I(M

GN

I)−

1/2

(MG

NI)1

/2u

(MG

NI)1

/2f

(3.12)

Pss,ch

P1

(MP1, C

h)−

1K

P1(M

P1, C

h)−

T(M

GN

I)−

1/2K

GN

I(M

GN

I)−

1/2

(MG

NI)1

/2u

(MG

NI)1

/2f

(3.13)

Page 9: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4430 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

and (M−1/2Q1,NI

)ii = (M−1Q1,NI

)1/2ii ), while P ss,rt

P1and P ss,ch

P1are symmetrized versions

of P sP1

(again based either on the square root or the Cholesky factor of (MP1)−1,

respectively).

4. Condition number analysis. We first examine the iterative condition num-ber of all the preconditioned matrices defined in (3.3)–(3.13). In order to simplify theexposition, matrices Pw

Q1, Pw

Q1,NI, and Pw

P1will be referred to as weak matrices ; P s

Q1,

P sQ1,NI

, and P sP1

as strong matrices ; and P ss,rtQ1

, P ss,chQ1

, P ss,rtQ1,NI

, P ss,rtP1

, and P ss,chP1

assymmetrized-strong matrices.

In the following subsections, we review the theoretical results concerning weakand strong matrices. The symmetrized-strong matrices are similar to s.p.d. matrices;hence their eigenvalues are all real positive. No other theoretical result is available sofar, so we refer to section 4.3 for numerical results.

4.1. Weak matrices. We begin by considering weak matrices. PwQ1, Pw

Q1,NI, and

PwP1

have real positive eigenvalues, being products of two s.p.d. matrices. We startwith Pw

Q1and Pw

Q1,NI.

In order to analyze their iterative condition numbers we note that, since Ω isa Cartesian product of intervals, we can express both multidimensional mass andstiffness matrices, based on either Q1, Q1,NI , or QN , as Kronecker products of 1Dmatrices; the latter will be denoted by the superindex (1).

By recalling that K(1)Q1,NI

≡ K(1)Q1

and that Ω is a Cartesian product of intervals,the following identities hold for d = 2,

KQ1 =M(1)Q1

⊗K(1)Q1

+K(1)Q1

⊗M(1)Q1,(4.1)

KQ1,NI =M(1)Q1,NI

⊗K(1)Q1

+K(1)Q1

⊗M(1)Q1,NI

,(4.2)

KGNI =M (1)GNI

⊗K(1)GNI

+K(1)GNI

⊗M (1)GNI

,(4.3)

and for d = 3,

KQ1 =M(1)Q1

⊗M(1)Q1

⊗K(1)Q1

+M(1)Q1

⊗K(1)Q1

⊗M(1)Q1

+K(1)Q1

⊗M(1)Q1

⊗M(1)Q1,

KQ1,NI =M(1)Q1,NI

⊗M(1)Q1,NI

⊗K(1)Q1

+M(1)Q1,NI

⊗K(1)Q1

⊗M(1)Q1,NI

+K(1)Q1

⊗M(1)Q1,NI

⊗M(1)Q1,NI

,

KGNI =M (1)GNI

⊗M (1)GNI

⊗K(1)GNI

+M (1)GNI

⊗K(1)GNI

⊗M (1)GNI

+K(1)GNI

⊗M (1)GNI

⊗M (1)GNI

,

where⊗ denotes the Kronecker product of matrices; that is, the block Cij of C = A⊗Bis given by Cij = aijB.

We will use the following well-known property (see, e.g., [7, Chap. 7]): if Ai, Bi,i = 1, 2, are s.p.d. matrices of order n such that

vTAiv ≤ αivTBiv for all v ∈ Rn

for suitable choice of real positive coefficients α1, α2, then one has

(4.4) vT (A1 ⊗A2)v ≤ α1α2vT (B1 ⊗B2)v for all v ∈ Rn2

.

Henceforth, the bounds on multidimensional stiffness matrices immediately followfrom bounds on 1D matrices.

Page 10: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4431

By definition (2.14), the nonzero entries of M(1)Q1,NI

are the weights of the com-

posite trapezoidal rule, i.e., (M(1)Q1,NI

)ii =xi+1−xi−1

2 for i = 1, . . . , N − 1, so that thefollowing lemma is a direct consequence of a result established in [23, (2.44), (2.49)].

Lemma 4.1. There exist two positive constants c0, c1 independent of N suchthat, for any N ≥ 2, it holds that

(4.5) c0vTM

(1)Q1,NI

v ≤ vTM (1)GNI

v ≤ c1vTM

(1)Q1,NI

v for all v ∈ RN−1.

Numerical results show that c1/c0 ≤ 1.00245.Lemma 4.2. For any N ≥ 2

(4.6)1

3vTM

(1)Q1,NI

v ≤ vTM(1)Q1

v ≤ vTM(1)Q1,NI

v for all v ∈ RN−1.

Proof. Let vh ∈ V 0h . For any j = 0, . . . , N − 1, it holds that∫ xj+1

xj

v2h(x)dx =xj+1 − xj

3

[vh(xj)

2 + vh(xj)vh(xj+1) + vh(xj+1)2].

Thanks to the Young inequality we have

−1

2

(vh(xj)

2 + vh(xj+1)2) ≤ vh(xj)vh(xj+1) ≤ 1

2

(vh(xj)

2 + vh(xj+1)2),

and by summing on j we have

1

3IT ≤

∫ 1

−1

v2h(x)dx ≤ IT ,

where IT =∑N−1

j=0xj+1−xj

2

(v2h(xj) + v2h(xj+1)

)is the approximation of

∫ 1

−1v2hdx by

the trapezoidal rule. Therefore, if vh ∈ V 0h is the piecewise linear function that

interpolates the (N − 1)-uple v at the interior LGL nodes, the thesis follows.Thanks to both Lemmas 4.1 and 4.2, the following lemma is easily proved.Lemma 4.3. For any N ≥ 2

(4.7) c0vTM

(1)Q1

v ≤ vTM (1)GNI

v ≤ 3c1vTM

(1)Q1

v for all v ∈ RN−1,

where c0 and c1 are the constants introduced in Lemma 4.1.Now we need a result for stiffness matrices K(1)

GNIand K

(1)Q1

. To this aim we recallthe following property, stated in both [6] and [25]: there exists a c2 > 1 independentof N such that

(4.8) ‖v′N‖2L2(−1,1) ≤ ‖v′h‖2L2(−1,1) ≤ c2‖v′N‖2L2(−1,1)

for any vN∈ Q0

N (−1, 1), with vh ∈ V 0h being its piecewise linear interpolation.

The following lemma is an immediate consequence of (4.8).Lemma 4.4. For any N ≥ 2

(4.9)1

c2vTK

(1)Q1

v ≤ vTK(1)GNI

v ≤ vTK(1)Q1

v for all v ∈ RN−1,

where c2 is the constant introduced in (4.8).Numerical results shown in the first column of Table 4.1 give c2 ≤ π2/4 < 2.5.

Page 11: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4432 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

Table 4.1

1D case. Iterative condition numbers of some of the preconditioned matrices defined in Table

3.1 for d = 1. Note that K(1)Q1

= K(1)P1

= K(1)Q1,NI

and M(1)Q1

= M(1)P1

, so that PwQ1

= PwP1

= PwQ1,NI

,

P sQ1

= P sP1

, and P ss,rtQ1

= P ss,rtP1

.

N PwQ1

P sQ1

P sQ1,NI

P ss,rtQ1

P ss,rtQ1,NI

16 2.18516 1.35975 2.18512 1.60205 2.18512

32 2.32011 1.38172 2.32010 1.59526 2.32010

48 2.36773 1.40196 2.36772 1.59491 2.36772

64 2.39207 1.41180 2.39207 1.59483 2.39207

80 2.40686 1.41813 2.40686 1.59479 2.40686

96 2.41680 1.42170 2.41680 1.59477 2.41680

112 2.42393 1.42507 2.42393 1.59476 2.42393

128 2.42930 1.42703 2.42930 1.59475 2.42930

0 10 20 30 40 50 60 701

2

3

4

5

6

7

8

PwQ1

P sQ1

PwQ1,NI

P sQ1,NI

P ss,rtQ1,NI

P ss,rtQ1

P ss,chQ1

PwP1

P sP1

P ss,rtP1

P ss,chP1

N

K(P

)

Figure 4.1. 2D case. Iterative condition numbers of the preconditioned matrices (3.3)–(3.13).

Curves relative to PwQ1,NI

, P sQ1,NI

, and P ss,rtQ1,NI

are very close to each other. Those relative to

PwQ1,NI

and PwP1

coincide. For non s.p.d. matrices, K has been replaced by K∗. The triangles of the

P1 mesh are all oriented in the same way as in Figure 2.1(b).

We are now able to state the following result, whose proof is a consequence of theprevious lemmas and the property stated in (4.4).

Theorem 4.5. For any N ≥ 2

K(PwQ1) = K(K−1

Q1K

GNI) ≤ c2

(3c1c0

)d−1

, d = 1, 2, 3,(4.10)

K(PwQ1,NI

) = K(K−1Q1,NI

KGNI

) ≤ c2

(c1c0

)d−1

, d = 1, 2, 3,(4.11)

where c0 and c1 are the constants introduced in Lemma 4.1, while c2 is the constantintroduced in (4.8).

Remark 2. Both estimates (4.10) and (4.11) are corroborated by the numericalresults shown in Table 4.1 and in Figures 4.1 and 4.2. Estimates (4.10) and (4.11)

Page 12: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4433

5 10 15 200

5

10

15

20

N

K(P

)

4 6 8 10 12 14 16 18 201

1.5

2

2.5

3

3.5

4

4.5

5

N

Figure 4.2. 3D case. Iterative condition numbers of the preconditioned matrices (3.3)–(3.13).

The right picture is a zoom of the left one. Curves relative to PwQ1,NI

, P sQ1,NI

, and P ss,rtQ1,NI

are very

close to each other. The 6-tetrahedra mesh has been considered for those preconditioners based onP1 approximation. The symbols used in these pictures follow the legend of Figure 4.1.

hx

hy

hz

u1 u2

u3u4

u5 u6

u7u8

Figure 4.3. Numbering of vertices in the reference hexahedron R.

predict that the weak preconditioned matrix PwQ1,NI

based on the Q1,NI approachis more efficient than that based on Q1 finite elements in terms of preconditionedconjugate gradient (PCG) iterations. Moreover, recalling that c1/c0 1 as mentionedabove, we expect K(Pw

Q1,NI) to be basically independent of the dimension d (for values

of d of practical interest), as opposed to K(PwQ1). This is confirmed by the numerical

results of both Figures 5.1 and 5.8 below.Finally, let us analyze the condition number of Pw

P1. The following result will be

useful.Lemma 4.6. Let d = 3, and let each hexahedron R be split into six tetrahedra as

in Figure 2.2(right). Then, for any N ≥ 2

3

4vTKP1v ≤ vTKQ1,NIv ≤ 3

2vTKP1v for all v ∈ R(N−1)3 .(4.12)

Proof. First, we observe that

vTKP1v = ‖∇wh‖2L2(Ω), vTKQ1,NIv = ‖∇vh‖2Ω,T ,

where ‖ · ‖Ω,T denotes the approximation of the L2(Ω)-norm obtained by using the(tensorial) trapezoidal rule in each hexahedron R. Exploiting the additive property ofthe (squared) norms, it is enough to establish the analogue of (4.12) in each elementR, i.e.,

3

4uTKR

P1u ≤ uTKR

Q1,NIu ≤ 3

2uTKR

P1u,

Page 13: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4434 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

where u ∈ R8 is the vector collecting the values of v associated with the eight verticesof R ordered as in Figure 4.3, whereas KR

P1and KR

Q1,NIare the local stiffness matrices.

A lengthy but straightforward computation yields

uTKRP1u= ‖∇wh‖2L2(R)

=hyhz6hx

[2((u2 − u1)

2 + (u7 − u8)2) + (u6 − u5)

2 + (u3 − u4)2]

+hxhz6hy

[2((u8 − u5)

2 + (u3 − u2)2) + (u4 − u1)

2 + (u7 − u6)2]

+hxhy6hz

[2((u8 − u4)

2 + (u6 − u5)2) + (u5 − u1)

2 + (u7 − u3)2]

and

uTKRQ1,NI

u= ‖∇vh‖2R,T

=hyhz4hx

[(u2 − u1)

2 + (u7 − u8)2 + (u6 − u5)

2 + (u3 − u4)2]

+hxhz4hy

[(u8 − u5)

2 + (u3 − u2)2 + (u4 − u1)

2 + (u7 − u6)2]

+hxhy4hz

[(u8 − u4)

2 + (u6 − u5)2 + (u5 − u1)

2 + (u7 − u3)2].

Then the result follows from a repeated application of the inequalities A2 + B2 ≤2A2 +B2 ≤ 2(A2 +B2).

Theorem 4.7. For any N ≥ 2,

K(PwP1) ≤ σdc2

(c1c0

)d−1

, d = 1, 2, 3,(4.13)

where σ1 = σ2 = 1, σ3 = 2, c0 and c1 are the constants introduced in Lemma 4.1,while c2 is the constant introduced in (4.8).

Proof. When d = 1,KP1 = K(1)P1

= K(1)Q1

; hence the result follows from Lemma 4.4.When d = 2, KP1 = KQ1,NI holds (see Remark 1) so that, thanks to Theorem

4.5, we have

K(PwP1) ≤ c2

c1c0.(4.14)

When d = 3, Theorem 4.5 and Lemma 4.6 ensure that K(PwP1) is bounded indepen-

dently of N also for the 3D geometry; precisely, we have

K(PwP1) ≤ K(K−1

P1KQ1,NI )K(K−1

Q1,NIK

GNI) ≤ 2c2

(c1c0

)2

.(4.15)

Note that the bound (4.15) is not sharp, as shown by the numerical results ofFigure 4.2.

4.2. Strong matrices. We now consider the strong matrices P sQ1, P s

Q1,NI, and

P sP1. They are no longer similar to s.p.d. matrices; nevertheless, numerical evidence

indicates that P sQ1,NI

has real eigenvalues, while P sQ1

and P sP1

have complex eigenvalueswith imaginary parts hardly larger than one-tenth of the corresponding moduli.

Page 14: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4435

For a matrix with this type of eigenstructure, the parameter

(4.16) K∗ = K∗(A) =maxi |λi(A)|mini |λi(A)| K(AS),

where AS denotes the symmetric part of A, is an effective surrogate for K(A) as anindicator of the convergence properties of gradient-like methods. (In what follows,we will not usually comment on our use of this surrogate for K for those matricesfor which the surrogate is more appropriate; however, the relevant figure labels andcaptions will reflect the use of the surrogate in those cases.)

Theorem 4.8. There exist two positive constants C1 and C2 independent of bothN and d(= 1, 2, 3) such that

K∗(P sQ1) ≤ C1, K∗(P s

Q1,NI) ≤ C2.(4.17)

Proof. Let us consider the system P sQ1u = K−1

Q1MQ1 f , where we have P s

Q1=

K−1Q1MQ1M

−1GNI

KGNI . We begin to analyze the case d = 1. The eigenvalues λi(PsQ1)

belong to the set

A1 =

{z =

u∗K(1)GNI

u

u∗M (1)GNI (M

(1)Q1

)−1K(1)Q1

u∀u ∈ Cn

}

=

{z =

u∗K(1)GNI

u

v∗K(1)Q1

u∀u ∈ Cn,v = (M

(1)Q1

)−1M (1)GNI

u

},

(4.18)

where n = (N − 1) is the dimension of 1D matrices. In order to estimate infz∈A1 |z|and supz∈A1

|z|, we take into account the bound (4.9) and the following results provedin [24, Thm. 3.1 and Lem. 3.4, 3.5]: there exist positive constants ci, i = 3, . . . , 7,independent of N , such that

c3v∗K(1)

Q1v ≤ u∗K(1)

Q1u ≤ c4v

∗K(1)Q1

v,

c5v∗K(1)

Q1v ≤ Re(v∗K(1)

Q1u) ≤ c6v

∗K(1)Q1

v, |v∗K(1)Q1

u| ≤ c7v∗K(1)

Q1v

(4.19)

for any u ∈ Cn and v = (M(1)Q1

)−1M (1)GNI

u. By (4.9) and (4.19) we have

(4.20)c3c5c27c2

≤c5c2u∗K(1)

Q1u

c27v∗K(1)

Q1v

≤ Rez ≤ |z| ≤ u∗K(1)Q1

u

c5v∗K(1)Q1

v≤ c4c5

for all z ∈ A1,

and then

(4.21) K∗(P sQ1) ≤ c2c4c

27

c3c25for d = 1 and for all N ≥ 2.

Let us consider now the case d = 2. By recalling definitions (4.1) and (4.3) and

by writing MQ1 = M(1)Q1

⊗M(1)Q1

and MGNI

= M (1)GNI

⊗M (1)GNI

, the eigenvalues of P sQ1

belong to the set

A2 =

{z =

u∗KGNI

u

u∗MGNI

M−1Q1KQ1u

∀u ∈ Cn2

}

=

{z =

v∗(D ⊗B +B ⊗D)v

v∗(C ⊗B +B ⊗ C)v∀v ∈ Cn2

},

(4.22)

Page 15: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4436 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

where B =M(1)Q1

(M (1)GNI

)−1M(1)Q1, C = K

(1)Q1

(M (1)GNI

)−1M(1)Q1

, and

D =M(1)Q1

(M (1)GNI

)−1K(1)GNI

(M (1)GNI

)−1M(1)Q1.

By setting

E =M(1)Q1

(M (1)GNI

)−1K(1)Q1

(M (1)GNI

)−1M(1)Q1,

estimates (4.19) read also

c3v∗K(1)

Q1v ≤ v∗Ev ≤ c4v

∗K(1)Q1

v,

c5v∗K(1)

Q1v ≤ Re(v∗Cv) ≤ c6v

∗K(1)Q1

v, |v∗Cv| ≤ c7v∗K(1)

Q1v

for all v ∈ Cn.

(4.23)

From (4.9), (4.4), and (4.23)1, the numerator of any z ∈ A2 satisfies the bounds

c3c2v∗(K(1)

Q1⊗B +B ⊗K

(1)Q1

)v ≤ 1

c2v∗(E ⊗B +B ⊗ E)v

≤ v∗(D ⊗B +B ⊗D)v ≤ v∗(E ⊗B +B ⊗ E)v ≤ c4v∗(K(1)

Q1⊗B +B ⊗K

(1)Q1

)v

for any v ∈ Cn2

. About the denominator, we observe that if A, B, and C are squarematrices of size n, with A and B s.p.d., and if there exist positive constants αi suchthat α1v

∗Av ≤ Re(v∗Cv) ≤ α2v∗Av and |v∗Cv| ≤ α3v

∗Av, then

α1v∗(A⊗B)v ≤ Re(v∗(C ⊗B)v) ≤ α2v

∗(A⊗B)v for all v ∈ Cn2

,

|v∗(C ⊗B)v| ≤ α3v∗(A⊗B)v for all v ∈ Cn2

.(4.24)

The previous bounds may be proved by exploiting the fact that the eigenvectors of Bform a basis for the space Cn. Therefore, by (4.24) it follows that

c5v∗(K(1)

Q1⊗B +B ⊗K

(1)Q1

)v≤ Re(v∗(C ⊗B +B ⊗ C)v)

≤ c6v∗(K(1)

Q1⊗B +B ⊗K

(1)Q1

)v,

|v∗(C ⊗B +B ⊗ C)v| ≤ c7v∗(K(1)

Q1⊗B +B ⊗K

(1)Q1

)v,

and it holds that

(4.25)c3c5c27c2

≤ Rez ≤ |z| ≤ c4c5

for all z ∈ A2,

so that (4.21) is true also for d = 2. The extension to the case d = 3 can be carriedout by the same technique.

If we consider now the matrix P sQ1,NI

, we can follow the same steps explainedabove, thanks to formulas (3.37a) and (3.37b) in [23], which are the analogues of thesecond and third estimates in (4.19). Note that a bound like the first one in (4.19)immediately follows from Lemma 4.1 and the fact that both MGNI and MQ1,NI arediagonal matrices. In particular, the constants c3 and c4 in (4.19)1 are replaced nowby 1/c21 and 1/c20, respectively, where c0 and c1 are introduced in Lemma 4.1.

Remark 3. About the matrix P sP1, we recall that it coincides with P s

Q1when

d = 1. On the other hand, for d = 2, 3, both KP1 and MP1 do not feature a tensorialstructure, so that we can no longer exploit the same arguments used for Q1 finiteelements. Numerical results shown in Figures 4.1–4.2 highlight that K∗(P s

P1) < C,

with C independent of N , also for d = 2, 3, but now C slightly grows with d.

Page 16: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4437

4.3. Numerical results. In Table 4.1 we report the iterative condition numbers,for d = 1, of some preconditioned matrices P = H−1L defined in Table 3.1, while inFigures 4.1 and 4.2 we report the iterative condition numbers of all the preconditionedmatrices P = H−1L given in Table 3.1 for d = 2 and d = 3, respectively. We specifythat numerical results in Figure 4.1 (resp., in Figure 4.2) for Pw

P1, P s

P1, P ss,rt

P1, and

P ss,chP1

refer to an oriented mesh such as that shown in Figure 2.1(b) (resp., in Figure2.2(right)).

If d = 2, the stiffness matrix KP1 is invariant with respect to the orientation ofthe triangles; however, this property does not hold true for the mass matrix MP1 .Consequently, the iterative condition number of the strong preconditioned matricesdepends on the mesh, even though it remains bounded independently of N . In Table4.2 (specifically, in the left column of each column block of the table) we show theiterative condition number K∗(P s

P1) for three different meshes of triangles induced

by LGL nodes. The best performance is achieved when the mesh has all trianglesoriented in the same way, while the worst one is obtained when the mesh has alter-nating triangles. This phenomenon can be ascribed to the presence of Lagrange basisfunctions with support of different size in the nonuniformly oriented cases.

The iterative condition number behaves in a similar manner also when d = 3and when each hexahedron induced by the LGL mesh is split into five instead of sixtetrahedra (see Figure 2.2). We have observed that the 6-tetrahedra mesh inducesthe same effects as the oriented 2D mesh does, while the 5-tetrahedra mesh inducesthe same effects as an alternating 2D mesh.

For any d = 1, 2, 3, all the condition numbers of both weak and strong matricesare uniformly bounded with respect to N . The smallest one is obtained for P s

Q1,

for any d = 1, 2, 3. The condition number of PwQ1

is significantly larger than theothers, for d ≥ 2, and it noticeably depends on the space dimension d, according tothe theoretical results presented in the previous section (see Theorem 4.5 and thesubsequent Remark 2).

Concerning the symmetrized-strong matrices, numerical results (see Figure 4.1)

show that the iterative condition number of P ss,rtQ1

, P ss,chQ1

, P ss,rtQ1,NI

is bounded indepen-dently of N . In contrast, when simplicial P1 finite elements are used, two situations

Table 4.2

2D case. Iterative condition number K∗ of the preconditioned matrices P sP1, . . . , P ss,ch

P1as-

sociated with problem (2.1). Oriented mesh, alternating mesh, and random mesh are considered.The stiffness matrix is invariant with respect to mesh orientation; then K(Pw

P1) is the same for all

considered meshes.

Oriented mesh Alternating mesh Random mesh

N P sP1

P ss,rtP1

P ss,chP1

P sP1

P ss,rtP1

P ss,chP1

P sP1

P ss,rtP1

P ss,chP1

8 2.630 2.857 4.434 3.802 15.693 13.441 3.052 5.731 6.282

16 2.698 3.027 5.265 3.943 108.238 73.647 3.199 11.311 11.468

24 2.737 3.056 5.569 4.034 439.980 275.359 3.321 25.420 23.230

32 2.751 3.075 5.769 4.106 1277.766 771.505 3.380 79.004 69.486

40 2.790 3.109 5.900 4.160 2995.229 1776.044 3.330 90.404 94.588

48 2.823 3.142 5.988 4.199 6072.810 3564.090 3.386 199.216 190.145

56 2.850 3.170 6.050 4.226 11097.759 6471.917 3.422 302.417 304.913

64 2.872 3.193 6.094 4.247 18764.135 10896.959 3.447 482.504 501.969

Page 17: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4438 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

5 10 15 2010

0

101

102

103

104

N

K(P

)

5 10 15 200

2

4

6

8

10

N

K(P

)

Figure 4.4. 3D case. Iterative condition numbers of the preconditioned matrices PwP1, P s

P1,

P ss,rtP1

, and P ss,chP1

for both 5-tetrahedra (left) and 6-tetrahedra (right) meshes. The symbols used in

these pictures follow the legend of Figure 4.1.

are faced. When d = 2, Table 4.2 shows that if all triangles are oriented in the sameway, the iterative condition number of both P ss,rt

P1and P ss,ch

P1is uniformly bounded

with respect to N ; in contrast, if the rectangles are split either randomly or with analternating orientation, then both K(P ss,rt

P1) and K(P ss,ch

P1) grow like Np, for some

p ∈ [3, 4]. The latter growth has also been observed for the 5-tetrahedra mesh whend = 3, as we can see in Figure 4.4. For this reason, in what follows we will onlyconsider the 6-tetrahedra mesh for the 3D case.

4.4. Neumann boundary conditions, nonconstant viscosity, and skew-ness of the domain. Let us confine our analysis to the case d = 2. When Neumannboundary conditions are imposed on two consecutive edges of the boundary ∂Ω andhomogeneous Dirichlet boundary conditions are assigned on the remaining edges, theiterative condition numbers of the strong matrices P s

Q1, P s

Q1,NI, and P s

P1and of the

weak matrices PwQ1, Pw

Q1,NI, and Pw

P1are again independent of the polynomial degree

N . In contrast, the iterative condition numbers associated with all the symmetrized-strong matrices now depend on N , precisely as N3. These results are shown in Figure4.5 (top left).

Now we ask whether the preconditioners introduced in the previous sections arestill efficient when a variable viscosity shows up in (2.1). In particular we considerthe problem

(4.26) −∇ · (ν∇u) = f in Ω = (−1, 1)d , u = 0 on ∂Ω,

where the viscosity ν = ν(x) satisfies ν ∈ L∞(Ω) and ν(x) ≥ ν0 for all x ∈ Ω, forsome constant ν0 > 0.

In Figure 4.5 we report the iterative condition numbers for both weak and strongmatrices relative to three different choices of the viscosity function. As in the constant-coefficient case, the condition numbers K(P ) are always uniformly bounded withrespect to N , although the bounds are slightly larger. The specific dependence on Nbecomes more apparent as the variation of ν in the domain increases.

A situation similar to that of variable coefficients occurs when we consider con-stant coefficients on a deformed domain and we map the deformed demain onto thereference domain by an affine invertible transformation. More precisely, we obtain anelliptic problem with mixed second-order derivatives and variable coefficients depend-ing on the skewness of the domain. The condition numbers K(P ) are again bounded

Page 18: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4439

0 10 20 30 40 50 60 7010

0

101

102

103

104

105

N

K(P

)

0 10 20 30 40 50 60 701

2

3

4

5

6

7

8

9

N

K(P

)

0 10 20 30 40 50 60 701

2

3

4

5

6

7

8

9

N

K(P

)

0 10 20 30 40 50 60 701

2

3

4

5

6

7

8

9

10

N

K(P

)

Figure 4.5. 2D case. At top left, iterative condition numbers of the preconditioned matrices(3.3)–(3.13). Homogeneous Dirichlet boundary conditions are imposed on two consecutive sides of∂Ω, and Neumann boundary conditions on the two others. At top right and at bottom, iterativecondition numbers of some of the preconditioned matrices (3.3)–(3.13) referred to in problem (4.26).Only weak and strong matrices have been considered. At top right, ν(x, y) = 1 + x2y2; at bottomleft, ν(x, y) = 3+ sin(πx)+ cos(πy); at bottom right, ν(x, y) = 1+3x2y2. In all cases, the conditionnumbers relative to Pw

Q1,NI, P s

Q1,NI, and Pw

P1are very close to each other. The symbols used here

follow the legend of Figure 4.1.

independently of N , even if now they are larger and depend on the deformation ofthe domain. For instance, we have considered a quadrilateral with angles of 45, 117,90, and 108 degrees, and we have computed the condition number for both weak andstrong preconditioners, with the exception of skew-symmetric ones. The worst upperbound has been obtained for P s

P1and is about 12, while the best one is about 6 for

P sQ1. Both preconditioners Pw

Q1,NIand P s

Q1,NIare less sensitive to the skewing; for

them we have K(P ) ≤ 6.2.

5. Performances of the preconditioners and the solution strategies. Thepreconditioned systems associated with either (2.4) or (2.7) can be solved by a PCGalgorithm, whereas those associated with (2.6) need a nonsymmetric solver. Forthe latter, the preconditioned Bi-CGStab (PBi-CGStab) method [29] is our choice;however, the preconditioned GMRES method would represent a viable alternative.

Each PCG (resp., PBi-CGStab) iteration applied to (3.1) requires the solution ofone (resp., two) systems of the form

(5.1) Hz = r,

where r = r(k) = f−Lu(k) is the residual of (2.8) (corresponding to the kth iteration)and H is the preconditioning matrix. Taking into account the definitions ofH given inTable 3.1, it is readily seen that solving system (5.1) turns into solving an equivalentsystem whose matrix is one of the finite-element stiffness matrices KQ1 , KQ1,NI , KP1 ,

Page 19: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4440 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

100 200 300 400 5005

10

15

20

25

30

35

PwQ1

P sQ1

PwQ1,NI

P sQ1,NI

P ss,rtQ1,NI

P ss,rtQ1

P ss,chQ1

PwP1

P sP1

P ss,rtP1

P ss,chP1

N

Iterations

Figure 5.1. 2D case. Number of PCG and PBi-CGStab iterations to solve problem (2.1) withf ≡ 1 and u(0) = 0, for the preconditioners given by (3.3)–(3.13).

while the mass matrices MQ1 , MQ1,NI , MP1 (or either their square roots or Choleskyfactors when the symmetrized-strong preconditioners are invoked) are involved onlyin matrix-vector products. Therefore, we are invariably left with the task of solvinga system with an s.p.d. banded matrix K

FE.

From now on we prefer to treat the 2D and 3D cases separately.

5.1. 2D case. The first element in comparing preconditioners is the number ofiterations required by either PCG or PBi-CGstab to converge or, more precisely, tomeet the stopping criterion ||r(k)||H−1/||r(0)||H−1 < 10−14. The number of iterationswill affect the iterative process cost. Figure 5.1 reports the number of iterationsneeded to solve problem (2.1) with f ≡ 1, with the initial guess u(0) = 0, by eitherPCG or PBi-CGStab algorithm. It is interesting to note that this number decreasesfor increasing N for almost all preconditioners. This is because of the good choice ofthe initial guess u(0) = 0, which is compatible with the Dirichlet boundary conditionsimposed in problem (2.1). In fact, by inspecting the coefficients of the Legendreexpansion of the initial residual r(0), one observes that they decay very quickly forincreasing wave-numbers; furthermore, the larger modal components are associatedwith the lower wave-numbers. In contrast, if the initial guess u(0) for CG-iterationsdoes not satisfy the Dirichlet boundary conditions for u, which is the case if, e.g.,u(0) = 1, then the larger modal components of r(0) are associated with both low andhigh wave-numbers. In this case the number of PCG iterations needed to convergeto a given tolerance remains nearly constant for increasing N . A behavior similar tothat reported in Figure 5.1 is observed if f is such that the solution u of problem (2.1)is infinitely smooth.

The previous results indicate that the smallest number of iterations is given byP sQ1. However, the number of iterations is just one aspect of the evaluation of the

performance of an iterative method, the cost of the preprocessing and of the singleiteration being equally important factors of analysis. We will report below numericalresults concerning CPU-times for several iterative solution schemes applied to thepreconditioned systems (3.3)–(3.13).

Three different algebraic solvers have been considered for solving system (5.1):1. the Lapack Cholesky factorization for banded matrices and subsequent for-

ward/backward substitutions (CHOL, for short);

Page 20: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4441

2. the PCG with relaxed incomplete Cholesky factorization with zero fill-in [2,10] (RICCG(0), for short);

3. the HSL MA57 [17, 15, 16, 27] multifrontal algorithm with nested dissectionordering produced by MeTiS [19] (ND-MF, for short).

The relaxed incomplete Cholesky (RIC) factorization is an interpolated version(by a relaxation parameter ω ∈ [0, 1]) of the incomplete Cholesky (IC) factorizationwith the modified incomplete Cholesky factorization fulfilling the row-sum equivalencecondition (RS-MIC, for short). When ω = 0, RIC corresponds to IC, while whenω = 1, it corresponds to RS-MIC. Note that the matrix KFE is an M-matrix, whichis a sufficient condition for the existence of the RIC factorization with ω < 1. Incontrast, existence of RS-MIC factorization is not guaranteed for general M-matricesand is highly dependent on the ordering of the unknowns [10]. About the choice ofthe relaxation parameter, van der Vorst [28] suggested using ω = 0.95 in practice.Our experiments show that, for 2D test cases, the choice ω = 0.95 performs betterthan ω = 0 on both stiffness matrices KQ1 and KQ1,NI = KP1 . On the other hand, for3D problems, the choice ω = 0 guarantees more robustness to RICCG(0) than ω > 0,when applied to the stiffness matrix KQ1 . From now on, the abbreviation RICCG(0)will imply the choice ω = 0.95 for KQ1,NI (d = 2, 3), KP1 (d = 2, 3), and KQ1 (d = 2),and ω = 0 for KQ1 (d = 3).

Concerning the multifrontal algorithm, the indicated choice has been made aftera comparison with both HSL MA57 with approximate minimum degree (AMD) or-dering and UMFPACK [12, 11] with AMD ordering, for its better performance in theexamined situations, particularly in the 3D case.

In order to implement each of these algebraic solvers, a preprocessing step isneeded, which includes the assembly of both K

FEandM

FE, the factorization of K

FE,

and, if required, the computation of either the square root ofM−1FE

or its Cholesky fac-tor. Additionally, at each PCG iteration one matrix-vector product plus one solutionof the linear system (5.1) on the preconditioner are required, whereas at each PBi-CGStab iteration two matrix-vector products plus two solutions of the linear system(5.1) are required.

We have measured CPU-times in seconds on an HP xw4400 Workstation withan Intel CoreTM 2 Duo processor E6700, 2.67GHz. Both solvers CHOL and ND-MFhave been applied to all of the preconditioners (3.3)–(3.13), whereas RICCG(0) hasbeen applied only to (3.3)–(3.6) and (3.9)–(3.11).

The total CPU-times are shown in Figures 5.2–5.4. We note that, for any choiceof the algebraic solver among CHOL, RICCG(0), and ND-MF, the fastest solution wasobtained from the preconditioned matrix Pw

Q1,NI, which coincides with Pw

P1(although

the CPU-times are slightly different, due to different assembly operations). Remark-ably, the corresponding preconditioning matrices produce the best results withouteven involving the mass matrix.

The slowest solutions are those obtained using the preconditioned matrices P ss,rtQ1

and P ss,rtP1

. In such cases the (soon prohibitive) major cost is due to the evaluation

of the square roots of M−1Q1

and M−1P1

, respectively; due to their inefficiency, we havereported CPU-time for these two preconditioners only for N ≤ 96, and we will notconsider them in the subsequent analysis. The use of the Cholesky factor of M−1

FE

inside the symmetrized-strong forms P ss,chQ1

and P ss,chP1

is not as expensive as the com-putation of the square root of the matrix; thus, the total CPU-times are comparableto those of the weak and strong forms of the preconditioned system. Nevertheless,the latter choices require a wider memory storage. Note, however, that P ss,rt

Q1,NI, which

Page 21: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4442 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

100 200 300 400 50010

−2

10−1

100

101

102

N

O(N3)

O(N7/2)

TotalCPU-t

ime

(sec)

350 400 45010

20

30

40

50

60

70

N

TotalCPU-t

ime

(sec)

Figure 5.2. 2D case. Total CPU-time (sec.) for solving (3.1) for the different preconditionersdefined in (3.3)–(3.13). CHOL is used for solving system (5.1). f ≡ 1 is chosen in (2.1), andu(0) = 0 as initial guess for either PCG or PBi-CGStab. The right picture is a zoom of the leftone. The symbols used in these pictures follow the legend of Figure 5.1.

100 200 300 400 50010

−2

10−1

100

101

102

103

N

O(N3)

O(N7/2)

TotalCPU-t

ime

(sec)

350 400 45040

60

80

100

120

140

160

N

TotalCPU-t

ime

(sec)

Figure 5.3. 2D case. Total CPU-time (sec.) for solving (3.1) for the different preconditionersdefined in (3.3)–(3.6) and (3.9)–(3.11); RICCG(0) is used for solving system (5.1). f ≡ 1 is chosenin (2.1), and u(0) = 0 as initial guess for either PCG or PBi-CGStab. The right picture is a zoomof the left one. The symbols used in these pictures follow the legend of Figure 5.1.

100 200 300 400 50010

−2

10−1

100

101

102

N

O(N3)

O(N7/2)

TotalCPU-t

ime

(sec)

350 400 45010

20

30

40

50

60

70

N

TotalCPU-t

ime

(sec)

Figure 5.4. 2D case. Total CPU-time (sec.) for solving (3.1) for the different preconditionersdefined in (3.3)–(3.13). ND-MF is used for solving system (5.1). f ≡ 1 is chosen in (2.1), andu(0) = 0 as initial guess for either PCG or PBi-CGStab. The right picture is a zoom of the leftone. The symbols used in these pictures follow the legend of Figure 5.1.

Page 22: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4443

102

10−2

10−1

100

101

102

CHOLRICCG(0)ND−MF

N

O(N7/2)

O(N3)

CPU-t

ime

(sec)

102

10−2

10−1

100

101

102

CHOLRICCG(0)ND−MF

N

O(N7/2)

O(N3)

CPU-t

ime

(sec)

Figure 5.5. 2D case. Total CPU-time (sec.) for solving (3.1) for both choices (3.5) (left) and(3.4) (right). Either CHOL, RICCG(0) with ω = 0.95, or ND-MF are used for solving system (5.1).f ≡ 1 is chosen in (2.1), while u(0) = 0 is the initial guess for both PCG and PBi-CGStab.

makes use of the diagonal mass matrix MQ1,NI inside the symmetrized-strong form,produces good results too.

Among the strong matrices, the best performing one (if we disregard the runsinvoking RICCG(0)) is P s

Q1,NI, thanks to the diagonal structure of the mass matrix

MQ1,NI , in spite of the fact that P sQ1

has the minimum iterative condition number.Remark 4. Within the option of using an incomplete factorization, say C, of the

finite-element stiffness matrix KFE, one could think of taking a “shortcut,” i.e., ap-plying the inverse of such factorization directly to the spectral stiffness matrix KGNI .However, this strategy would be inefficient, since it would require the evaluation ofmany spectral residuals, a significant burden in terms of computational cost. Indeed,the iterative condition number of the preconditioned matrix C−1KGNI is reported tosatisfy K(C−1KGNI) = O(N2), implying an O(N) number of CG iterations neededto solve system (2.4) in this way. One should then perform an equivalent numberof evaluations of the spectral residual, as opposed to the O(1) number for all thestrategies investigated in what follows.

Our next aim is to compare the efficiency of the three algebraic solvers (CHOL,RICCG(0), and ND-MF) when applied to solving the system (5.1). To this aim welimit our analysis to only two preconditioners, Pw

Q1,NIand P s

Q1, which are among the

most efficient ones in terms of computational time; the former does not need the massmatrix, while the latter does require such a matrix within an extra matrix-vectorproduct. In view of the fact that Pw

P1= Pw

Q1,NI(in two dimensions), the same analysis

done for PwQ1,NI

can be extended to PwP1.

In Figure 5.5 we directly compare the total CPU-times for PwQ1,NI

(left) and P sQ1

(right) measured when we use CHOL, RICCG(0), and ND-MF. It is not surprisingthat the most efficient algebraic method is the multifrontal one. In general, we canobserve that the total CPU-time required by RICCG(0) is about six to ten times thatrequired by ND-MF, for any choice of the preconditioners defined in (3.3)–(3.6), (3.9)–(3.13); furthermore, the total CPU-time measured by using CHOL grows more quicklythan these two as N tends to infinity. CPU-times exhibit a growth proportional toN3 when either RICCG(0) or ND-MF is used, and to N7/2 when CHOL is used.A comparison between the plots on the left-hand side and on the right-hand side ofFigure 5.5 indicates that the weak-Q1,NI preconditioner invariably outperforms thestrong-Q1 one by a factor of about 2.

It is worthwhile analyzing in more detail the cost of both the preprocessing step,say CPRE, and the iterative process, say CLOOP, in terms of elementary floating point

Page 23: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4444 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

operations versus either the polynomial degree N or the global number of degreesof freedom n = (N − 1)2. We confine ourselves to the cases of weak and strongpreconditioners (thus we do not address the symmetrized-strong versions). CLOOP isgiven by the product of the number of iterations it and the cost of a single iterationCITER. We thus have for the total cost CTOT:

CTOT = CPRE + CLOOP = CPRE + it ∗ CITER.

On the other hand, we have

CPRE = CASS + CFACT, CITER = CRHS + CSOL,

where we have used the following notation:

CASS: cost of assembling the matrices needed by the FEM preconditioner,CFACT: cost of factorizing the stiffness matrix KFE,CRHS: cost of forming the right-hand side of the finite-element system (5.1),CSOL: cost of solving the finite-element system (5.1).

(We deliberately ignore the cost of assembling the stiffness matrix KGNI , which scalesas Nd+1 = N3, since it is common to all solution strategies and because it could beavoided by exploiting the tensorial structure of the matrix in the computation of thespectral residual.)

The cost of each stage can be related to the number of required floating pointoperations, for which we now provide theoretical estimates. Extra time is spent duringmemory access operations, whose analysis, being strictly related to the knowledge ofthe specific hardware in use, will be omitted.

The assembly time CASS depends on the assembly of the stiffness matrix KFE ,which requires O(Nd) flops since the number of nonzero entries per row is boundedindependently of N . In addition, for the strong matrices, one has to assemble themass matrix MFE, in O(Nd) flops, and form the spectral matrix L = M−1

GNIK

GNIin

O(Nd+1) flops.The factorization time CFACT depends on the iterative solver. CHOL requires

O(np2) flops, where n Nd, while p Nd−1 is the bandwidth of KFE; thus CFACT =O(N3d−2). RICCG(0) requires O(1) flops per row, yielding CFACT = O(Nd). Finally,the factorization time of ND-MF is given by CFACT = O(N3) for d = 2 or CFACT =O(N6) for d = 3 [1].

The cost CRHS depends on the cost of forming the spectral residual r(k) = f −Lu(k), which requires O(Nd+1) flops. In addition, for the strong preconditioners, wehave to account for a matrix-vector product by MFE, which costs O(Nd) flops. Inany case, this stage requires O(Nd+1) flops.

At last, let us investigate CSOL. CHOL costs 2n(2p+1) flops, where n and p havethe same meaning as above, yielding CSOL = O(N2d−1). Concerning RICCG(0),each inner iteration requires O(Nd) flops; on the other hand, the condition num-ber of the preconditioned matrix C−1KFE , where C−1 stands for the RICCG(0)-preconditioning, satisfies (experimentally) K(C−1KFE) = O(N) for small to moder-ate values of N and K(C−1KFE) = O(N2) in the asymptotic regime, as opposed toK(KFE) = O(N3) = K(K

GNI). Recalling the convergence rate of the CG method,

which is proportional to the inverse of√K(C−1KFE), we obtain that the number of

RICCG(0)-iterations needed to reduce the residual to machine accuracy scales with√N in the first case and with N in the second one; therefore in the asymptotic regime,

Page 24: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4445

101

102

103

102

103

H = KQ1 , ω = 0H = KQ1,NI , ω = 0H = KQ1 , ω = 0.95H = KQ1,NI , ω = 0.95

N

N

√NIt

erations

Figure 5.6. 2D case. Number of RICCG(0) iterations to solve the system (5.1) with eitherH = KQ1

or H = KQ1,NI. ω is the relaxation parameter of RICCG(0).

Table 5.1

2D case. Theoretical (upper rows of each case) and measured (lower rows) costs of the variousstages of the iterative solution scheme, versus N .

CPRE CLOOP CTOT

= CASS + CFACT = it ∗ (CRHS + CSOL)

CHOL

WeakcAN2 + cFN4 cRN3 + cSN

3 cTN4

3 · 10−9N3.72 5 · 10−8N3.16 2 · 10−8N3.46

StrongcAN3 + cFN4 cRN3 + cSN

3 cTN4

8 · 10−9N3.59 7 · 10−8N3.19 5 · 10−8N3.38

RICCG(0)

WeakcAN2 + cFN2 cRN3 + cSN

3 cTN3

3 · 10−6N1.93 2 · 10−7N3.25 2 · 10−7N3.24

StrongcAN3 + cFN2 cRN3 + cSN

3 cTN3

2 · 10−7N2.67 3 · 10−7N3.21 3 · 10−7N3.19

ND-MF

WeakcAN2 + cFN3 cRN3 + cSN

2 logN cTN3

1 · 10−6N2.43 5 · 10−8N3.11 2 · 10−7N2.90

StrongcAN3 + cFN3 cRN3 + cSN

3 logN cTN3

8 · 10−7N2.59 3 · 10−8N3.29 2 · 10−7N2.99

CSOL = O(Nd+1) for RICCG(0). This is confirmed by Figure 5.6. The same figurealso displays a comparison between the choices ω = 0.95 and ω = 0 inside RICCG(0);we can deduce that the former is 1/3 less expensive than the latter. Concerning ND-MF, the cost of backward/forward solution is proportional to the fill-in and thereforegiven by CSOL = O(N2 logN) for d = 2, or CSOL = O(N4) for d = 3 [1].

Finally, as seen above, for both preconditioners here considered, the number ofiterations needed to solve (5.1) to machine accuracy is it = O(1), precisely between 7and 15, and actually it is a decreasing function of N for certain initial guesses u(0).

The individual theoretical bounds presented so far can be combined to producebounds for the intermediate costs CPRE and CLOOP and for the total cost CTOT. Table5.1 collects all these results for the strategies under investigation. (The terms weakand strong refer to the Pw

Q1,NIand P s

Q1preconditioned matrices, respectively.) The

cost of each stage is described as cNα, where α is drawn from the previous discussion;

Page 25: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4446 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

100 200 300 400 50010

−3

10−2

10−1

100

N

O(N4)O(N3)

CPUTim

e(sec)

100 150 200 250 300 350 400 450 5000.2

0.3

0.4

0.5

0.6

0.7

N

preprocessing/total

100 150 200 250 300 350 400 450 5000

0.01

0.02

0.03

0.04

0.05

0.06

N

preprocessing/total

100 150 200 250 300 350 400 450 5000.1

0.2

0.3

0.4

0.5

0.6

N

preprocessing/total

Figure 5.7. 2D case. At top left, CPU-times needed for evaluating one spectral residual,r(k) = f − Lu(k). At top right and at bottom, the part of the total CPU-time required by thepreprocessing step when either CHOL (top right), RICCG(0) (bottom left), or ND-MF (bottom right)is used to solve (5.1). CPU-times shown in Figures 5.2 and 5.3 have been considered in computingthe percentages shown here. The symbols used in these pictures follow the legend of Figure 5.1.

obviously, this is the leading term in the expansion of each cost with respect to N ; i.e.,it represents the expected asymptotic behavior as N → ∞. The theoretical resultsare compared, in the same Table 5.1, to the actual results of our experiments, whichare reported below them. For each stage, we have computed a least-squares fit of alaw like cNα, for N in the range [32, 448], of the values indicated in Figures 5.2–5.4for the total CPU-times, as well as of the measured intermediate CPU-times of thepartial steps.

The results indicate a good agreement between theory and experiments. They alsoconfirm and provide better evidence for the ranking among the methods expressed byFigure 5.5. It is worth noticing that the measured exponent of CLOOP is higher thanthe one predicted by the theory; this phenomenon has to be ascribed to the growth ofthe CPU-time needed for the spectral residual evaluation. Indeed, for N large enough,memory access costs become predominant over floating point operation costs, yieldingan overall O(N4) cost for this stage, as opposed to the O(N3) estimate based onlyon consideration of flops. Figure 5.7 (top left) clearly documents this behavior.

Another useful piece of information which can be drawn from Table 5.1 concernsthe ratio between preprocessing cost and total cost for the different strategies. Acomplementary picture is provided by Figure 5.7, where the results for all precondi-tioners are shown. Both theory and experiments indicate that this ratio tends to 1for CHOL (with values between 0.4 and 0.6 in the explored range of N), whereas ittends to 0 for RICCG(0) (with values between 0.06 down to 0.01 and below). Thereis evidence of the decay of this ratio also for ND-MF, although less pronounced thanfor RICCG(0).

Page 26: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4447

10 20 30 40 50

10

20

30

40

50

Iter

atio

ns

pqpppppppp

PwQ1

P sQ1

PwQ1,NI

P sQ1,NI

P ss,rtQ1

P ss,chQ1

N

Figure 5.8. 3D case. Number of PCG and PBi-CGStab iterations to solve problem (2.1) withf ≡ 1 and u(0) = 0, for the preconditioners defined in (3.3)–(3.13).

The conclusion of the 2D investigation is that the weak Q1,NI preconditioningapproach coupled with the multifrontal solver for the FEM system allows one tocompute the solution of the spectral system (2.4) with a total cost which scales asnβ in the number n N2 of degrees of freedom, β being slightly less than 3/2; thisresult holds in the range 2 ≤ N ≤ 448 at least.

5.2. 3D case. We consider again the model problem (2.1) with f ≡ 1. InFigure 5.8 we report the number of iterations needed to meet the stopping criterion||r(k)||H−1/||r(0)||H−1 < 10−14 with the initial guess u(0) = 0, whose behavior agreeswith that of the iterative condition numbers reported in Figure 4.2. In particular, thenumber of iterations is independent of N for all preconditioners.

The high sparsity of both mass and stiffness finite-element matrices for 3D compu-tational domains has induced us to solve system (5.1) by either RICCG(0) or ND-MF,with the exclusion of CHOL.

As done for the 2D case, we first compare the total CPU-times needed to solvesystem (3.1); see Figures 5.9 and 5.10. For both cases, the fastest solution was ob-tained from the preconditioned matrix Pw

Q1,NI, although also P s

Q1,NIand P ss,rt

Q1,NIare

very competitive. These results reflect what happens in the 2D case. In contrast,if we compare RICCG(0) and ND-MF for the best performing preconditioned ma-trix Pw

Q1,NI, we find that RICCG(0) performs better than ND-MF. In particular for

N = 48, the total CPU-time needed to solve (5.1) with PwQ1,NI

is about 11 secondswhen RICCG(0) is used, while it is about 42 seconds when ND-MF is used, reversingwhat happens in the 2D case.

By using the notation introduced in the previous section and by recalling thetheoretical flop count of the various stages, expressed as a function of both the poly-nomial degree N and the geometric dimension d, we can estimate the computationalcost of our preconditioning approaches also for the 3D cases. In Table 5.2 we exhibitthe theoretical flop counts (upper rows) and the actual results of our experiments(lower rows) for both the weak preconditioned matrix Pw

Q1,NIand the strong one P s

Q1.

The least-squares fits have been performed with N in the range [4, 48]. Again, a fairlygood agreement between prediction and observation is obtained.

We note that if the solution of the reference differential problem falls withinthe case of time-dependent partial differential equations and a significant number ofsolve calls are made, the preprocessing cost can be ignored, and the CLOOP time

Page 27: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4448 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

10 20 30 40 5010

−2

10−1

100

101

102

N

O(N9/2)

O(N4)

TotalCPU-t

ime

(sec)

10 15 20 25 30 35 40 45 500

20

40

60

80

100

Tota

l C

PU

-tim

e (se

c)

N

Figure 5.9. 3D case. Total CPU-time (sec.) for solving (3.1) for the different preconditionersdefined in (3.3)–(3.6) and (3.9)–(3.11). RICCG(0) (with ω = 0.95 when either H = KQ1,NI

orH = KP1 , and ω = 0 when H = KQ1

) is used for solving system (5.1). f ≡ 1 is chosen in (2.1),

and u(0) = 0 as the initial guess for either PCG or PBi-CGStab. The right picture is a zoom of theleft one. The symbols used in these pictures follow the legend of Figure 5.8.

10 20 30 40 5010

−2

10−1

100

101

102

103

104

CPU

time

(sec

)

N

O(N6)

O(N7)

10 15 20 25 30 35 40 45 500

20

40

60

80

100

CPU

time

(sec

)

N

Figure 5.10. 3D case. Total CPU-time (sec.) for solving (3.1) for the different preconditionersdefined in (3.3)–(3.13). ND-MF is used for solving system (5.1). f ≡ 1 is chosen in (2.1), andu(0) = 0 as the initial guess for either PCG or PBi-CGStab. The right picture is a zoom of the leftone. The symbols used in these pictures follow the legend of Figure 5.8.

Table 5.2

3D case. Theoretical (upper rows of each case) and measured (lower rows) costs of the variousstages of the iterative solution scheme, versus N .

CPRE CLOOP CTOT

= CASS + CFACT = it ∗ (CRHS + CSOL)

RICCG(0)

WeakcAN3 + cFN3 cRN4 + cSN

4 cTN4

5 · 10−6N3.04 2 · 10−6N4.13 2 · 10−6N3.95

StrongcAN4 + cFN3 cRN4 + cSN

4 cTN4

1 · 10−5N3.08 7 · 10−7N4.53 1 · 10−6N4.36

ND-MF

WeakcAN3 + cFN6 cRN4 + cSN

4 cTN6

4 · 10−9N5.90 2 · 10−7N4.30 2 · 10−8N5.53

StrongcAN4 + cFN6 cRN4 + cSN

4 cTN6

6 · 10−8N5.31 2 · 10−7N4.42 7 · 10−8N5.30

Page 28: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4449

10 15 20 25 30 35 40 45 500

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

N

preprocessing/total

10 15 20 25 30 35 40 45 500

0.2

0.4

0.6

0.8

1

1.2

N

preprocessing/total

10 20 30 40 5010

−4

10−3

10−2

10−1

100

101

N

O(N5)

O(N4)

CPU-tim

e(sec)

Figure 5.11. 3D case. At top, the part of the total CPU-time required by the preprocessing stepwhen either the RICCG(0) (left) or ND-MF (right) solver is used to solve (5.1). CPU-times shownin Figure 5.9 and 5.10 have been considered. The symbols used in these pictures follow the legend ofFigure 5.8. At bottom, the CPU-times needed for evaluating one spectral residual r(k) = f − Lu(k)

(�) and for implementing the iterative RICCG(0) solution of (5.1); the symbol • refers to the choiceH = M−1

Q1KQ1

, while � refers to H = KQ1,NI.

becomes the unique term of comparison. In this scenario ND-MF and RICCG(0)have a comparable computational cost, behaving like N4.

In Figure 5.11 the cost of the preprocessing step over the total CPU-time is shown.When ND-MF is used (see Figure 5.11(top right)), the preprocessing step increasinglydominates the total computational time. Numerical results indicate that the overallcost of the preprocessing step almost invariably takes more than 50 percent of thetotal solution cost, and it grows with N up to 90 percent in the range of N underconsideration. About the preconditioned matrices P ss,rt

Q1and P ss,rt

P1, we note that

the computation of the square root of both mass matrices M−1Q1

and M−1P1

is veryexpensive, so that the resulting strategies are greatly inefficient. In contrast, whenRICCG(0) is used (see Figure 5.11(top left)), the iterative stage is the most expensive.The preprocessing step takes at most 30 percent of the total CPU-time, and its costdecreases for increasing N . This is in agreement with the results in the first twocolumns of Table 5.2.

Finally, the bottom panel of Figure 5.11 shows the CPU-times needed to evaluatethe spectral residual and to solve system (5.1) with RICCG(0) for both weak Pw

Q1,NI

and strong P sQ1

approaches. As for the 2D case, the measured CPU-time needed toevaluate one spectral residual grows more rapidly than the theoretical estimate (itis O(Nd+1) rather than O(Nd)), due to memory access overhead, and this sensiblyaffects the cost of both the iteration step and the global solution stage.

Page 29: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

4450 CLAUDIO CANUTO, PAOLA GERVASIO, ALFIO QUARTERONI

6. Conclusions. We have considered the approximation by spectral methodsof the Laplace equation −Δu = f with Dirichlet boundary conditions in Ω ⊂ Rd

with d = 2, 3. We have also addressed the case of an elliptic operator with variablecoefficients, as well as the case of Neumann boundary conditions. Both strong (i.e.,collocation based on Legendre–Gauss–Lobatto nodes) and weak (i.e., Galerkin withLegendre–Gauss–Lobatto numerical integration) approaches have been taken into ac-count in building up spectral matrices. We have also considered symmetrized-strongpreconditioners in order to take advantage of algebraic solvers for s.p.d. matrices.Eleven different kind of finite-element preconditioners have been considered, based oneither P1, Q1, or Q1,NI (i.e., Q1 with numerical integration) shape functions. Verticesof finite-element meshes coincide with the Legendre–Gauss–Lobatto quadrature nodesused for the primal spectral approximation.

The preconditioner based on the Q1-FEM approach for the strong form of theprimal spectral approximation gives the smallest condition number. Nevertheless, ifwe measure preconditioner efficiency in terms of memory storage and CPU-time, thebest performance is obtained for weak and strong preconditioners based on a Q1,NI-FEM approach, for both 2D and 3D geometries. The efficiency of P1 preconditionersdepends on the kind of mesh on which they are built, or, more precisely, on gridorientation. Our analysis highlights iterative strategies for solving (2.4) or (2.6) whoseoverall cost scales as nβ , with β slightly less than 3/2 (in 2D) and 4/3 (in 3D), in thetotal number n of d.o.f.’s (explored up to some O(105)).

Acknowledgment. We warmly thank Dr. Mario Arioli for his advice and helpon the use of multifrontal direct solvers.

REFERENCES

[1] M. Arioli, Personal communication, STFC Rutherford Appleton Laboratory, Chilton, Didcot,Oxfordshire, UK, 2008.

[2] O. Axelsson and G. Lindskog, On the eigenvalue distribution of a class of preconditioningmethods, Numer. Math., 48 (1986), pp. 479–498.

[3] C. Bernardi and Y. Maday., Approximations Spectrales de Problemes aux Limites Elliptiques,Springer-Verlag, Paris, 1992.

[4] S. Beuchler, Multigrid solver for the inner problem in domain decomposition methods forP -FEM, SIAM J. Numer. Anal., 40 (2002), pp. 928–944.

[5] S. Beuchler, R. Schneider, and C. Schwab, Multiresolution weighted norm equivalences andapplications, Numer. Math., 98 (2004), pp. 67–97.

[6] C. Canuto, Stabilization of spectral methods by finite element bubble functions, Comput.Methods Appl. Mech. Engrg., 116 (1994), pp. 13–26.

[7] C. Canuto, M. Y. Hussaini, A. Quarteroni, and T. A. Zang, Spectral Methods. Fundamen-tals in Single Domains, Springer, Heidelberg, 2006.

[8] C. Canuto and A. Quarteroni, Preconditioned minimal residual methods for Chebyshevspectral calculations, J. Comput. Phys., 60 (1985), pp. 315–337.

[9] M. A. Casarin, Quasi-optimal Schwarz methods for the conforming spectral element discretiza-tion, SIAM J. Numer. Anal., 34 (1997), pp. 2482–2502.

[10] T. F. Chan and H. A. van der Vorst, Approximate and incomplete factorizations, in Par-allel Numerical Algorithms (Hampton, VA, 1994), Vol. 4, Kluwer Academic Publishers,Dordrecht, The Netherlands, 1997, pp. 167–202.

[11] T. A. Davis, UMFPACK Version 5.0.1, Technical report, University of Florida, Gainesville,FL, 2006.

[12] T. A. Davis and I. S. Duff, A combined unifrontal/multifrontal method for unsymmetricsparse matrices, ACM Trans. Math. Software, 25 (1999), pp. 1–20.

[13] M. O. Deville and E. H. Mund, Chebyshev pseudospectral solution of second-order ellipticequations with finite element preconditioning, J. Comput. Phys., 60 (1985), pp. 517–533.

[14] M. O. Deville and E. H. Mund, Finite-element preconditioning for pseudospectral solutionsof elliptic problems, SIAM J. Sci. Stat. Comput., 11 (1990), pp. 311–342.

Page 30: FINITE-ELEMENT PRECONDITIONING OF G-NI ...SIAM J. SCI. COMPUT. c 2010 Society for Industrial and Applied Mathematics Vol. 31, No. 6, pp. 4422–4451 FINITE-ELEMENT PRECONDITIONING

FINITE-ELEMENT PRECONDITIONING OF G-NI METHODS 4451

[15] I. S. Duff, MA57—A code for the solution of sparse symmetric definite and indefinite systems,ACM Trans. Math. Software, 30 (2004), pp. 118–144.

[16] I. S. Duff and S. Pralet, Strategies for scaling and pivoting for sparse symmetric indefiniteproblems, SIAM J. Matrix Anal. Appl., 27 (2005), pp. 313–340.

[17] I. S. Duff and J. K. Reid, The multifrontal solution of indefinite sparse symmetric linearequations, ACM Trans. Math. Software, 9 (1983), pp. 302–325.

[18] P. F. Fischer, An overlapping Schwarz method for spectral element solution of the incom-pressible Navier–Stokes equations, J. Comput. Phys., 133 (1997), pp. 84–101.

[19] G. Karypis lab, MeTiS, A software package for partitioning unstructured graphs, partition-ing meshes, and computing fill-reducing orderings of sparse matrices, available online athttp://glaros.dtc.umn.edu/gkhome/views/metis.

[20] P. Haldenwang, G. Labrosse, S. Abboudi, and M. Deville, An element-by-element solutionalgorithm for problems of structural and solid mechanics, Comput. Methods Appl. Mech.Engrg., 36 (1983), pp. 241–254.

[21] J. M. Melenk, On condition numbers in hp-FEM with Gauss–Lobatto-based shape functions,J. Comput. Appl. Math., 139 (2002), pp. 21–48.

[22] S. A. Orszag, Spectral methods for problem in complex geometries, J. Comput. Phys., 37(1980), pp. 70–92.

[23] S. V. Parter, Preconditioning Legendre spectral collocation methods for elliptic problems I:Finite difference operators, SIAM J. Numer. Anal., 39 (2001), pp. 330–347.

[24] S. V. Parter, Preconditioning Legendre spectral collocation methods for elliptic problems II:Finite element operators, SIAM J. Numer. Anal., 39 (2001), pp. 348–362.

[25] S. V. Parter and E. E. Rothman, Preconditioning Legendre spectral collocation approxima-tions to elliptic problems, SIAM J. Numer. Anal., 32 (1995), pp. 333–385.

[26] A. Quarteroni and E. Zampieri, Finite element preconditioning for Legendre spectral collo-cation approximations to elliptic equations and systems, SIAM J. Numer. Anal., 29 (1992),pp. 917–936.

[27] STFC, Numerical Analysis Group, Hsl, A collection of FORTRAN codes for large-scalescientific computation, available online at Science and Technology Facilities Council,http://hsl.rl.ac.uk/hsl2007.

[28] H. A. van der Vorst, High performance preconditioning, SIAM J. Sci. Stat. Comput., 10(1989), pp. 1174–1185.

[29] H. A. van der Vorst, Iterative Krylov Methods for Large Linear Systems, Cambridge Monogr.Appl. Comput. Math. 13, Cambridge University Press, Cambridge, UK, 2003.