Finite Element Methods with B-Splines
This page intentionally left blank
F R O N T I E R S IN APPLIED MATHEMATICS The SIAM series on Frontiers in Applied Mathematics publishes monographs dealing with creative work in a substantive field involving applied mathematics or scientific computation. All works focus on emerging or rapidly developing research areas that report on new techniques to solve mainstream problems in science or engineering. The goal of the series is to promote, through short, inexpensive, expertly written monographs, cutting edge research poised to have a substantial impact on the solutions of problems that advance science and technology. The volumes encompass a broad spectrum of topics important to the applied mathematical areas of education, government, and industry.
EDITORIAL BOARD H.T. Banks, Editor-in-Chief, North Carolina State University Richard Albanese, U.S. Air Force Research Laboratory, Brooks AFB Carlos Castillo-Chavez, Cornell University Doina Cioranescu, Universite Pierre et Marie Curie (Paris VI) Lisa Fauci,Tulane University Pat Hagan, Bear Stearns and Co., Inc. Belinda King,Virginia Polytechnic Institute and State University Jeffrey Sachs, Merck Research Laboratories, Merck and Co., Inc. Ralph Smith, North Carolina State University AnnaTsao, AlgoTek, Inc.
BOOKS PUBLISHED IN FRONTIERS IN APPLIED MATHEMATICS Hollig, Klaus, Finite Element Methods with B-Splines Stanley, Lisa G. and Stewart, Dawn L, Design Sensitivity Analysis: Computational Issues of Sensitivity Equation Methods Vogel, Curtis R., Computational Methods for Inverse Problems Lewis, F. L.; Campos, j.; and Selmic, R., Neuro-Fuzzy Control of Industrial Systems with Actuator Nonlinearities Bao, Gang; Cowsar, Lawrence; and Masters, Wen, editors, Mathematical Modeling in Optical Science Banks, H.T.; Buksas, M.W.; and Lin,T, Electromagnetic Material Interrogation Using Conductive Interfaces and Acoustic Wavefronts Oostveen, Job, Strongly Stabilizable Distributed Parameter Systems Griewank, Andreas, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation Kelley, C.T., Iterative Methods for Optimization Greenbaum.Anne, Iterative Methods for Solving Linear Systems Kelley, C.T., Iterative Methods for Linear and Nonlinear Equations Bank, Randolph E., PLTMG:A Software Package for Solving Elliptic Partial Differential Equations. Users'Guide 7.0 More, Jorge J. and Wright, Stephen J., Optimization Software Guide Rude, Ulrich, Mathematical and Computational Techniques for Multilevel Adaptive Methods Cook, L. Pamela, Transonic Aerodynamics: Problems in Asymptotic Theory Banks, H.T., Control and Estimation in Distributed Parameter Systems Van Loan, Charles, Computational Frameworks for the Fast Fourier Transform Van Huffel, Sabine andVandewalle.Joos, TheTotal Least Squares Problem:Computational Aspects and Analysis Castillo, Jose E., Mathematical Aspects of Numerical Grid Generation Bank, R. E., PLTMG: A Software Package for Solving Elliptic Partial Differential Equations. Users' Guide 6.0 McCormick, Stephen F., Multilevel Adaptive Methods for Partial Differential Equations Grossman, Robert, Symbolic Computation: Applications to Scientific Computing Coleman,Thomas F. and Van Loan, Charles, Handbook for Matrix Computations McCormick, Stephen F, Multigrid Methods Buckmasterjohn D., The Mathemat/cs of Combustion Ewing, Richard E., The Mathematics of Reservoir Simulation
Finite Element Methods with B-Splines
Klaus Hollig Universitat Stuttgart Stuttgart, Germany
Society for Industrial and Applied Mathematics Philadelphia
Copyright © 2003 by the Society for Industrial and Applied Mathematics. 109876543 2 I All rights reserved. Printed in the United States of America. No part of this book may be reproduced, stored, or transmitted in any manner without the written permission of the publisher. For information, write to the Society for Industrial and Applied Mathematics, 3600 University City Science Center, Philadelphia, PA 19104-2688. Library of Congress Cataloging-in-Publication Data Hollig, K. (Klaus) Finite element methods with B-splines / Klaus Hollig. p. cm. — (Frontiers in applied mathematics) Includes bibliographical references and index. ISBN 0-89871-533-4 I. Structural analysis (Engineering) 2. Finite element method. 3. Spline theory. I. Title. II. Series. TA645 .H63 2003 620'.OOI'5I535—dc2l 2002036509
is a registered trademark.
Contents Preface
ix
1
Introduction
1
2
Basic Finite Element Concepts 2.1 Model Problem 2.2 Mesh-Based Elements 2.3 Sobolev Spaces 2.4 Abstract Variational Problems 2.5 Approximation Error
7 7 9 12 16 19
3
B-Splines 3.1 The Concept of Splines 3.2 Definition and Basic Properties 3.3 Recurrence Relation 3.4 Representation of Polynomials 3.5 Subdivision 3.6 Scalar Products
23 23 25 27 29 32 35
4
Finite 4.1 4.2 4.3 4.4 4.5
37 37 40 43 46 50
5
Approximation with Weighted Splines 5.1 Dual Functions 5.2 Stability 5.3 Polynomial Approximation 5.4 Quasi-Interpolation 5.5 Boundary Regularity 5.6 Error Estimates for Standard Weight Functions
Element Bases Multivariate B-Splines Splines on Bounded Domains Weight Functions Web-Splines Hierarchical Bases
VII
53 53 56 60 63 65 67
viii
Contents
6
Boundary Value Problems 6.1 Essential Boundary Conditions 6.2 Natural Boundary Conditions 6.3 Mixed Problems with Variable Coefficients 6.4 Biharmonic Equation 6.5 Linear Elasticity 6.6 Plane Strain and Plane Stress
71 71 75 79 82 86 89
7
Multigrid Methods 7.1 Multigrid Idea 7.2 Grid Transfer 7.3 Basic Algorithm 7.4 Smoothing and Coarse Grid Approximation 7.5 Convergence
95 95 99 103 105 108
8
Implementation 8.1 Boundary Representation 8.2 Classification of Grid Cells 8.3 Evaluation of Weight Functions 8.4 Numerical Integration 8.5 Matrix Assembly
113 114 116 119 124 127
Appendix
131
Notation and Symbols
135
Bibliography
137
Index
143
Preface Piecewise polynomial approximations are fundamental to geometric modeling, computer graphics, data fitting, and finite element methods. For most applications, B-splines have become a widely accepted standard because of their flexibility and computational efficiency. So far, finite element simulations are the sole exception. The majority of schemes use low-degree polynomial elements on meshes conforming to the geometry of the parameter domains. Boundary conditions and stability requirements seem to prevent the use of splines on uniform grids in a straightforward fashion. However, these difficulties can be overcome. The resulting methods combine the advantages of standard finite elements and B-spline representations. In particular, no mesh generation is required, which eliminates a difficult and often very time-consuming preprocessing step. We describe in this book the construction of several types of B-spline bases for approximating boundary value problems. Moreover, we discuss the implementation of spline-based finite element schemes and derive error estimates. The performance of these methods is illustrated for typical applications in field theory, fluid dynamics, and elasticity. The book is essentially self-contained. Some basic facts from functional analysis and about partial differential equations, which are required, are listed in an appendix. Hence, the material is easily accessible not only for a reader with some background in geometric modeling and finite element methods, but also for beginning graduate students in numerical analysis and engineering. I gratefully acknowledge the support by our Numerical Analysis and Geometric Design group (NAGD) in Stuttgart. Above all, I thank Ulrich Reif and Joachim Wipper for a continuing excellent cooperation, which led to the discovery of web-splines (see http://www.web-spline.de). Extensive software has been developed by Joachim Wipper (2D) and Jorg Horner (3D)—many thanks for great enthusiasm despite thousands of lines of C and MATLAB code. In addition, several students have contributed to our finite element programming projects: Alexander Fuchs [36] and Dietrich Nowottny [66] (mesh generation), Christian Apprich (penalty methods and web software), Ronald Halmen (Lagrange multiplier techniques), Anja Streit and Andreas Kopf (elasticity), Marco Bossle, Winfried Geis, and Bernhard Russig (weight functions). The University of Stuttgart and the state of Baden-Wiirttemberg have provided excellent research support. In particular, I would like to acknowledge the funding by the Technologie-Lizenz-Biiro (TLB) for our web-spline project.
IX
x
Preface
I have very much enjoyed writing this book, especially because I could concentrate on the pleasant part. Very special thanks to my daughter Natalie for helping by patiently typing various versions of my manuscript, never mentioning that KlgX seems much harder than Microsoft Word!
Klaus Hollig Zavelstein, December 2001
Chapter 1
Introduction
The finite element method (FEM) has become the most widely accepted general purpose technique for numerical simulations in engineering and applied mathematics. Principal applications arise in continuum mechanics, fluid flow, thermodynamics, and field theory (cf., e.g., [95, 52, 25, 55]). In these areas computational methods are essential and benefit strongly from the enormous advances in computer technology. While the label "finite element method" was first used by Clough [26], the key ideas date back much further [94] (see Figure 1.1). Ritz [74] solved variational problems with finite-dimensional approximations, an approach already employed by Rayleigh [70, 71]. Following an observation of Bubnow [21], Galerkin [38] approximated solutions of boundary value problems directly, without resorting to the variational formulation. Courant [29] used hat-functions, the standard finite element for analyzing the St. Vernant torsion problem. Hence, the fundamental mathematical concepts had been introduced long before their practical potential was recognized. The systematic use of variational approximations in engineering applications began with the work of Turner, Clough, Martin, and Topp [90] and Argyris [3, 4]. Their results initiated intensive research, and finite elements soon became the method of choice in structural analysis. When Strang and Fix wrote the first textbook on the mathematical theory of finite element methods [87], more than 200 papers related to this subject had been published (cf. [62] for a comprehensive listing). Now, almost 30 years later, various aspects of finite element techniques remain a central area of engineering research and development. Splines play an important role in approximation and geometric modeling. They are used in data fitting, computer-aided design (CAD), automated manufacturing (CAM), and computer graphics (cf., e.g., [44, 32]). Extensive software is available, and algorithms are almost as efficient as for polynomials [16, 51]. The early work of Schoenberg [79] revealed that splines possess powerful approximation properties. Subsequently, many approximation schemes have been proposed [2]. In particular, after de Boor's results about B-splines [14], spline techniques became popular for a broad range of applications. His algorithms [15] are still the basic building blocks for almost any spline software. Another fundamental contribution is due to Bezier [9, 10, 11],
1
2
Chapter 1. Introduction
Figure 1.1. History of finite elements and splines. who introduced modern piecewise polynomial modeling techniques to CAD/CAM. He recognized that the Bernstein basis [8] yields a very intuitive geometric description of free form curves and surfaces. Similar results were obtained earlier by de Casteljau [23], whose work is, however, much less known.'Bezier's and de Casteljau's new concepts were soon generalized to splines, an important step being the knot insertion algorithms of Bohm [12] and Riesenfeld et al. [61, 27]. This led to a revival of research on splines in the 1980s and considerably enriched the existing theory. As a consequence, B-splines became a standard not only for numerical approximation schemes, but also for free form design and geometry processing. With geometric modeling and numerical simulation closely linked in engineering applications, the use of B-splines as finite element basis functions suggests itself. But, as is illustrated in Figure 1.2, at first sight this seems infeasible for two reasons: (i) Essential boundary conditions cannot be modeled easily. For example, if a linear combination of B-splines, p = ^k u^bk, is required to vanish on the boundary 3D of a domain D, then, in general, all coefficients M* of B-splines with support intersecting 3D must be 0. Hence, p equals 0 outside the light gray region in the figure, which results in very poor approximation order for solutions of differential equations with Dirichlet boundary conditions. 'Bezier and de Casteljau were scientists working for different French car manufacturers. While Bezier's work was published, de Casteljau's research was kept confidential for many years.
Chapter 1. Introduction
3
Figure 1.2. Grid cells of biquadratic B-splines with support intersecting a bounded domain. (ii) The restricted B-spline basis is not uniformly stable. As shown in the figure, the basis may contain B-splines bj with very small support in D consisting only of portions of the dark gray boundary grid cells. This leads to excessively large condition numbers of finite element systems and can cause extremely slow convergence of iterative methods. As is implied by the title of this book, both difficulties can be overcome. The resulting methods combine the advantages of B-spline approximations on regular grids and standard mesh-based finite elements. They provide a natural link between geometric modeling and finite element methods. In hindsight, the solution to the first of the above-mentioned problems is simple. Homogeneous essential boundary conditions can be modeled via weight functions, a technique already employed by Kantorowitsch and Krylow [54]. For example, solutions which vanish on 3D are approximated with linear combinations of weighted B-splines:
where K denotes indices of B-splines with some support in D and w is a smooth positive function on D with w\dD = 0. The construction of such weight functions was extensively studied by Rvachev et al. (cf., e.g., [76, 77]). His R-function method (RFM) provides efficient algorithms for domains defined as Boolean combinations of elementary sets. Resolving the stability problem, caused by the outer B-splines bj, is slightly more subtle. A well-conditioned basis can be obtained by forming appropriate linear combinations
as described in [46]. The inner indices i e / correspond to B-splines with at least one grid cell of their support contained in D, and /(/) c K\I are small sets of neighboring outer indices j. These extended B-splines inherit all basic features of the standard B-splines &,. In particular, their linear span maintains full approximation order.
Chapter 1. Introduction
4
Combining the above ideas gives rise to the definition of weighted extended B-splines (web-splines) [46]. These basis functions possess the usual properties of standard finite elements. In addition, there are a number of algorithmic advantages of B-spline bases which lead to very efficient simulation techniques [47, 49]. • No mesh generation is required. • The uniform grid is ideally suited for parallelization and multigrid techniques. • Accurate approximations are possible with relatively low-dimensional subspaces. • Smoothness and approximation order can be chosen arbitrarily. • Hierarchical bases permit adaptive refinement. Given the difficulty of constructing finite element meshes (cf., e.g., [50, 67, 37]), the first property is probably the most important one. Utilizing a regular grid not only eliminates a difficult preprocessing step, but also permits very efficient implementations of algorithms. Moreover, the use of B-splines reduces the dimension of finite element systems, in particular when high accuracy is required. Regardless of the degree, there is only one parameter for each grid cell. Outline of the Text The description of the new spline-based methods involves a combination of finite element analysis and approximation theory. Therefore, we review in the first two chapters some of the most relevant definitions and results from both fields. In chapter 2 we describe the RitzGalerkin approximation, the classical finite element scheme. We consider the variational problem where a is an elliptic bilinear form and X a continuous linear functional on a Hilbert space H (cf., e.g., [24, 87]). Despite its simplicity, this abstract formulation includes a broad range of applications. Moreover, it permits very elegant derivations of the standard error estimates. Chapter 3 is devoted to univariate uniform B-splines. We derive their basic properties and describe algorithms which are particularly important for finite element methods. Having briefly discussed necessary background material, we turn to the description of spline-based finite element methods. Chapter 4 introduces three types of finite element bases: weighted B-splines, web-splines, and hierarchical B-splines. These basis functions have similar properties as standard finite elements. We discuss this in detail for web-splines in chapter 5. In particular, we prove uniform stability and construct projection operators with optimal approximation order. With the aid of these results, the analysis of RitzGalerkin methods with weighted splines is routine. We consider in chapter 6 several typical variational problems of the form (1.1), including Poisson's equation as a simple model problem, incompressible flow, the plate problem, and the Lame-Navier system in linear elasticity. The last two chapters are devoted to the implementation of finite element schemes. In chapter 7 we describe the basic components of multigrid algorithms and establish the
Chapter 1. Introduction
5
grid-independent convergence rate for the w-cycle. Chapter 8 provides algorithmic details for the construction of the web-basis and the assembly of Ritz-Galerkin matrices. As is to be expected, the regular structure of the spline spaces offers many computational advantages. Most of the topics in this book do not require advanced mathematical techniques. Merely for existence theorems and error estimates some background in functional analysis is helpful. The relevant results are listed in an appendix. Notation Important definitions and results are highlighted in light gray boxes. They are labeled with c.n, where c is the chapter and n the statement number. The labels A.n refer to statements in the appendix. As usual, equations are labeled by (c.n) and [n] refers to the list of references. Dependencies on parameters are not always indicated if they are clear from the context. For example, we write for the m-variate tensor product B-spline of coordinate degree n, grid width n, and support In estimates, the dependence of constants on parameters pv is indicated in the form const(pi, p2, ...). If the dependence is clear from the context, or not particularly relevant, we use the symbols <,>, and x. For example,
characterizes all points jc with distance > const h from the boundary of D. A spline approximation M/, with grid width n of a function u is usually written in the form
and U = {uk\keK is the vector of coefficients. The terms vector and matrix are used in a broader sense. Their subscripts need not be integers. For example, for the Ritz-Galerkin matrices
the indices are often integer vectors from a subset / of TLm. With this more general interpretation it is convenient not to distinguish between row and column vectors; i.e., a scalar product is written as U V without transposing one of the vectors. We say that a function is smooth if it possesses the regularity required by the current context. Using this convention, we do not have to keep track of the minimal number of required derivatives, which sometimes distracts from the essential arguments. Slightly more restrictive than standard terminology, the term domain is used for a bounded open set D c W with Lipschitz boundary (cf. A.6 for details). Partial derivatives are denoted by
6
Chapter 1.
Introduction
For example, is the gradient of an w-variate function M, and A = Y^™=\ ^v l& me Laplace operator. The 2-norm for vectors and matrices is denoted by || • ||. Finally, ||u||i is the norm of a function u in the Sobolev space Hi(D}, corresponding to the scalar product {•, -}t (cf. section 2.3).
Chapter 2
Basic Finite Element Concepts This chapter introduces fundamental finite element principles. The basic theory is described in a very general context, which is independent of the specifics of the differential equations, boundary conditions, and approximating subspaces. Despite this conceptual simplicity, the methods apply to a broad range of applications. In section 2.1 we explain the classical Ritz-Galerkin scheme for Poisson's equation, which serves as a typical model problem. Section 2.2 gives examples of basis functions, defined on triangular or quadrilateral meshes. These standard finite elements are discussed only very briefly, merely to point out essential differences to the weighted spline bases, introduced in chapter 4. After briefly introducing Sobolev spaces in section 2.3, we formulate in section 2.4 the finite element method in an abstract setting. In particular, we define the concept of ellipticity and prove the Lax-Milgram existence theorem for variational problems. Finally, in section 2.5 we derive two basic error estimates, Cea's inequality, and the duality principle of Aubin and Nitsche.
2.1
Model Problem
To explain the basic finite element idea, we consider Poisson's equation with homogeneous boundary conditions, for a domain D c Mm as a model problem. This boundary value problem describes a number of physical phenomema (cf., e.g., [30]). A simple two-dimensional example is shown in Figure 2.1. An elastic membrane is fixed at its boundary 3D and subjected to a vertical force with density /. If the resulting displacement u(x\ , Jt2) is small, it can be accurately modeled by Poisson's equation. Multiplying the differential equation — Aw = / by a smooth function u, which vanishes on the boundary, and integrating by parts (cf. A.9), it follows that
This weak form of Poisson's problem suggests a natural discretization. We approximate the solution u by a linear combination 7
Chapter 2. Basic Finite Element Concepts
8
Figure 2.1. Displacement (magnified) of an elastic membrane.
of basis functions fi, which satisfy the boundary condition Bj\3D = 0. Usually, the "finite elements" Bf are piecewise polynomials with small support on a mesh of the domain D, and h denotes the maximum diameter of the mesh cells (examples will be given in the next section). Replacing « by w/, in (2.2) and choosing v = B^, we obtain a linear system
for the coefficients U — {«/}. We summarize this basic finite element scheme, which was first proposed by Ritz [74] and Galerkin [38] at the beginning of the 20th century, as follows. 2.1 Ritz-Galerkin Approximation of Poisson's Problem The coefficients of a standard finite element approximation
for the boundary value problem
are determined from the linear system GU = F with
2.2. Mesh-Based Elements
9
The Ritz-Galerkin method can also be derived via a variational approach. To this end we note that a smooth solution u of Poisson's problem minimizes the energy functional
over all smooth functions which vanish on 3D. The characterization of a minimum,
where t € R. is arbitrary, again leads to (2.2). Since the right-hand side is a parabola in t, the expression in square brackets must vanish for all admissible v. We can define the finite element approximation by minimizing Q over the linear span
of the basis functions fi,. Expanding Q(^(- «/#/) yields the quadratic form
which is minimal if GU = F. There is a subtle point hidden in this rather formal argumentation. We have to choose the appropriate class of functions H to ensure that inf ueH Q(u) is attained. Of course, from a numerical point of view, it is legitimate to assume the existence of a smooth solution and to focus entirely on its approximation. However, as we will see in section 2.4, finite element methods and the analysis of variational problems are intimately related. We can establish the existence of weak solutions for very general boundary value problems and, at the same time, prove the solvability of Ritz-Galerkin systems. This will justify the somewhat heuristic arguments for the model problem.
2.2
Mesh-Based Elements
We give in this section a brief overview of some typical classical finite elements. These well-known basis functions will not be used in the remainder of the book, which is devoted to meshless spline approximations. We sketch the standard constructions primarily to compare them with different techniques. They also serve as convenient examples for the abstract variational approach discussed in this chapter. Most commonly used finite elements are defined on a mesh, i.e., a partition of the domain D into triangles, quadrilaterals, tetrahedra, hexahedra, or other polygonal cells. Triangles and tetrahedra are preferred for most applications since they can be adapted more easily to complicated boundaries. In particular, generating hexahedral meshes in three dimensions is rather difficult. Often one has to resort to mixed partitions in order to overcome the geometric difficulties. Figure 2.2 shows a triangulation of a two-dimensional domain with the hat-function, the basic piecewise linear finite element. A hat-function B{ equals 1 at an interior vertex jc,- and vanishes on all triangles T not containing jc, . Hence, the graph of #, is a pyramid
10
Chapter 2. Basic Finite Element Concepts
Figure 2.2. Hat-function on a triangulation. with star-shaped support. For this very simple basis function, the coefficients M, of an approximation
coincide with the values M /,(*/). The Ritz-Galerkin approximation 2.1 of Poisson's problem is easily computed. The linear system GU = F is assembled by adding the contributions from each triangle r of the triangulation, i.e.,
The gradients in the first integral are constant and can be determined by transforming the hat-functions to a standard reference triangle. For the entries of the right-hand side F numerical integration is used. Because of the small support of the hat-functions, the matrix G is sparse, and the Ritz-Galerkin system can be solved efficiently with iterative methods. While simple to implement, piecewise linear finite element methods are not very accurate. In general, the error is at best of order 0(/z 2 ), where h is the maximum diameter of the triangles. Moreover, if standard triangulation algorithms are used, homogeneous Dirichlet boundary conditions are fulfilled exactly essentially only for convex domains. Strictly speaking, #/ is not an admissible basis function if an edge of its support lies outside the domain D (cf. [87] for a discussion of such variational crimes). Better approximations can be obtained with polynomials of higher degree. Figure 2.3 gives a few examples of commonly used constructions. It is customary to describe these finite elements by the parameters which determine the polynomials on each triangle. Dots indicate values, circles gradients and second-order derivatives, and small marks on edges normal derivatives. For example, the data for the Argyris element consist of derivatives
2.2. Mesh-Based Elements
11
Figure 2.3. Examples of bivariate finite elements. up to second order at each vertex and normal derivatives on the midpoints of each edge. The total number of parameters per triangle is 3(1 +2 + 3) + 3 = 21, which matches the dimension of quintic bivariate polynomials. For each of the finite elements in Figure 2.3, the data shared by adjacent triangles are chosen to yield at least continuity across edges. This is necessary to permit the computation of gradients. For example, the approximations constructed with the quartic Lagrange element on the left are univariate quartic polynomials along each edge, which are uniquely determined by the five interpolated values. Hence, polynomials on adjacent triangles match, so that the basis functions are continuous (fi, 6 C°). Continuity of the gradient is more difficult to achieve. Either one has to resort to high polynomial degree or auxiliary subdivision, as is illustrated by the two examples on the right of the figure. For the Argyris triangle as well as for the Clough-Tocher element, the data associated with an edge determine not only the polynomial but also its normal derivative along the edge uniquely. The corresponding basis functions have continuous first-order partial derivatives; i.e., they belong to C 1 . As for hat-functions, the data for finite element basis functions fi, have exactly one nonzero entry. However, in general there are different types, depending on whether /?, is associated with an interpolated value or a derivative. For example, the Clough-Tocher finite element subspace is spanned by three basis functions B" for each vertex jc/ and one basis function B^ for each edge e^ • The functions B" have support on the macro triangles sharing the vertex X(. For a = (0, 0) they equal 1 at *,• and grad B?(x{) = (0, 0); for a equal to (1, 0) or (0, 1) they vanish at Jt, with grad #,(•*/) = oc. The function Bk has support on the macro triangles sharing the edge e^ and its normal derivative equals 1 at the midpoint of this edge. There exists an extensive theory of mesh-based elements (cf., e.g., [24]). The examples in Figure 2.3 are not even representative of the broad spectrum of possibilities. However, they illustrate the following typical properties of basis functions on unstructured meshes.
12
Chapter 2. Basic Finite Element Concepts
12 Properties of Finite Elements The basis functions fi, of standard mesh-based finite element subspaces axe piecewise polynomials of degree < n with support on few neighboring mesh cells. They are at least continuous and compatible with homogeneous boundary conditions. The first property implies that smooth functions can be approximated with order O(h"+l) under certain mild additional assumptions. The second condition is necessary for the standard Ritz-Galerkin scheme. We will not go into details since a comprehensive discussion will be given for the weighted spline-based methods described in this book. However, we note a few disadvantages of mesh-based finite elements, apparent from the above examples. Generating good meshes can be very difficult, particularly in three dimensions (cf., e.g., [50, 67]). The meshing algorithms often require the major portion of the computing time in finite element simulations. While the assembly of Ritz-Galerkin matrices is straightforward, using quadratic or higher degree polynomials leads to excessively large systems. For example, the dimension of cubic polynomials is (^) = 20 in three dimensions. Therefore, only moderately accurate approximations are possible. Finally, the boundary conditions are merely approximated for domains with curved boundaries. To maintain the overall approximation order, curved isoparametric elements have to be used. Weighted spline-based finite elements, introduced in chapter 4, overcome the above difficulties. No mesh generation is required, accurate smooth approximations are possible with relatively low-dimensional finite element subspaces, and boundary conditions are satisfied exactly.
2.3
Sobolev Spaces
For analyzing partial differential equations as well as numerical schemes, the choice of the appropriate function spaces is important. The classical theory of elliptic boundary value problems uses functions with Holder-continuous derivatives (cf., e.g., [59]), requiring in particular that all terms appearing in the differential equations are continuous up to the boundary. However, this approach is limited to smooth problems and not well suited for finite element approximations. The natural framework for variational techniques becomes apparent when considering Poisson's problem
on the unit square D — (0, I) 2 . For this special domain the solution is readily obtained by expanding the right-hand side into a Fourier series:
Since the sine functions
2.3. Sobolev Spaces
13
a comparison of coefficients yields
for the sine coefficients of u = square integrable:
k(pk-
This formal procedure is justified if / is
(cf. A.7). By the standard theory of orthogonal expansions, the series for / and u converge in the scalar product norm || • ||0. The coefficients of u decay more rapidly. From (2.4) we see that the sine coefficients of any second-order partial derivative 3V3A(M are majorized by
Consequently, for all v, M S {1,2}. The space LI also arises in connection with the Poisson energy functional
which is well defined for functions with square integrable first-order partial derivatives: 3 V M € L,2(D). These considerations motivate the following definition. U Sobolev Spaces The Sobolev space H(D) consists of all functions u for which the partial derivatives of order < l,
am sqoane inte^ratote. It is a Hilbert space (cf.A.4) with the scalar product
In addition to the induced norm
the standard semi-norm on Ht is defined
as
i.e., it involves only derivatives of the highest order.
14
Chapter 2. Basic Finite Element Concepts
We have yet to define precisely what is meant by a square integrable derivative. This is done via integration by parts. We say that an integrable function dau is a weak derivative of u on a domain D if
for all smooth functions (p with compact support in D. This formula is obviously valid for smooth functions u. Hence, it is a proper extension of the standard definition of derivatives via difference quotients. As an illustration, we consider two examples. The first is the radial function
on the unit ball D = {x e Mm : ||jc|| < 1}. For p > —m, u is integrable. Moreover, it is not difficult to see that is an integrable weak derivative of u if p > I — m despite the singularity at the origin. Using polar coordinates, we have
Therefore, u e //'(D) if p > 1 — m/2. Since for m > 2 a negative exponent p is possible, we see that functions with square integrable derivatives need not be bounded. Weak differentiability does not imply continuity. As a second example we consider on D — (— 1, I)"7 the piecewise constant function
which is discontinuous across the hyperplane S = {x e W" : x\ = 0}. We claim that u does not have a square integrable weak derivative v — d\u, i.e., that the identity
cannot hold for arbitrary smooth functions (p with compact support in D, if we insist that v € Li(D). To see this, we choose
with V(0) > 0. Then, the right-hand side of (2.5) equals
2.3. Sobolev Spaces
15
while the left-hand side tends to zero:
by the Cauchy-Schwarz inequality (cf. A. 2) and a scaling of jci . The reason for this contradiction is the assumption v e LI. If we relax the requirement of integrability, we can give a meaningful interpretation to v = d\ u as a measure IJL supported on the lower dimensional set S:
This is a simple example of so-called generalized derivatives, a basic concept in the theory of distributions (cf., e.g., [75]). Sobolev spaces can also be defined as the closure of smooth functions with respect to the norm || • ||^. This confirms that Hl is a Hilbert space. Moreover, many identities (such as integration by parts) can be conveniently derived by a limit process. While the spaces Hl are adequate for basic finite element analysis, it should be mentioned that Sobolev spaces are defined more generally for p-integrable functions (cf. A. 8). The interplay between integrability, differentiability, and dimension gives rise to a very beautiful theory, which has become indispensable for studying partial differential equations. Famous results are Sobolev's embedding theorem A. 11 and the construction of extension operators by Calderon and Stein (cf. A. 13). For working with Sobolev spaces the regularity of the domain D is important. The commonly used hypothesis is that the boundary is Lipschitz-continuous (cf. A.6), which we assume in what follows. This minimal requirement is satisfied by almost all applications of practical relevance. The domains of interest are usually more regular. They have piecewise smooth boundaries, and cusp-like singularities do not occur. For approximating elliptic problems it is convenient to use Sobolev spaces which incorporate the boundary conditions. After reduction to homogeneous form they can be imposed as linear constraints. 2.4 Sobolev Spaces with Boundary Conditions The subspace H^(D) C He(D) consists of all functions which vanish on 3D. More precisely, HQ (D) is the closure of all smooth functions with compact support in D with respect to the norm || • ||£. There is a subtle point about boundary conditions for functions in Sobolev spaces. Since integrable functions can be modified on sets of measure zero (such as dD), offhand, boundary values are not well defined. However, we can use a limit process, as in the above definition. In this way, the restriction operator
which is well defined for smooth functions, is generalized by continuous extension to Hl (D) (cf.A.10).
16
2.4
Chapter 2. Basic Finite Element Concepts
Abstract Variational Problems
The finite element method can be formulated in a very general framework. Generalizing the model problem (2.1), we consider an abstract boundary value problem
with a differential operator £ and an operator B describing the boundary conditions. Moreover, analogously to (2.2), we assume that this problem admits a variational formulation
where a is a bilinear form and A. is a linear functional on a Hilbert space H (cf. A.3, A.4). Then, for a finite element subspace B/, C //, the Ritz-Galerkin approximation Uh is defined by The coefficients w, of «/, with respect to a basis /?/ of B/, are determined via the linear system obtained by using u/, = Bk as test functions. 2.5 Ritz-Galerkin Approximation Hie Ritz-Galerkin approximation «/, = ]jT}r «,• BI € B* c H of the variational problem
is determined by the linear system
which we abbreviate as Gt/ = F. For the model problem (2.1), £ is the negative Laplace operator — A, $M = M, and
The Hilbert space H is the Sobolev space HQ (D) of functions with square integrable first derivatives and zero boundary data, defined in 2.4. A simple finite element subspace B/, consists of piecewise linear functions on a triangulation of D, as described in section 2.2. To analyze the abstract variational formulation of finite element approximations, the following property of the bilinear form a is crucial. 2.6 Ellipticity A bilinear form a on a Hilbert space H is elliptic if it is bounded and equivalent to the norm on H, i.e., if for all u, v € H
with positive constants Cb and ce.
2.4. AbstractVariational Problems
17
As we will see in chapter 6, many physical problems have natural associated elliptic bilinear forms a. Usually, the boundedness of these bilinear forms can be easily established. However, the norm equivalence is in general more subtle. For the Poisson bilinear form, the Cauchy-Schwarz inequality implies
where
is the norm on H = HQ (D) c H] (D). Hence, the constant Q, in the upper bound equals 1 in this case. The lower bound is a consequence of the Poincare-Friedrichs inequality A. 12:
Adding fD ||grad u ||2 — a(u, M) to both sides, we see that ce = (const(D) + I)" 1 . We now formulate the main existence result for elliptic variational problems. 2.7 Lax-Milgram Theorem If a is an elliptic bilinear form and A is a bounded linear functional on a Hilbert space H, then the variational problem
has a unique solution u € V for any closed subspace V of H. Moreover, if a is syaaaetric, the solution u can be characterized as the minimum of the quadratic form
onV. For finite element approximations, the subspace V = B/, has finite dimension, and the variational problem is equivalent to the Ritz-Galerkin system GU = F, defined in 2.5. In this case, the ellipticity of a implies that the matrix G is positive definite:
for Uh 7^ 0. Hence, G is invertible and the Ritz-Galerkin system uniquely solvable. This simple observation already settles the part of the Lax-Milgram theorem relevant for numerical schemes. However, the infinite-dimensional case is also of fundamental importance. In particular, choosing V = H yields the existence of weak solutions. Therefore, we include a proof, although it does not quite fall into our context.
18
Chapter 2. Basic Finite Element Concepts
With the appropriate tools from functional analysis the arguments are not difficult. We interpret the variational problem as an identity between bounded linear functionals on the Hilbert space V and denote the functional on the left-hand side by
Its boundedness follows from the boundedness of a:
By the Riesz representation theorem A.5, any bounded linear functional Q on the Hilbert space V can be written as where {•, •) is the scalar product on V (identical to the scalar product on //) and 7£ is an isometry onto V. Hence, the variational problem becomes
We rewrite this identity as the fixed point equation
and show that the linear operator S is a contraction for small positive &) (the infinitedimensional analogue of Richardson's iteration for symmetric positive definite matrices). As a consequence, the unique solvability, asserted by the Lax-Milgram theorem 2.7, follows from Banach's fixed point theorem. The norm
can be estimated using the ellipticity of a. By definition of ~R, and A, the scalar product on the right-hand side equals
which is less than 1 for CD = The characterization of a solution as the minimum of a quadratic form in the symmetric case can be verified as in section 2.1. Alternatively, we can use the fact that a(u, u) is a scalar product which induces an equivalent norm || • ||a on H:
Then, by the Riesz representation theorem A.5, the functional A can be identified with an element RX of H, i.e., Hence, we can rewrite the quadratic form as
2.5. Approximation Error
19
This shows that minimizing Q is equivalent to finding the best approximation to RX from V. We recognize the variational problem
as the well-known characterization of the solution to this basic approximation problem (cf. A.4). The simplicity of the symmetric case is deceptive. According to the above argument we have u = Rh. if V = H, an almost trivial existence proof. However, we should not forget that this approach just yields a weak solution. In the model problem, u e //0'; i.e., merely the first derivatives are square integrable. Some hard analysis is required to improve the regularity and justify a pointwise interpretation of the differential equation.
2.5
Approximation Error
The error of finite element approximations w/, can be related in a natural way to the error of the best approximation from the subspaces B/,. This allows a priori estimates without any detailed knowledge about the differential equation or the Ritz-Galerkin solution. The crucial identity is the orthogonality relation
which follows by subtracting the Ritz-Galerkin equations (2.7) from the characterization (2.6) of weak solutions, setting v = Vh — Wh- If the elliptic bilinear form a is symmetric, it represents a scalar product on H, and (2.8) implies that Uh is the best approximation to u with respect to the norm Figure 2.4 illustrates the elementary geometric argument. Since ce \\u \\2 < a(u, u) < Q, \\u ||2, the error of the best approximation in the standard norm of H is at most by a constant factor larger. This important a priori bound for RitzGalerkin approximations is also valid for nonsymmetric bilinear forms.
Figure 2.4. Best approximation Uh e B/, to u in the scalar product norm
20
Chapter 2. Basic Finite Element Concepts
2.8 Cea's Inequality The error of the Ritz-Galerkin approximation UH & u for an elliptic bilinear form a satisfies where Q, and ce are the constants in definition 2.6. The proof follows from the identity
which is a consequence of the orthogonality relation (2.8) with Wf, — UH — u/,. By the ellipticity condition 2.6, the left-hand side is > ce\\u — uh\\2, and the right-hand side is < cb\\u — uh\\\\u — Vh\\. Cancelling the common factor \\u — w/J on both sides of the resulting inequality yields the desired estimate since u/, e K/, is arbitrary. For piecewise linear Ritz-Galerkin approximations (cf. Figure 2.2) of the model problem (2.1), Cea's inequality implies
where h is the mesh width of the triangulation. In this case, || • || = || • || \ is the norm of the underlying Hilbert space H = HQ (D), and we have used without proof that
for the best piecewise linear approximation VH to u [24]. This estimate requires some mild geometric assumptions. It is sufficient that the triangulations conform to the boundary and are quasi-uniform, i.e., that the quotient of the longest and shortest edge is uniformly bounded as h —> 0. If the boundary of the polygonal domain D is convex, elliptic regularity [59] yields
and we obtain an error estimate entirely in terms of the data of the boundary value problem:
with eh = u — Uh and c\ = (cb/ce)ccr. The natural norm || • || , associated with the boundary value problem, usually involves derivatives. To obtain estimates in weaker norms, such as the L2-norm || • ||Q for the model problem, the following result is useful.
2.5. Approximation Error
21
2.9 Aubin-Nitsche Duality Principle If H is a subspace of a Hilbert space H*, the error e^ = u — Uh of the Ritz-Galerkin approximation satisfies
where w* is the solution of the dual problem
and {•,•}* denotes the scalar product on //*. As for Cea's inequality, the proof is based on the orthogonality condition (2.8). We have for any vh e B/,, and the result follows from the boundedness of a. For the model problem (2. 1) we can deduce from theorems 2.8 and 2.9 that
for piecewise linear finite elements on quasi-uniform triangulations of a convex polygonal domain. In this case, H — //0' (D), H* = L 2 (D), || • H* = || • ||0, and the two factors in the Aubin-Nitsche estimate can be bounded by
respectively. Since a(v, H*) = fD grad w* grad u, the dual problem is the weak form of
Hence, elliptic regularity implies ||w*||2 < cr ||e/i||o, proving (2.9) with CQ = Q,CI (ccr). The error estimates in this section are completely independent of the particular type of finite elements. We will apply them in chapter 6 to spline approximations. In this case,
where u/, is the best spline approximation to u of degree < n and with grid width h. For second-order problems, Cea's inequality implies that for the //' -norm (t = 1) this optimal approximation order is retained. This is also the case for the L2-norm (t = 0) by the Aubin-Nitsche duality principle. However, here we must assume that
i.e., that the dual problem has optimal regularity.
This page intentionally left blank
Chapter 3
B-Splines
In this chapter we define B-splines and describe identities and algorithms, particularly useful for implementing finite element schemes. We consider only uniform knots since the essential advantages of arbitrary knot sequences do not persist in several variables. For local refinement we have to use hierarchical bases rather than knot insertion strategies, which would have a global effect. Hence, uniform B-splines are adequate for multivariate approximation and of course much simpler from a computational point of view. Moreover, the theory, originating from Schoenberg's classical work on cardinal splines, is particularly elegant. After a brief introduction to the concept of splines in section 3.1, we define in section 3.2 uniform B-splines and derive their basic properties. In section 3.3 we prove the fundamental recurrence relation, which allows one to evaluate B-splines efficiently and to compute their polynomial segments. The recursion is used in section 3.4 to obtain an explicit representation of polynomials as linear combinations of B-splines. This result is very important for the stabilization of finite element bases and for deriving error estimates. Finally, in sections 3.5 and 3.6 we discuss algorithms for grid refinement and computation of scalar products.
3.1
The Concept of Splines
Polynomials provide good local approximations for smooth functions. However, on large intervals, the accuracy can be low. Moreover, local changes have global influence. Therefore, it is quite natural to use piecewise polynomials, defined on a partition of the parameter interval D. If the break points are uniformly spaced, and the polynomial segments join smoothly, this leads to Schoenberg's classical definition [79]. 3,1 Splines A spline of degcee < « and grid width h is (n — l)-tiiaes continuously differeatiable and agrees with a polynomial of degree < n on each grid interval 0\ i + l}h of the parameter interval D. 23
24
Chapter3. B-Splines
Figure 3.1. Derivatives of a cubic spline p with grid width h = 2 and parameter interval D = [0, 10]. Figure 3.1 shows a cubic spline p with five polynomial segments, which, by definition, is twice continuously differentiable. The discontinuities of the third derivative at the break points (marked with circles) are hardly visible. Also the derivative of p, which is a quadratic spline, appears to be smooth. Only by knowing that the segments of p' are parabolas, we notice the abrupt changes in the curvature. Definition 3.1 is not well suited for computations since it does not reveal the free parameters. Moreover, offhand it is not clear whether the smoothness constraints at the break points interfere with the approximation order of the polynomial segments. The key to the theory and numerical treatment of splines is the construction of a local basis. The appropriate basis functions, the so-called B-splines, will be defined in the next section. While in hindsight quite simple, the construction is by no means obvious. Therefore, we consider, as a first illustration, the elementary piecewise linear case. As is apparent from the example in Figure 3.2, a linear spline p is uniquely determined by its values at the break points ji, = i h. Hence, it can be represented as a linear combination of hat-functions bt:
The basis functions bj equal 1 at jt/+i and vanish at all other break points. The range of summation depends on the parameter interval D under consideration. As in the example, all hat-functions with some support in D have to be included. The hat-function basis consists of scaled translates of a single function:
where the standard hat-function &' has support [0, 2] and grid width 1. It is remarkable that
3.2. Definition and Basic Properties
25
Figure 3.2. Linear spline p, represented as a linear combination of hat-functions bj.
this simple structure of the spline space persists in general. For arbitrary degree, splines with uniform break points can be represented in terms of a single B-spline (cf. definition 3.6). Of course, this is a considerable advantage for the implementation of algorithms and also permits a particularly elegant theory. It should be noted that splines can be defined also for nonuniform partitions and with more general smoothness constraints. The corresponding theory has reached a state of perfection [16, 80]. It provides very flexible approximation methods, in particular when adaptive refinement is necessary. However, most nonuniform techniques are limited to one variable. Therefore, for the construction of finite elements the simpler uniform spline spaces are adequate.
3.2
Definition and Basic Properties
Uniform B-splines can be defined in several ways. We prefer the following simple averaging process, which makes all basic properties of B-splines immediately apparent. 3.2 B-Splines The uniform B-spline bn of degree n is defined by the recursion
starting from the characteristic function b° of the unit interval [0, 1). Equivalently,
with bn (0)^0. The first few B-splines are shown in Figure 3.3. One average of the characteristic function yields the piecewise linear hat-function
Chapter3. B-Splines
26
Figure 3.3. B-splines of degree n = 1,2,3.
already defined in the previous section. With the next average we obtain the quadratic B-spline b2. For example, for x e [1,2],
The shaded area under the graph of b2 represents an average f*_ yielding a value of the cubic B-spline b3. As is illustrated with the examples in the figure, each average increases the length of the support, the smoothness, and the degree by 1. We summarize these basic properties as follows. • Positivity and local support: b" is positive on (0, n + 1) and vanishes outside this interval. • Smoothness: b" is (n — l)-times continuously differentiable with discontinuities of the nth derivative at the break points 0 , . . . , n + 1. • Piecewise polynomial structure: b" is a polynomial of degree n on each interval Finally, we note two qualitative properties. 33 Symmetry and Monotonicity The B-spline of degree « is symmetric, i.e.,
and strictly monotone on [0, (n + l)/2] and [(n [(n + 1)/2, n + 1].
These properties are easily proved by induction on the degree. Assuming that both assertions are valid up to degree n — 1, it follows from definition 3.2 that
3.3. Recurrence Relation
27
which establishes the symmetry. To show the monotonicity on the left interval, we note that the derivative of bn , is positive for x e (0, n/2] by induction. This is also true for n/2 < x < (n + l)/2 since in this case bn~l (x) = bn~l(n - x) > bn-]((n - l)/2) > bn~[(x - 1).
3.3
Recurrence Relation
While definition 3.2 allows us to derive the main properties of B-splines in a straightforward manner, it is not well suited for computations. A simple algorithm for evaluating B-splines is provided by the following recursion, proved by de Boor [14] and Cox [31] more generally for arbitrary break points.
3.4 Recurrence Relation The B-spline bn is a weighted combination of B-splines of degree n — I:
This recurrence relation is proved by induction, showing the equivalence to the formula for the derivative in definition 3.2. Since both sides of the identity vanish at x = 0, it is sufficient to check that the derivatives match, i.e., that
where we used the abbreviation bnk = bn(x —k). The term in curly braces can be written in the form
Assuming by induction that the recursion is valid up to degree n — 1 , the terms in brackets are equal to bn~l (x) and bn~l (x — 1), respectively. Hence,
and both sides of (3.2) agree. The recurrence relation 3.4 is illustrated in Figure 3.4. We start with hat-functions rather than with the characteristic functions b°(- — k} to avoid assigning values at break points with discontinuities. Depending on the argument x, some branches are not needed. In the example, x e [1, 2], so that the rightmost hat-function gives no contribution.
Chapters. B-Splines
28
Figure 3.4. Recurrence relation for a cubic B- spline. With the aid of the recurrence relation we can also compute the polynomial segments of the B-splines. This has to be done separately for each grid interval, and it is convenient to use the Taylor expansion with respect to the left break point. 3.5 Taylor Coefficients
The n + I polynomial segments
of the B-spline V1 can be computed with the recursion 1
starting with a^o = 1an(i setting a% £ = 0 if either ^ or € are ^ {0,..., n}. For the proof we just have to expand the terms in the recurrence relation 3.4. Restricting x = k + t to the interval k + [0, 1] yields
Adding the expressions on the right-hand side and collecting the coefficients of ti, we obtain the summands in the recursion for akn £ . The Taylor coefficients for the first few B-splines are listed in Table 3. 1 . For example, the polynomial segments of the quadratic B-spline (n = 2) on the intervals [0, 1], [1,2], and [2, 3] are
29
3.4. Representation of Polynomials
n
2
1
0
1 -1 12
«2%
1
0
I2
Table 3.1. Taylor coefficients degree n < 3.
0
1 __1 l
l
3 \
1 I 2
~l
0 1
0 1
0 1
I 1
6
2
2
2
6
2
2
6
i1 1° -i1 i1
of the polynomial segments for the B-splines of
When B-splines have to be evaluated repeatedly, using the precomputed Taylor expansions is more efficient than applying the recurrence relation. In particular, this is the case for the assembly of finite element matrices.
3.4
Representation of Polynomials
For the construction of finite element bases in the next chapter, we use scaled translated B-splines. They are defined by transforming the standard uniform B-spline b" to the grid
with grid width h. The resulting B-splines bnkh span the space of smooth splines with uniform knots, introduced by Schoenberg [79] as part of his results on the approximation of equidistant data. 3.6 Cardinal Splines For h > 0 and k E Z, are the B-splines on the grid hTL, Their linear combinations ]C* splines of degree < n with grid width h.
are called cardinal
Under the transformation jc -> x/h — k the support of bn changes to [k, k + n + This is illustrated in Figure 3.5, which shows all cubic B-splines with grid width h = and some support in [0, 1]. Moreover, we see that on each grid interval Q = [1,1 + exactly n + 1 B-splines are nonzero. Of course, identities for bn generalize easily to the scaled translated B-splines. just have to incorporate the linear change of variables. For example,
follows by scaling the formula for the derivative in defintion 3.2.
\}h. 1/2 \}h We
Chapter3. B-Splines
30
Figure 3.5. Scaled translated cubic B-splines. We now show that we can represent polynomials as cardinal splines. This property is very important for deriving error estimates. It is also crucial for the construction of extended B-splines in section 4.4. 3.7 Marsden's Identity For x t
with
To prove this identity, we make the change of variables
which yields
after division by h" . This formula can be verified by induction. Using the recurrence relation 3.4, we replace b"(x — k) by
In the second of the resulting sums over k e Z we shift the summation index by 1 (A: and obtain the equivalent identity
By definition of \ffn the expression in brackets equals
3.4. Representation of Polynomials
31
A straightforward but tedious computation shows that {...} = (x — t). Cancelling this factor on both sides of (3.4), we have shown that the identities for degree n and n — 1 are equivalent. Thus, we are left with checking the linear case n = 1, where
To this end we observe that the hat-function bl (• — k) equals 1 at k + 1 and vanishes at all other integers. Hence, for fixed /, both sides interpolate the same data at the break points * = ...,-1,0, 1,.... Figure 3.6 illustrates Marsden's identity for degree n = 2. For the particular choice t = 0and/z = 1,
We have plotted the multiples of the B-splines b2(- — k) = b2k}iork = — 6 , . . . , 3 and have also listed the factors v£, (0) = (k + l)(fc + 2). Marsden's identity 3.7 yields the representation of any monomial xl simply by differentiating (n — £)-times with respect to t, dividing by (—n) • • • (—£ — 1), and setting t = 0. In particular, we have
i.e., the scaled translated B-splines form a partition of unity.
Figure 3.6. Marsden's identity for quadratic B-splines b2(x — k), x e [—6, 6].
32
Chapter 3. B-Splines Marsden's identity also implies the linear independence of the B-spline translates.
3.8 Linear Independence For any grid interval Q — [€, I + l]/i, the B-splines
which are nonzero on this interval, are linearly independent. The proof is immediate. On the interval Q, all polynomials of degree < n, which span a space of dimension n + 1, can be represented as linear combinations of the n + 1 nonzero B-splines.
3.5
Subdivision
Numerical approximations usually involve a sequence of grids in order to judge the accuracy. Mesh refinement is also necessary in a neighborhood of singularities and to resolve small details of solutions. For such purposes the following subdivision formula for B-splines is useful. 3.9 Grid Refinement The B-spline b" k can be expressed as a linear combination of B-splines with grid width
This formula is illustrated in Figure 3.7. For a cubic B-spline b\ h we show the Bsplines b\k+i h/2, t — 0, . . . , 4, multiplied by their weights Q/8. Moreover, we illustrate how the binomial weights can be generated by repeated averaging, a process known as Pascal's triangle. We prove the subdivision formula 3.9 by induction. The piecewise linear case,
is easily checked. We note that both sides interpolate the values
at x = kh,kh + h/2,..., kh + 2h. For the induction step n — 1 —> n, we differentiate the subdivision formula using (3.3). Since both sides vanish at ;c = kh, this yields the equivalent identity
3.5. Subdivision
33
Figure 3.7. Subdivision of a cubic B-spline. where we have set b^ — bn and b't = b" h\2 to simplify notation. The factor 2 " has changed since the differentiation formula yields the different factors h~l and (/z/2)" 1 for the B-splines on the left- and right-hand side, respectively. Noting that
we rewrite the left-hand side using the induction hypothesis as
In both expressions in brackets we sum over I G Z, using the convention that (™) = 0 for t < 0 or I > m. The equality of these two sums follows by comparing the coefficients of b'2M, which are ('+') - (£,') = ® + (,"_,) - (,"_,) - (,"_2) and Q - (,!2), respectively. By the familiar scheme for generating Pascal's triangle (cf. the right-hand side of Figure 3.7), the coefficients c'2k+i = 2~~"(n~^ ) of b2k+l h,2 can be computed by forming successive averages. We start with
and repeat the operation
n-times for all relevant t e Z. By linearity, arbitrary linear combinations of B-splines can be subdivided in the same way. Instead of starting with the coefficient 1 of bnk h as above, we apply the scheme simultaneously to all B-spline coefficients. This yields the following beautiful subdivision algorithm for cardinal splines, discovered by Lane and Riesenfeld [61].
34
Chapter 3. B-Splines
3.10 Subdivision Algorithm For a cardinal spline ^ c^ h, the coefficients c't with respect to the subdivided basis b"h/2 can be computed by setting
and repeating the simultaneous averaging step
n-times. As an example, we consider a periodic quadratic cardinal spline with coefficients
In this case (n = 2), the averaging steps of the subdivision algorithm yield
as the refined coefficients c'. We note without proof an interesting feature of algorithm 3.10. If the subdivision is repeated and the coefficients are associated with the midpoints of the B-spline supports, then
Figure 3.8. Convergence of subdivision for quadratic cardinal splines.
3.6. Scalar Products
35
the coefficients approach the graph of the cardinal spline. As is illustrated in Figure 3.8, already few subdivision steps yield very accurate polygonal approximations of the spline. This fact is the basis for highly efficient rendering algorithms in computer graphics [27]. In the example, the polygon (plotted bold), which connects the coefficients c" after two subdivisions, can hardly be distinguished from the limiting graph.
3.6
Scalar Products
The assembly of finite element matrices involves scalar products of derivatives of B-splines. As we will show in this section, such integrals can be computed explicitly with the aid of simple identities. We begin with a slightly more general form of the recursion b"(x) = f x - \ b"~l f°r B-splines in definition 3.2. 3.11 Convolution The convolution of two B-splines is a B-spline of higher degree:
For m = 0 we recover definition 3.2 since b°(x — y) equals 1 for y e (x — 1, ;c] and vanishes outside this interval. The general case follows by induction on m. Since both sides vanish for jc = 0, differentiating yields the equivalent equation
which is valid by induction hypothesis. Theorem 3.11 easily yields a formula for the scalar product
of two B-splines bnkh and b" h. Substituting y = z/h — t, dz — hdy, the argument of the first B-spline becomes y + t — k. By symmetry we can change this argument to (n + I + k — i) — y, and the convolution formula applies with x = (...). This proves the first part of the following theorem. 3.12 Scalar Products The scalar products of the B-splines b^h,bnih and of their derivatives are
respectively.
36
Chapters. B-Splines
The formula for the scalar products of the derivatives follows from the differentiation formula (3.3). By the chain rule,
and we identify the four scalar products in the formula for d£_t . Table 3.2 shows the scalar products s" and d" up to degree n — 3, which are easily generated with the aid of the recurrence relation 3.4. Since, by symmetry, s" = s"_ ,• and dn_{ — d", only the values with positive index are given. We can also compute scalar products of higher order derivatives of B-splines. Iterating the differentiation formula (3.3), we obtain
Hence,
is a sum of scalar products of B-splines of degrees n — a and n — ft, which, with the aid of theorem 3.11, can be expressed in terms of values of the standard B-spline of degree 2n + 1 — a — ft. We do not discuss this in more detail since such very general formulas are rarely needed in practice.
Table 3.2. Scalar products of B-splines and their derivatives for h = 1.
Chapter 4
Finite Element Bases In this chapter we construct finite element basis functions on regular grids using B-splines. The resulting methods provide a natural link from geometric modeling to numerical simulation. They share all advantages of standard finite element approximations and B-spline representations. In particular, no mesh generation is required, and highly accurate solutions are possible with relatively few parameters. In section 4.1 we define multivariate B-splines and summarize some important properties which follow easily from the univariate theory. B-spline translates form a basis for splines on bounded domains, as is described in section 4.2. While these spline spaces have optimal approximation order, they do not quite meet standard finite element requirements. The B-spline basis does not conform to the boundary and is not uniformly stable with respect to the grid width. However, both difficulties can be resolved in a simple and elegant way. In section 4.3 we show how to incorporate homogeneous boundary conditions via weight functions, and in section 4.4 we describe an extension procedure for stabilizing the basis. Combining both concepts leads to the definition of weighted extended B-splines (web-splines). Finally, section 4.5 introduces hierarchical B-splines, which can be used for adaptive approximation strategies.
4.1
Multivariate B-Splines
There is no unique generalization of univariate B-splines. Several types of multivariate spline spaces have been defined, which differ in the structure of the underlying partition for the polynomial segments (cf., e.g., [18, 42]). The simplest possibility is to form products of uniform B-splines, as described in the following definition. 4.1 Tensor Product B-Splines The m-variate B-spline b\h with degree nv in the vth variable, index k = (ki, . . . , km), and grid width h is defined as
with the convention that n\ = • • • — nm unless explicitly stated otherwise. For this standard choice, the superscript n is an integer, equal to the common degree, rather than an integer vector.
37
Chapter 4. Finite Element Bases
38
Figure 4.1. Bicubic B-spline (n = 3, m = 2).
Figure 4.1 shows a standard bicubic B-spline b\ the boundary of its support
We have highlighted
and the values along grid lines, which correspond to multiples of univariate cubic B-splines. Moreover, we marked the lower left corner kh of the support, which is often used to identify B-splines on the tensor product grid. From the example in the figure and the definition
of the scaled translated univariate B-spline, the following properties of the multivariate B-spline with equal coordinate degrees are evident. • Positivity and local support: this m-dimensional cube. • Smoothness variable.
kh
kh
is positive on kh + (0, n +1 )m h and vanishes outside
is (n — l)-times continuously differentiate with respect to each
• Piecewise polynomial structure: On each grid cell
bnk h is a polynomial of degree n in each variable, i.e., the B-spline equals
with
4.1. Multivariate B-Splines
39
The general multivariate B-spline with different coordinate degrees has analogous properties. However, since we will only need it for representing partial derivatives, we preferred to focus on the standard choice n\ = • • • — nm. Because of the product structure of multivariate B-splines, all univariate identities and algorithms generalize easily. As an example, we compute partial derivatives. For a bivariate B-spline
and the univariate differentiation formula (3.3) yields
Hence, the partial derivative is a difference of two B-splines with degree (n \ — 1 , n^} divided by h. With the familiar multi-index notation
the differentiation formula can be expressed in slightly more compact form as follows. 4.2 Partial Derivatives First-order partial derivatives of multivariate B-splines bflhh'""ttm) are differences of lower degree B-splines, i.e., for the unit vectors a = (1, 0, . . .), (0, 1, . . .), ____ We can easily compute higher order partial derivatives by iterating the differentiation formula. As an example, we apply the Laplace operator A = ]Py 3^ to a multivariate B-spline. Differentiating the identity in theorem 4.2 yields
and A£>£ h is the sum of these expressions over all unit vectors a. As a further application, we compute the integrals
which appear in the Ritz-Galerkin approximation of Poisson's equation. Because of the product form of multivariate B-splines, the contributions from each partial derivative factor, i.e.,
Chapter 4. Finite Element Bases
40
1 360
7 180
7 180
13 90
1 ~12 7 180 1
360
1 30 13 90
7 180
1 12 1 30 11
To 1 30 1 12
7 180
1 360
13 90
7 180
1 30
1 ~12
13 90
7 180
7 180
1 360
Figure 4.2. Ritz-Galerkin integrals g0^, \tv\ < 2, for biquadratic B-splines. Hence,
where 5" and dn are the scalar products defined in theorem 3.12 of the previous section. Figure 4.2 shows the integrals for biquadratic B-splines. Since gk,i depends only on the difference k — t, we have chosen k — 0 and associated each value with the center of the support ofblh. The supports of b\ h and b2(2^h are highlighted as well as their intersection, which is the region where the scalar product of the gradients is nonzero. For this pair of B-splines, using the values in Table 3.2.
4.2
Splines on Bounded Domains
As a first step toward the construction of spline-based finite element subspaces, we recall the standard definition of splines as linear combinations of B-splines.
43 Splines
The splines Bj> (D) on a bounded domain D c Rm consist of all linear combinations
of relevant B-splines; i.e., the set K of relevant indices contains all k with b% h (x) ^ 0 for some x e D.
4.2. Splines on Bounded Domains
41
Figure 4.3. Relevant biquadratic B-splines b^, k e K, spanning B. To simplify notation, we will omit parameters if they are fixed throughout the context. For example, we write B = BJj(D) and bk = bnkh. Definition 4.3 of the spline space B is illustrated in Figure 4.3 for quadratic splines on a two-dimensional domain D (cf. also Figure 1.2). The relevant B-splines bk, k e K, are marked with circles at the lower left corner of their support kh + [0, 3]2h. In contrast to univariate splines, B may contain B-splines with very small support in D; one example is highlighted in the figure. Moreover, depending on the shape of the domain, the set of relevant indices K can be rather irregular. To simplify computations, it is therefore convenient to work with a rectangular array of indices containing K. For analytical arguments we may even sum over k e Z7"; i.e., we interpret p e B as the restriction of an m-variate cardinal spline to D,
This is particularly useful for manipulating sums. Restricting the argument x of the B-splines is simpler than specifying the minimal summation range. To obtain accurate approximations, it is crucial that B contains polynomials. The proof is not difficult and based on Marsden's identity 3.7. We restate this univariate formula in the less precise form
where g/, is a polynomial of total degree n in t and k. Forming a product yields the
42
Chapter 4. Finite Element Bases
multivariate identity
where /,(&,/) = Y\v qh(k\>, tv) is a polynomial of degree n in each of the variables kv and tv. As in the univariate case, we can compute the representation of any monomial xa by differentiating (4.1) with respect to tv and setting t = 0. This does not increase the degree of qh. Hence, by restricting (4.1) to AT e D, we have derived the following multivariate version of Marsden's identity. 4.4 Representation of Polynomials Any multivariate polynomial p(x) a linear combination
can
^ represented on the domain D as
where is a multivariate polynomial of degree < n in each variable kv. As is well known, the fact that the spline space B contains polynomials implies the linear independence of the B-splines bk, k e K. For the proof we show that
To this end we note that on each nonempty intersection D n Q of the domain with a grid cell all but (n + l) m B-splines vanish. Since these nonzero B-splines span all polynomials of coordinate degree < n (degree < n in each variable), they must be linearly independent. Hence, their coefficients ck are 0. Considering all grid cells exhausts the relevant indices. The argument not only shows that bk, k 6 K, are a basis of B, but implies the following slightly stronger result. 4.5 Local Linear Independence On any open subset D' C D, the B-splines
are linearly independent. The multivariate Marsden identity 4.4 has another important implication. Since q is a polynomial of coordinate degree < n, any array of coefficients
determines all other B-spline coefficients uniquely. This fact will be crucial for the stabilization of the B-spline basis, described in section 4.4.
4.3. Weight Functions
4.3
43
Weight Functions
At first sight, constructing finite element approximations with B-splines seems infeasible since they do not conform to essential boundary conditions. However, this difficulty can be overcome by multiplying with a weight function u;. For example, for Dirichlet boundary conditions w is positive and vanishes on 3D. The simple idea to use such weighted finite elements was already suggested by Kantorowitsch and Krylow [54] and has become particularly successful in connection with the R-function method of Rvachev (c.f., e.g., the survey [76]). Of course, the natural concept also applies to splines [82, 46]. We define the weighted spline space where K is the set of relevant indices. Some mild assumptions on the weight function are necessary and specified in the following definition. 4.6 Weight Functions A weight function «; of order y e NO is continuous on D and satisfies
for a subset F of BD. We assume that F has positive (m — l)-dimensional measure and is sufficiently regular, so that the distance function has a bounded gradient. If w is smooth and vanishes linearly on the entire boundary (y = 1), it is called a standard weight function. The order y = 0 corresponds to the trivial weight function w = 1. It is included merely to avoid case distinctions. For example, formally we can view the space B as a special case of the weighted space u;B (cf. also definition 4.9 in the next section, where w — 1 is an admissible choice). The positivity of the weight function, implied by the estimate in definition 4.6, is essential. lfw(x) = 0 for some jc e D, all functions in the weighted spline space wB vanish at ;c, which affects the approximation order. Similarly, it is important that u; vanishes with minimal order on 3D for the boundary conditions under consideration. We can accurately model with the space wM only functions which vanish at least with the same order. This is why for general purpose elements we do not use functions like w(x) — x\X2 or w(x) — x\ JC2-X/3, which have higher order zeros at corners or edges. However, such weight functions can be useful in connection with special expansions, which take the behavior of solutions at singularities into account. In fact, we can use weight functions to model the leading term at corners and edges. The majority of boundary conditions requires that w vanishes to first order on a portion F of 9D and hence can be modeled with weight functions of order 1, i.e.,
The distance function itself can be used, appropriately modified in a neighborhood of its singularities. However, for many engineering applications there are simpler constructions. Two examples of weight functions for simple two-dimensional domains are shown in Figure 4.4. For the disk DO on the left, we may set
44
Chapter 4. Finite Element Bases
Figure 4.4. Weight functions for domains defined in terms of simple algebraic equations.
if homogeneous boundary conditions are imposed on the entire boundary. As in this simple case, functions of implicit boundary representations can often be used as weight functions. However, several principal problems arise, especially for nonsmooth domains. Multiplying functions wv, defining adjacent boundary segments, yields a double zero of the weight function at corners. This might not reflect the correct behavior of the solution. Even worse, at reentrant corners, the curves {x : wv(x) = 0} propagate into the interior of the domain, so that w is not positive on D. For example, if we would use
for the domain on the right of Figure 4.4, all functions in wB vanish along the coordinate axes, causing a loss of accuracy. Fortunately, there is a systematic method for defining proper weight functions for sets, which, like the example in the figure, are constructed with Boolean operations. 4.7 It-Function Method A signed weight function is a globallyjdefined continuous function which is positive on D and negative on the complement of D. Such weight functions can be constructed with R-functions r corresponding to Boolean set operations (complement, intersection, etc.). More precisely, if wv are signed weight functions for DVJ then
are signed weight functions f The R-function method of Rvachev (cf., e.g., [76, 77] ) provides a fully automatic mechanism for constructing weight functions for sets defined in terms of arbitrary systems of inequalities. As in constructive solid geometry models, "primitive" weight functions (defining, e.g., halfspaces, ellipsoids, cubes, etc.) can be combined according to specified set operations.
4.3. Weight Functions
45
Set operation
Corresponding R-function
Complement: Dc Intersection: D\ D D2 Union: D} U D2 Table 4.1. Standard R-function system. Table 4. 1 shows a standard choice of R-functions for the basic Boolean operators. Let us verify that this system meets the requirements of Rvachev's construction. For rc this is obvious, and, in view of the identity
the function r\j is redundant. Hence, we are left with analyzing rn. To this end we consider two cases. If w\ (x) and w2 (jc) are positive, then
and w — r n (wi, w^) is positive, too. Moreover, in a neighborhood of a point ;t, where either w\ or w2 are ^ 0, rn is infinitely differentiable, so that the smoothness of the weight functions wv is preserved. If, on the other hand, at least one of the weight functions is negative, then
and rn < 0. Finally, since w is continuous, the boundary of DI n D2 is correctly represented as {x : w (jc) = 0}. For the example on the right side of Figure 4.4,
with Dv = {x : wv(x) > 0} and wv defined in (4.2) and (4.3). Hence, the standard R-function method yields
Even for this simple example, the form of the weight function is quite complicated. But, of course, the explicit formula is not needed. All computations can be performed by successively evaluating the expressions involved, similarly as in the processing of tree structures in CAD models. Moreover, derivatives of w can be evaluated with the aid of automatic differentiation [40, 69]. The basic idea will be described in section 8.3. For general domains, bounded by free form curves or surfaces, weight functions have to be constructed numerically. Figure 4.5 illustrates a simple procedure applicable to smooth boundaries. We use the distance function in a small strip near the boundary, where it is free
Chapter 4. Finite Element Bases
46
Figure 4.5. Numerical construction of standard weight functions. of singularities, and blend it with a plateau of height 1 in the interior of the domain. More explicitly, we define a standard weight function by
where the parameter 8 controls the width of the strip D\D& and y the smoothness. As indicated in the figure, for two-dimensional regions 8 must be chosen smaller than the minimal radius of curvature \/K and half the width of narrow channels. However, the strip D\D$ should not be too narrow in order to keep the derivatives of the weight function small. We have considerable flexibility in the construction of weight functions. In particular, there are a number of variants of the basic R-function technique. For example, Rvachev's method combines well with numerical techniques; i.e., we can use blended distance functions of the form (4.4) as arguments of R-functions. Moreover, as will be described in section 8.3, it suffices to define weight functions locally, based only on neighboring boundary parts. This is an important simplification for domains with free form boundaries, such as Bezier curves and surfaces.
4.4
Web-Splines
While the spaces B and tuB provide optimal approximation order, the B-spline basis is not uniformly stable with respect to the grid width h. This instability, due to B-splines which have only very little support in the domain /), causes severe numerical problems as h —> 0. For example, the Ritz-Galerkin systems become extremely ill conditioned, which affects the convergence of iterative schemes and the accuracy of numerical solutions. We resolve the stability problem by suitably adjoining B-splines with small support to a stable subset of the basis for B. To this end we make the following classification.
4.4. Web-Splines
47
4.8 Inner and Outer B-Splines We partition the grid ceHs Q — Ih + [0, i]mh into interior, boundary, and exterior cells, depending on whether Q c Z>, the interior of Q intersects 9D, or Q n B = 0. Among the relevant B-splines &*> fc e K, we distinguish between inner B-spiines
which have at least one interior cell Qf in their support, and outer B-spMnes
for which supp bj consists entirely of boundary and exterior cells. Figure 4.6 shows for a two-dimensional domain the interior (light gray) and boundary (dark gray) cells, as well as the classification of biquadratic B-splines. The inner and outer B-splines are distinguished with black and white dots, placed at the lower left comer of their supports. We highlighted the supports of two B-splines b{ and bj and also marked the midpoint jc, of the grid cell We now show how to connect the outer to the inner B-splines without affecting the approximation power of the spline space B. It is crucial that all polynomials p of coordinate
Figure 4.6. Cell types and inner and outer B-splines of a biquadratic spline space
48
Chapter 4. Finite Element Bases
degree < n remain elements of the resulting stabilized subspace. To this end we consider the multivariate Marsden identity 4.4:
Since q is also a polynomial of coordinate degree < n, we can compute q(j) from the values at any array of (n + 1 )m inner indices
We simply determine q as the polynomial interpolant of the values q(i), i e /(j). Denoting by 6{j the value at j of the Lagrange polynomial
Substituting this expression into (4.5) and interchanging sums yield
where /(/) = {7 e J : i e f(j)}. The term in brackets is the proper combination of inner and outer B-splines. Using this linear combination as a new basis function, it is possible to represent all polynomials of coordinate degree < n without having to refer to the outer B-splines explicitly. As before, a weight function can be incorporated to satisfy essential homogeneous boundary conditions. We multiply [...] by u;(;c)/u;(jc,), where jc, is the center of the interior grid cell (2, C D fl supp b{. These considerations lead to the following definition [46]. 4.9 Weighted Extended B-Splines For an outer index j e J let l(j) = I + (0,..., n}m C / be an m-dimensional array of inner indices closest to j, assuming that h is small enough so that such an array exists. Moreover, denote by
the values of the Lagrange polynomials associated with 7(y) and by /(i) the set of all j with i e /O'). Then, the web-splines
form a basis for the web-space u;
4.4. Web-Splines
49
Figure 4.7. Construction of biquadratic web-splines. The construction of biquadratic web-splines is illustrated in Figure 4.7. On the left, the figure shows for an outer index j the array I ( j ) with the values efj of the Lagrange polynomials. For example, for i = j — (0, 2),
since j — I = (2, 3) and i — i = (2, 1). The appearance of many zeros is typical since the Lagrange polynomials vanish whenever jv e (£y + {0, . . . , n})\iv for some v. On the right of the figure we see the support of a web-spline and the set /(/) with the coefficients of the adjoined outer B-splines. We have also marked the point xt at the center of the grid cell <2,. Since etj = 0 for j = i + (1, —1), the linear combination £];ej(() etjbj consists only of three terms, corresponding to j —i = (1, 0), (0, !),(!, 1). As in this example, the union of the supports of the B-splines, involved in the defintion of BI (highlighted in the figure), is usually only slightly larger than the support of the inner B-spline b[. Except for positivity, web-splines inherit all essential properties of B-splines. The following facts are particularly relevant for finite element approximation. Extension coefficients: We have
and
Moreover, only -< h' ~m B-splines near the boundary need to be modified. For the majority of inner indices i, fi/ = w/w(X{) hi, as h becomes small. • Local support: The diameter of supp #, is -< h, and on each set Q n D only -< 1 web-splines are nonzero.
50
Chapter 4. Finite Element Bases • Stability: The web-splines are linearly independent and
In particular, • Approximation order: The web-space weB/, contains weighted polynomials of coordinate degree < n. Moreover,
if w and u/w are smooth. In all of the above estimates, the constants depend on the degree n, the domain D, and the weight function w (and in (4.7) also on the approximated function u). Most statements are familiar from standard spline theory and not difficult to prove. The first two properties are obvious from definition 4.9. The linear independence follows from the corresponding result for standard B-splines (theorem 4.5) since
Furthermore, by construction, web-splines can represent weighted polynomials. Hence, it remains to prove the estimates (4.6) and (4.7). This is more subtle and will be postponed to chapter 5, where we give a thorough analysis of the approximation properties of web-splines.
4.5
Hierarchical Bases
To resolve small geometric details or rapid changes in solutions, local grid refinement is essential. With B-splines such adaptive approximations are possible in a very natural way. We describe an elementary strategy, which is based on the subdivision formulas derived in section 3.5. Essentially, this technique was proposed by Kraft [58]. It is very easy to implement and well suited for handling singularities. 4.10 Hierarchical B-Splines The hierarchical spline space B£(B), corresponding to a nested sequence of domains
is spanned by the B-splines
where Kv denotes the indices k for which D D supp £>*,«,, is a subset of Dv (with nonzero measure), but is not contained in v+\.
4.5. Hierarchical Bases
51
This definition can be interpreted in the following way. We select a subset of the relevant B-splines for D with grid width h (those B-splines with D D suppbk,h0 C D\, i.e., with k e K\KQ) and replace it by B-splines of grid width h/2 via subdivision. From the relevant B-splines b^^\ on the finer grid with D n suppfr^, C D\, which include, in particular, the B-splines resulting from subdivision, again, a subset is selected and refined. This process is repeated according to the sequence of domains Dv. Figure 4.8 illustrates definition 4.10 for degree n = 1 and 3 grids. The subdomains £>2 C D\ C DO — D are displayed with different gray levels, and the lower left corners of the supports
of the B-splines in the basis are marked with circles of different sizes, according to their grid width. In this example, the spline space is refined near the corners of the domain, where we expect singularities of the solution. As is common practice, the sets Dv are unions of supports of B-splines. For example, the portion of D\ containing the reentrant corner at
Figure 4.8. Bilinear hierarchical B-spline basis.
52
Chapter 4. Finite Element Bases
x = (0, 0) is
It is easily checked that the B-splines spanning B/,(D) are linearly independent. If
we can show inductively, for v = 0, 1, . . ., that the coefficients c*,v are zero. First, we restrict x to the open set DQ,I = D0\D\. By definition, all B-splines with grid width hv, v > 0, vanish on this set. On the other hand, for each B-spline bk.hn, k € KQ, there exists a point x e DO,I where this B-spline is nonzero. Hence, by the local linear independence of the B-splines corresponding to one grid in a neighborhood of jc (cf. theorem 4.5), all coefficients Q,O must be zero. Now we repeat the argument, restricting x successively to the sets D\ 2, 1*2.3, ____ The hierarchical spline space B^(P) contains for each domain Dv all B-splines bk.hv for which the portion of their support in D is completely contained in Dv. Either such a B-spline belongs to the hierarchical basis, or, if D n supp bk.hr C Dv+\ , it can be represented as a linear combination of B-splines with smaller grid width via subdivision. Hence, as is expected, the local approximation power of B/, (D) corresponds to the level of refinement. Summarizing these observations, we have proved the following result. 4.11 Linear Independence and Local Structure The B-splines spanning B/,(B) are linearly independent and
Similarly as in section 4.3, we can define weighted hierarchical spline spaces wWh (D). All B-splines are multiplied by a weight function w which satisfies homogeneous boundary conditions. It is also possible to apply the extension technique of section 4.4 to eliminate the outer B-splines. For example, we can base the selection of the basis in definition 4.10 on the inner B-splines b,,/, u and include the corresponding web-splines 5,-^. in the hierarchical spline space. However, this is not quite sufficient to stabilize the basis. To achieve uniform stability, also with respect to the number of grid levels, wavelet techniques are required.
Chapter 5
Approximation with Weighted Splines
As was shown in section 2.5, the convergence of finite element schemes follows easily from the definition of the Ritz-Galerkin approximation. The basic estimate is Cea's inequality 2.8. It states that the error in the energy norm can be bounded in terms of the error of the best approximation from the finite element subspace. Hence, it suffices to analyze the approximation properties of the basis functions without taking the specifics of the discretized boundary value problems into account. For the finite element bases introduced in the last chapter, we obtain the familiar error bounds for piece wise polynomials. A typical estimate is where «/, are weighted approximations of degree < n from either of the spaces wB/, or w eB/, . The proofs require a number of auxiliary results, which are described at the beginning of this chapter. Essentially, the arguments are analogous to standard spline theory. Incorporating the weight function w is mostly straightforward, except perhaps for regularity issues. In section 5.1 we construct dual functions, which are used in section 5.2 to prove the stability of the web-basis. Then, we review in section 5.3 the fundamental error bound for polynomial orthogonal projections. These preliminary results provide the necessary tools for defining approximation schemes and deriving error estimates. We first show in section 5.4 that smooth functions can be approximated by weighted splines with optimal order. To obtain sharper bounds, we analyze in section 5.5 the smoothness of quotients with weight functions. With the aid of these regularity results we finally obtain in section 5.6 optimal error estimates in Sobolev norms.
5.1
Dual Functions
It would be nice if we could add "orthogonality" to the list of favorable properties of spline bases. Unfortunately, this is too much to ask, at least if we do not change the scalar product (cf. [72] for an interesting new idea). However, it is possible to construct dual bases. For web-splines, these are functions A, with
53
54
Chapter 5. Approximation with Weighted Splines
Such biorthogonal systems are important for stability questions as well as for defining local approximation schemes. For example, we can define a canonical projector
analogously to standard orthogonal expansions. For B-splines, dual bases were constructed by de Boor [16] without any restrictions on the knot sequence. We specialize his result to a uniform grid, choosing a formulation particularly suited for the generalization to web-splines. 5.1 Dual Functions For any m-dimensional cube Q't c supp ty with width Oh, there exists a function A,,- with support in Q\ which satisfies
and
const(m,n,0)
The proof is not difficult but is somewhat lengthy. Choosing Q\ as one of the grid cells in the support of bt (0 = 1) would simplify the arguments. However, we need the extra flexibility for later applications. Moreover, the dependence of the norm of A,/ on the parameters is important. To construct the dual functions A./ , we consider first the special case
with Q'Q C [0, n + l] m . Clearly, the biorthogonality needs to be checked only for the B-splines £*, which are nonzero on Q'Q. Denoting the set of the corresponding indices k by /o, the local linear independence of the B-splines (theorem 4.5) implies that
is a well-defined linear functional on H = spankelobk. Hence, by the Riesz representation theorem A. 5, there exists a function A.* = 1Z,Q € H with
In particular, (A.*, bk)o = 5o,t. To complete the proof in the special case, it remains to obtain a bound for || A.* ||o which depends only on m, n, and the width 9 of Q'0. This can be accomplished by applying the above construction only to finitely many m-cubes. As is illustrated on the left side of Figure 5. 1 for biquadratic B-splines, we partition the support of b1^ , into ((n + 1) [2/0] ) m m-cubes (dashed lines). Since each of these m-cubes have width < 0/2, at least one of them is contained in Q'Q (light gray). By choosing this m-cube Q* (dark gray) as support of A,*, the dependence of ||A.* ||o on the position of Q'0 can be eliminated.
5.1. Dual Functions
55
Figure 5.1. Construction of dual functions. The general case follows by a change of variables, as is illustrated in Figure 5.1. We define where the transformation x \-^ y = x/h — i maps the support of b, to supp&Q , and Q'f to Go- Then'
since bk(i
and Jjc = hmdy. Moreover,
as claimed. We could have given a more constructive proof of Theorem 5.1 by expressing the dual functions as linear combinations of B-splines and determining the coefficients from the linear system which represents the orthogonality conditions. However, this would have been more technical, and the explicit form of the dual functions is not relevant for our main objectives. It is important to note that the bound for the norm of the dual functions is not uniform with respect to the relative width 0 of the cubes <2-, i.e.,
Hence, we cannot construct uniformly bounded dual functions for the spline spaces B/,, h > 0, which may contain B-splines with arbitrarily small support in D. By contrast, web-splines are associated with inner B-splines, which have at least one grid cell Qi of their support contained in D. This guarantees sufficiently large support for the dual functions, and it is plausible that uniform stability can be achieved.
56
Chapters. Approximation with Weighted Splines
5.2 Weighted Dual Functions For web-splines corresponding to a weight function of order y there exist locally supported, uniformly bounded dual functions A,, i.e.,
andsupp
const
We set where A/ is the dual function described in theorem 5.1, corresponding to the specific choice
with jc, the center of the grid cell <2i C Dflsupp^, (cf. section 4.4). Since all outer B-splines bj vanish on Q, for any inner index /, B
which proves the biorthogonality of the dual functions. To establish the boundedness, we have to estimate the factor
(cf. definition 4.6 of a weight function of order y). Since the m-cube j2-, which contains the support of A,, has diameter 0^/mh and d(xi) > h/2, we note that, for x € Q'
This implies maxx€g; w(Xi)/w(x) :< 1 and yields the desired uniform bound for || A, ||0. While the arguments of this section were rather technical, the results are not. Theorems 5.1 and 5.2 allow us to compute B-spline coefficients via scalar products, very much like in orthogonal expansions. Considering, e.g., a web-spline M/, e w eB/,,
Hence, some important techniques of orthogonal expansions apply to splines.
5.2
Stability
For most finite elements the size of linear combinations of basis functions corresponds to the size of the coefficients; i.e., estimates of the norms are uniform with respect to the grid width. This fundamental property is important for the convergence of iterative methods
5.2. Stability
57
as well as for the accuracy of numerical solutions. As we already remarked, the B-spline basis for B^ is not stable in this sense. The instability caused by the outer B-splines bj with small support in D was the principal motivation for the construction of web-splines, which possess the following familiar stability property. S3 Stability For a weight function of order y linear combinations of web-splines satisfy
where the constants in the estimates depend on D, w, and n, We first show that web-splines have the same normalization as B-splines, i.e.,
To this end we recall definition 4.9:
As we noted in section 4.4, the number of indices in /(/) as well as the absolute values of the coefficients eij are bounded, uniformly with respect to the grid width. Hence, to verify the bound for the norm of Bt, it suffices to show that the quotient
is x 1 for x e supp Bi . This follows from the inequalities
which are valid since the gradient of the distance function is bounded, d(xi) > h/2, and supp BI has diameter ;< h. Because of the local support of the web-splines, the inequality (5.4) extends to arbitrary linear combinations. The crucial fact is that, at any point x in the domain, B{ (x) is nonzero for x 1 indices / only. To explain this in more detail, we write
for a grid cell Q. Moreover, we define
These definitions are illustrated in Figure 5.2. Also shown (bounded by a thick line) is the union of the supports of the B-splines appearing in the definition of Bf. In effect, I(Q) is
58
Chapter 5. Approximation with Weighted Splines
Figure 5.2. A set I(Q) (marked with dots) and the grid cells Q(i) (shaded) for bilinear web-splines. a small set of neighboring indices / with ih close to Q, and Q(i) are the grid cells adjacent to ih, which contribute to the support of /?,-. Clearly, the number of elements in both sets, which we denote by |/((2)| and |Q(/)|, respectively, is ^ 1. This follows simply because supp Bj c Xi + [—const, const]"1/z. Returning to the proof of the upper bound in theorem 5.3, the triangle and the CauchySchwarz inequality imply
Noting that we obtain by summing the above inequality over all grid cells Q and interchanging sums
Since|Q(/)| ^ 1, the right-hand side is ^ /i"1 ||C||2, proving the upper bound for || ^. : c/fl,-||o. The lower bound is derived with the aid of the weighted dual functions A,. By theorem 5.2 (cf. also (5.3)) and the Cauchy-Schwarz inequality we have
Summing this estimate over / e /, at most maxc |/(Q}\ -< 1 repetitions can occur on the right-hand side. Hence, the sum is ;< h~m \\ ^. c, B, ||Q, as desired.
5.2. Stability
59
If we assume that the weight function is smooth, we can also obtain bounds for derivatives of web-splines. The following result is the analogue of a well-known inverse inequality for polynomials. 5.4 Bernstein Inequality If w is a weight function of order y which is ^-regular, i.e., which has bounded partial derivatives up to order i and satisfies
then
for linear combinations of web-splines of degree n > I. For standard weight functions,
and the hypothesis of the theorem is satisfied with t = n. Also admissible are weight functions constructed with the R-function method (cf. theorem 4.7). Since the functions
of the standard R-function system in Table 4.1 have bounded gradient, 1-regularity is preserved by Boolean operations. Usually, any reasonably defined smooth weight function meets the requirements of the theorem because normally differentiation decreases the order of decay toward the boundary at least by 1. However, there are counterexamples, like the bivariate function
which has order 2 and bounded gradient but is not 1-regular. For the proof of theorem 5.4 it suffices to estimate the norm of a single basis function because of the local support. Applying Leibniz's rule to the definition of a web-spline yields
We estimate each factor of the summands in turn. For x e supp fi, we obtain for d(x) = dist(jc, F) the bound
since jc, has distance > h/2 from the boundary. Hence,
60
Chapters. Approximation with Weighted Splines
Moreover, since bk(x} = b1^ \(x/ h — k) and there are only •< 1 coefficients ejj,
Combining the estimates (5.5) and (5.6) yields
and we obtain the desired bound for ||fi,||v by summing over all derivatives with order |a| < v. As an application of theorems 5.3 and 5.4, we derive a bound for the condition number of the Ritz-Galerkin matrix
for web-splines corresponding to a standard weight function. Since Gh is symmetric, cond Gh is the quotient of the largest and smallest eigenvalue. These two extreme eigenvalues can be computed by maximizing and minimizing the Rayleigh quotient
The numerator is < ||u/,||j, so that r(C) ^ h~2hm by the Bernstein inequality 5.4. On the other hand, since VH vanishes on 3D, we have / ||grad Vh \\2 > \\VH \\Q by the PoincareFriedrichs inequality A. 12. Hence, r(C) >: hm by the stability theorem 5.3. This shows that which is a standard estimate for Ritz-Galerkin approximations of second-order problems.
5.3
Polynomial Approximation
Error estimates for splines are based on local polynomial approximations. Hence, we begin by studying this simpler case. As an example, we consider the formula for the remainder of the nth-degree Taylor polynomial,
We can integrate over the fixed interval [0, h] if we multiply the integrand by the characteristic function /(*, /) of the triangle { ( x , t ) : 0 < t < x < h}. Then, by Minkowsky's inequality A.I, the L2-norm of the integral on the right-hand side can be bounded by
5.3. Polynomial Approximation
61
Consequently, it follows that
Similarly, we can estimate derivatives of the error The analogous multivariate estimates play a fundamental role for finite element error analysis. They are, however, much more difficult to derive since there is no convenient integral representation of remainders for Taylor polynomials or other approximations. 5.5 Bramble-Hilbert Estimate The error of the orthogonal projection Pn onto polynomials of total degree < n on a scaled domain hD satisfies
forO 2.3).
and with | • || denoting the standard semi-norm on He (cf, section
The proof is divided into three steps. (i) As usual, the dependence on h can be eliminated by scaling the variables. If p(x) is the orthogonal projection of /(;c) onto polynomials on hD, then q(y) = p(x), y — x/h, is the corresponding projection of g(y) = f ( x ) for D. Moreover,
These two observations reduce the proof to the case h — 1 . (ii) For h = 1 we consider first the special case /z = n + 1 . Combining the estimates for 0 < v < /z, we have to show that
We assume the contrary, i.e., that there exists a sequence g
(noting that \Pnfe\n+\ = 0). Because of the compactness of the embedding Hn+\ C Hn (cf. A. 11) there exists a subsequence gt with limit g and
To reach a contradiction, we show that the limit g is a polynomial of total degree < n and, as a consequence, must vanish (\\g\\n — 0). For the first assertion we observe that, for \a\ = n + 1 and any smooth function
62
Chapter 5. Approximation with Weighted Splines
Hence, all weak derivatives of order n + 1 of g are zero. For the second assertion we express the projection Pn with the aid of a basis of orthonormal polynomials pa as
From this representation we see that (gi, pa)0 = 0 and thus also (g, pa)o = lim{|£, pa)o = 0, so that g = 0, as claimed. (iii) The remaining cases \JL < n follow easily. The projection (5.7) is a bounded operator on Hi for any £ > 0. Hence, for /z > 0,
where we used step (ii) of the proof for the last inequality. Clearly, this estimate covers all cases v < fji. The case JJL = 0 follows directly from the definition of Pn. In theorem 5.5 we can replace const(D, n) /Z M ~ U by const(m, n) diam(D) M ~ v if we only consider a family of similar domains. For example, later on we will frequently apply the estimate for m-dimensional cubes. However, we emphasize that in general the dependence on the domain cannot be omitted since irregularities of the boundary may affect the constant. Usually, the Bramble-Hilbert estimate 5.5 is stated in a slightly different form. We describe below the original version, which is convenient for analyzing interpolation and quadrature schemes. 5.6 Functionals with Polynomial Kernel If a bounded linear functional A on H" *l(D) vanishes on polynomials of total degree < n, then
In view of
this result is a direct consequence of the Bramble-Hilbert estimate 5.5 with v = n = n+l. Theorem 5.6 can be generalized slightly. Instead of linear functionals we can consider linear operators
with finite rank which annihilate polynomials of degree < n. Arguing as above, it follows that This variant of the Bramble-Hilbert estimate is useful for deriving error bounds for piecewise polynomial projections.
5.4. Quasi-lnterpolation
5.4
63
Quasi-lnterpolation
In this section we determine the approximation order of weighted splines. A direct approach, i.e., an analysis of the error of the best approximation from the finite element subspaces, would be very difficult. The main reason is that computing the coefficients c, of the basis functions involves the solution of a linear system, which obscures the dependence on the approximated function u. Fortunately, there is a much simpler technique, referred to as quasi-interpolation. The coefficients c, are computed separately and depend only on values of w in the support of Bf . This greatly facilitates the derivation of error estimates. Local support and polynomial precision imply that web-splines approximate with the same order as local polynomial projections. Of course, since w eB/, C w B/, , the results for web-splines hold for weighted splines as well. The canonical quasi-interpolant for web-splines is the standard projector
whic h was already mentioned in connection with the construction of the dual functions A, in section 5.1. Since by theorem 5.2, B^ and A, are biorthogonal, PhBi = Bj. This implies, in particular, that the standard projector reproduces weighted polynomials, which are contained in the web-space w eB/, . Moreover, because of the local support of Bt and the uniform estimate for the norm of A,, Ph is locally bounded. We summarize these two important properties in the following theorem. 5.7 Standard Projector For any polynomial p of coordinate degree < n
Moreover, if w is an l-regular weight function of order y , then, for any grid cell Q,
where Q' — Ui6/(0supp #, C D is the union of the supports of all web-splines which are nonzero on Q H £>, The second assertion still requires a proof. As we already remarked, the result is a direct consequence of the properties of fi, and A,. By definition (5.1) of Ph, the norm of on Q D D can be bounded by
The first factor of the summands is •< h m/2 ||w||o,e, by theorem 5.2 and the second -< hm/2h~v by the Bernstein inequality 5.4. Since the number of summands is •< 1 and Qi C Q', we obtain the desired upper bound. We will now determine the approximation order of the standard projector P/,. As is expected, the local error coincides with that of polynomial approximations. However,
64
Chapter 5. Approximation with Weighted Splines
we have to take the boundary conditions, which are described by the weight function, into account. Since a linear combination of web-splines has the form
we can approximate a function u with full order only if u = wv with sufficiently regular v. This explains the hypothesis in the following theorem. 5.8 Approximation Order If u; is an ^-regular weight function of order y and v = u/w is smooth on Z>, men
for v < min(l,«). This imph'es, in particular, that web-splines w eB* and weighted splines wH&h have the optimal approximation order. The estimate is proved by analyzing the error separately on each grid cell Q. To this end we define Q' as in theorem 5.7 and denote by Q a smallest w -dimensional cube containing Q'. Moreover, we let v = £v be a smooth extension of v to Rm, as described in A.13. The key argument is to relate the local error to that of the projector Pn onto polynomials on Q. Since Ph reproduces weighted polynomials and uses only information from within the domain D where v = v,
the last inequality following from theorem 5.7. Moreover, since we assume that w has bounded derivatives up to order £ > v,
Finally, by the Bramble-Hilbert estimate 5.5,
Here we see the necessity of the extension v. The shape of the sets Q n D will in general depend on h, which affects the constant in the error estimate for the polynomial projection. This is why we defined Pn on the larger m-cube Q. Combining the above estimates, we have shown that
Summing this inequality over all grid cells Q completes the proof in a by now familiar fashion. The point is again that the cubes Q overlap only •< 1 times. Theorem 5.8 establishes the standard error bound
5.5. Boundary Regularity
65
for weighted splines of degree < n. However, to keep the arguments simple, we did not make the required regularity precise. This will be done in section 5.6, where we discuss the important special case of a standard weight function in more detail. While from a practical point of view the resulting sharp estimates are perhaps not needed, the theory would not be complete without them. In particular, the interplay of regularity and approximation order is crucial for the analysis of multigrid methods in chapter 7.
5.5
Boundary Regularity
As we saw in section 5.4, the accuracy of weighted spline approximations to a function u depends on the regularity of the quotient v = u/w. While theorem 5.8 does not make precise assumptions about the smoothness, examining the proof in more detail shows that the arguments require v e Hn+]. This is slightly more restricitive than the necessary assumption u e Hn+l since the division by w causes a loss of regularity near the boundary even if w is smooth. For a standard weight function, we will derive in the next section a sharp error bound. It is based on the following auxiliary regularity result [46, 45]. 5.9 Regularity of Quotients If w is a standard weight function and u = wv, then, for any subdomain D' c D with distance 8 to the boundary,
Moreover,
The first inequality (5.8) is a direct consequence of Leibniz's formula for the derivatives of the product u = wv. Rearranging the terms appropriately, we have
Dividing by w and recalling that w is smooth and equivalent to the distance to 3D, the desired estimate follows. The proof of the second inequality (5.9) is based on the following univariate estimate. 540 Regularity of Univariate Quotients
This estimate follows from the identity
66
Chapter 5. Approximation with Weighted Splines
Differentiating (t — l)-times and taking norms, we obtain with the aid of Minkowsky's inequality A.I
Changing variables in the inner integral, the right-hand side can be bounded by f completing the proof with const = 2 The univariate estimate 5.10 captures the essential part of inequality (5.9). It is generalized to several variables by a standard localization technique. With a smooth partition of unity,
we can write u as a sum of finitely many functions with small support:
(using, e.g., B-splines: Xk = t>k). As is easily seen, it suffices to prove (5.9) for each of the functions x\>u = wxvv. This local estimate implies
i.e., the desired global bound. Hence, it remains to consider functions u with small support. If the distance of supp u from 3D is > 0, the estimate (5.9) is trivial. Therefore, we assume that the support of u intersects the boundary and that the portion of 3D in supp u is nearly flat. Clearly, this can be accomplished by a suitable choice of the functions /„. As depicted in Figure 5.3, we require that, with an appropriate choice of coordinates, supp u is contained in the strip
where \fr is a smooth function with i/r(0) = 0. We first conclude from theorem 5.10 that the inequality (5.9) is valid for DO = [0, s]m if the boundary is flat (TJS = 0) and w(x) = t. We simply observe that tangential derivatives do not affect the estimate. For a curved boundary, we map the strip D^ to the m-cube DO with the transformation
Denoting by «, v, ... functions with respect to the transformed variables, the estimate (5.9) follows from the inequalities
5.6. Error Estimates for Standard Weight Functions
67
Figure 5.3. Local regularity estimate. The first and last inequalities hold because Sobolev norms remain bounded after a smooth change of variables. For the second inequality we note that
and observe that multiplication with the smooth quotient s/w is a bounded operation on Hl. This completes the proof of theorem 5.9. We could derive more general boundary estimates for higher order weight functions by iterating the inequalities (5.8) and (5.9). For example,
yields the appropriate estimate for a second-order weight function. However, higher order essential boundary conditions do not occur very frequently. Therefore, we have preferred to discuss only the slightly less technical case of a standard weight function.
5.6
Error Estimates for Standard Weight Functions
In this section we derive an optimal error bound for the projector
onto the web-space ioeB/, c wB/,. This estimate, proved in [46, 45], is based on the regularity results of the previous section. It sharpens theorem 5.8 by requiring only minimal smoothness of the approximated function. As is customary in approximation theory, we call such a result a Jackson inequality in memory of beautiful classical error estimates for trigonometric projection operators.
68
Chapters. Approximation with Weighted Splines
5.11 Jackson Inequality If w is a standard weight function, then
for any function u € Hk which vanishes on 3D. The proof is similar to that of theorem 5.8. In particular, we use the symbol ~ for extensions of functions to R m , write Q' for the union of all web-spline supports overlapping Q fl D, and denote by Q a smallest m-dimensional cube containing Q'. Again, we split the error on a grid cell Q in the form
where Pn is the orthogonal projection onto polynomials of degree < n on Q. Considering for simplicity only the slightly more difficult case I > 0, theorem 5.7 implies the local estimate
At this point, a more subtle argument is necessary. We cannot simply bound ||u;/||£ in terms °f \\f\\t but have to exploit that w is small near the boundary. By Leibniz's rule
Since the relevant derivatives of w are bounded,
for any subdomain D' of D. Applying this estimate to (5.10), the right-hand side can be bounded by a constant times
We claim that this expression is
To this end we distinguish two cases, depending on the distance 8 = dist((2, 9D) of Q to the boundary. (i) 8 < h: Since diam(<2') ^ h and w is equivalent to the distance to 3D, we have maxQw < h. Moreover, by the Bramble-Hilbert estimate 5.5,
5.6. Error Estimates for Standard Weight Functions
69
Using this inequality with v = £, 0, i — 1, and IJL = k — 1, it follows that r •< s\ . Of course, we can replace Q D D and Q' by the larger set Q. (ii) 8 > h: In this case, Q C D, and
Applying (5.11) with v = £, 0, 1 — 1, and //, — k, we obtain
by the first estimate (5.8) of theorem 5.9. Summarizing, we have shown that
Summing this estimate over all grid cells Q, we obtain in the usual way the global bound
This completes the proof in view of the boundedness of the extension operator £ : v h-> v for Hk~l (D) (cf. A. 13) and the second estimate (5.9) of theorem 5.9. From a practical point of view the sharp error estimate of theorem 5. 1 1 is not always essential. For smooth problems the simpler version of theorem 5.8 is adequate for most applications. The order of approximation is usually limited by the degree of the finite elements rather than the precise differentiability of the data. For problems with singularities, caused, e.g., by corners or edges of the domain or discontinuities of coefficients of the differential operator, this is not the case. However, such problems require more sophisticated techniques (e.g., hierarchical refinement) if full approximation order should be maintained. Despite these remarks, there are several instances where an optimal Jackson inequality is crucial. An example is the Aubin-Nitsche duality principle 2.9, yielding a bound for the L 2 -error. 5.12 Error of Ritz-Galerkin Approximations
Let w be a standard weight function and u^ the Ritz-Oalerkin approximation from w or w&h of an HQ -elliptic problem
Moreover, assume that the dual problem has the standard regularity; ie,f the solution #* for theright-handside /* satisf I/* lo.
where The proof involves nothing more than specializing the hypotheses of theorem 2.9. With H = HQ , H* — Li.eh — /*, and V/, either of the spaces w eB/, or if B/,, we have
70
Chapter 5. Approximation with Weighted Splines
and the infimum can be bounded by
by the Jackson inequality 5.11 and the regularity assumption. The precise error bound of theorem 5.11 is also needed for establishing the gridindependent convergence rate of multigrid methods. Here, we use the Jackson inequality to relate the accuracy of approximations on different grids (cf. section 7.4).
Chapter 6
Boundary Value Problems
In this chapter we discuss the approximation of typical boundary value problems with the spline spaces introduced in chapter 4. All examples fall into the general framework described in section 2.4: the differential equation for the solution u has a weak formulation as a variational problem where H is a Hilbert space which incorporates the boundary conditions. The Ritz-Galerkin approximation Uh = £],-e/ M; #,- is obtained simply by replacing u by M/, and v by the basis functions B^. Although conceptually very straightforward, this approach covers a wide range of applications. In section 6.1 we discuss the general inhomogeneous Poisson problem as a typical example for essential boundary conditions. Such constraints have to be incorporated into the finite element subspaces and thus require a weight function. In contrast, natural boundary conditions are automatically satisfied by solutions of the variational problems and thus permit a much simpler approximation. This is illustrated in section 6.2 for the computation of incompressible flow. Section 6.3 combines both cases and considers more generally second-order differential operators with variable coefficients. In section 6.4 we describe the plate problem as an example of a fourth-order equation. Finally, sections 6.5 and 6.6 are devoted to linear elasticity, which is the classical and perhaps most important engineering problem in finite element analysis.
6.1
Essential Boundary Conditions
As a typical model problem we consider Poisson's equation with inhomogeneous Dirichlet boundary conditions: This basic boundary value problem describes many physical phenomena. The classical membrane problem was already mentioned in section 2 (cf. Figure 2.1). Other examples include heat conduction, electrostatic and magnetic potentials, and fluid flow. 71
72
Chapter6. Boundary Value Problems
To derive a variational formulation, we first eliminate the inhomogeneous boundary conditions by setting where u e HQ (D) and g is an extension of g to all of D. Then we multiply the differential equation by v e HQ and integrate by parts. This yields
as the associated variational problem. Applying the Lax-Milgram theorem 2.7, we obtain the following existence result. 6.1 DirichJet Problem The inhomogeneous Dirichlet problem (6.1), corresponding to the bilinear form
and the linear functional
has a unique solution
we can use any of the spaces tuB/,, w eB/,, and u;B/, (D), described in chapter 4, with a weight function of order 1 which vanishes on all of dD. The standard choice are web-splines (cf. definition 4.9). The simpler weighted splines tuB/, are adequate for small systems, where stability considerations do not play a significant role. Hierarchical refinement is recommended when the solution has singularities. To compute the right-hand side of the Ritz-Galerkin system we have to define an extension g of the boundary data. If no exact analytic expression is available, we can use a linear combination of B-splines
defined by minimizing fdD \g — gh\2- The set dK contains all indices for which b^ is nonzero on 3D. If the domain is defined via the R-function method, we can apply transfinite
6.1. Essential Boundary Conditions
73
interpolation techniques as described in [78]. These methods allow us to handle other types of boundary conditions as well and yield exact representations of the data. If the boundary, the weight function, and the data /, g are smooth, web-splines provide full approximation order. By Cea's inequality 2.8 and Jackson's inequality 5.11,
with eh = u — Uh- For the L2-error we gain a factor h by the Aubin-Nitsche duality principle 2.9. Since a is symmetric, the dual problem
is a homogeneous Poisson problem with right-hand side eh. Hence, ||w*||2 :< lkfcllo» and theorem 5.12 yields For both the H1- and the L2-norm, the convergence rate is optimal. To illustrate the above estimates, we consider a test problem with a known solution which permits the computation of exact error data. As shown in Figure 6.1, we choose a domain D which is bounded by the algebraic curve
Moreover, we set g = 0 and define the right-hand side / so that
Figure 6.1. Solution u ofPoisson's equation for test data.
74
Chapter 6. Boundary Value Problems
solves— AM = /. This problem is slightly more complicated than examples with elementary boundaries (rectangles, ellipses, etc.), to rule out accidental simplifications in the numerical tests. Figure 6.2, visualizes the error of web-spline approximations, using the polynomial w, which defines 3D, as a natural weight function. In the top two diagrams, we plotted \\6h Ho and \\£h II i versus the grid width h for degrees n = 1 , . . . , 5 (markers O, A, D , iV , $ ). The bottom diagrams show the numerically computed convergence rates
As expected, ro ^ n + 1 and r\ % «, since the solution is infinitely differentiable. The example confirms that using a higher degree pays off, in particular since the dimension of web-spaces is essentially independent of the degree. For example, for h = 2~3, the /^-error of quintic approximations is roughly by a factor 107~3 smaller than for linear web-splines.
Figure 6.2. Logarithmic errors log ||e/, ||o, log ||e/, || i (top) and convergence rates (bottom) for web-spline approximations of degrees 1, . . . , 5 and grid width h = 2~^, IJL = 0, . . . , 5.
6.2. Natural Boundary Conditions
6.2
75
Natural Boundary Conditions
While essential boundary conditions have to be incorporated into the solution space, natural boundary conditions are automatically satisfied by weak solutions. As an example, we consider the Neumann problem
where 31- denotes the normal derivative, i.e., d^u = £gradw with £ the outward unit normal to 3D. Despite the simplicity of the equations there are some subtle points. From the identity
we see that the data must satisfy the compatibility condition
The necessity of this condition will also become apparent from the physical interpretation in the example discussed below (cf. Figure 6.3). Moreover, a solution is only determined up to an additive constant. These facts have to be taken into account in the associated variational problem. As usual, we derive the weak formulation by multiplying with a test function v and integrating by parts,
Having not assumed that i; vanishes on 3D, the boundary conditions for u appear naturally on the right-hand side; i.e., we can define
Since the restriction to the boundary is a continuous map from Hl(D) to L2(3D) (cf. A. 10), A. is bounded: Obviously, the bilinear form gradwgradi; is also bounded on Hl. A slight difficulty is that a is not bounded from below since it vanishes on constants. This problem is resolved by working with the subspace
Using that the projection
1 onto constants is zero on //]_, we have
76
Chapter 6. Boundary Value Problems
by the Bramble-Hilbert estimate 5.5 and with | • |i denoting the Sobolev semi-norm (cf. section 2.3). Hence, the ellipticity of a on H]_ follows, and we can apply the Lax-Milgram theorem 2.7.
The Neumann problem (6.2), corresponding to the bilinear form
and the linear functional
has a unique solution u € H[, provided mat the compatibility condition (6.3) is satisfied and / and g are square integrable. We note that the compatibility condition was not needed to establish the hypothesis of the Lax-Milgram theorem. It is necessary in order to conclude that a sufficiently regular solution of the variational problem solves the boundary value problem (6.2). If (6.3) is satisfied, A. vanishes on constants, so that
Choosing v e HQ proves that — Aw = /, since in this case the variational equations are identical to those for Poisson's problem. Hence,
which implies d±u = g since all test functions v e Hl are admissible. The Ritz-Galerkin approximation can be computed with any of the spaces B/,, eB/, (web-splines with w = 1), and B/,(P); a weight function is not necessary. We can ignore that these spaces are not contained in //}, i.e., that the constraint /D w/, = 0 is not satisfied. Considering, e.g., web-splines (with w = 1), we solve the semidefinite system
for Uh = X!/e/ M( Bi • Th£ compatibility condition guarantees that A. vanishes on constants, so that a solution exists. Subtracting a constant from Uh does not affect the bilinear form, which involves only gradients. Hence, we can select a solution with the proper normalization. As an application we consider the flow of an incompressible fluid in a channel, as is illustrated in Figure 6.3. If the velocity field V has a potential, i.e., if
then conservation of mass implies
6.2. Natural Boundary Conditions
Figure 6.3. Streamlines (top) and velocity through a channel with two islands.
77
(bottom) of incompressible flow
Moreover, the flow rate at the boundary is
In the example of the figure, g equals Ujn > 0 (— i>in) at the left (right) vertical boundaries and is zero at the horizontal and inner boundaries. Here, the compatibility condition fdD g = 0 assures that the total mass of the fluid is conserved (inflow = outflow). The numerical computation of the streamlines is very sensitive. Since the RitzGalerkin approximation does not satisfy the natural boundary condition exactly, some of the numerically generated streamlines might intersect the boundary. Of course, as the grid width becomes small, the percentage of such cases diminishes. The data for Figure 6.3 were computed using quadratic nonweighted web-splines. As is illustrated in Figure 6.4, only relatively few inner quadratic B-splines (marked at the lower left corners of their supports) are coupled with outer B-splines. Hence, eB/, (the web-space with if = 1) is almost a standard spline space. This simplifies the assembly of the Ritz-Galerkin matrix since for the majority of entries precomputed values can be used.
78
Chapter 6. Boundary Value Problems
Figure 6.4. Extended inner B-splines b, ( J ( i ) ^ 0). For a smooth solution, as in the above example,
by Cea's inequality 2.8 and theorem 5.8. This requires a minor additional argument since, strictly speaking, we have to assume fD uh = 0. To remove this constraint, we let u/, be the best approximation to u from eB^ in Hl and define an approximation vh = VH — Povh € //} by subtracting the orthogonal projection onto constants. Then we have
by Jackson's inequality 5.11. Moreover, since PQU = 0,
by the Bramble-Hilbert estimate 5.5. Combining both estimates proves that the //'-error is :< hn also for the constraint approximation vh . The same argument shows that the Aubin-Nitsche duality principle 2.9 applies. There, we have to consider the auxiliary problem
with eh = u — uh. Elliptic regularity implies ||«*||2 ^ \\eh\\o, so that
where we argue as above to remove the constraint on the finite element subspace. Hence, the L2-error is of order O(hn+]).
6.3. Mixed Problems with Variable Coefficients
6.3
79
Mixed Problems with Variable Coefficients
As a generalization of the two basic problems discussed in the previous section we consider the boundary value problem
where A(JC) is a symmetric positive definite matrix, which is smooth on D, ao and a, are bounded nonnegative functions, F is a subset of 3D with nonzero (m — 1) -dimensional measure, and £ is the outward unit normal for 3D. For simplicity we have assumed that the essential boundary conditions on F are homogeneous. The reduction to this case has been discussed for Poisson's equation in section 6. 1 . We recall that we do not distinguish between row and column vectors. This means we write
for vectors £ and 77. Since the matrix A is symmetric, no ambiguity arises. A brief comment about the assumptions on the sign of ao and a is in order. Their relevance becomes apparent by considering the univariate problem For both ao < 0 and a < 0, there are choices of the parameters for which the boundary value problem has no solution (e.g., (ao, a) equal to (— n2/4, 0) or (0, — 1)). Hence, without restrictions on the coefficient functions the analysis becomes much more subtle. Returning to the discussion of the general boundary value problem (6.4), we derive a variational formulation in the usual way. First, the essential boundary conditions are incorporated into the solution space, which we choose as Then, integrating by parts, we obtain
since v vanishes on F. Replacing the integrand of the boundary integral by (g — au)v leads to the following result. 63 General Second-Order Elliptic Problem The boundary value problem (6.4) corresponding to the bilinear form
and the linear functional
has a unique weak solution u e H£ if f and g are square integrable.
80
Chapter 6. Boundary Value Problems
The assumptions on the coefficients and the data, specified at the beginning of this section, are just right to guarantee ellipticity as required by the Lax-Milgram theorem 2.7. Since A, ao, and a are bounded,
Therefore,
by the Cauchy-Schwarz inequality and because ||M ||o,3D ^ II" II i by the boundedness of the trace operator (cf. A. 10). For the lower bound we note that
This implies
and for u € //r the right-hand side is >; ||M||^ by the Poincare-Friedrichs inequality A. 12. For the boundedness of A, the second requirement of the Lax-Milgram theorem, the assumptions / e L2(D), g e Lz(dD\r), are clearly sufficient. It would be necessary that these functions belong to the dual spaces of // r (D) and // r (D)|9 D \r, respectively. For numerical and practical considerations, specifying these minimal regularity requirements is rarely of importance. As an example, we consider the heat conduction problem depicted in Figure 6.5. Four pipes with radius r and distance 2r are enclosed in a cylindrical isolation with radius 5r. They have a constant temperature u = M p jpe, and the heat flux at the cylinder boundary satisfies
where ua\T < «pipe is the outer temperature. Assuming that the isolation material is homogeneous, AM = 0 in the simulation region. Hence, we obtain a special case of the boundary value problem (6.4) with A the unit matrix, aQ = Q,a = y/r, f = 0, g = au^T, and F the union of the circular boundaries of the four pipes. Because of the apparent symmetry we have to compute the solution only for a quarter of the domain. To this end we add the boundary condition 3 ± w = 0 at the horizontal and vertical artificial boundaries. Figure 6.5 visualizes the temperature distribution u(x) for y/r = 1. The values of Mpipe, « a ir> and r are not relevant. We can change them by scaling and translating the solution and the variables. A convenient choice is
For these values the level curves in Figure 6.5 correspond to u = —0.1, . . . , —0.7.
6.3. Mixed Problems with Variable Coefficients
81
Figure 6.5. Temperature distribution in a cylindrical isolation of four pipes. We computed a numerical solution with web-splines, using
as a natural weight function. To judge the accuracy, we determined the relative error of the artificial boundary condition in the maximum norm,
The left-hand diagram in Figure 6.6 shows log e as a function of h = 1~* for /JL = 0 , . . . , 5, using as in section 6.1 the markers O, A, D, "fr, & for the degrees n = 1, . . . , 5. On the right we have listed the convergence rates Q, which were estimated from the overdetermined equations The numerical results indicate thatthe approximation order is optimal, i.e., e(n, h) = O(hn). This does not follow from the standard finite element error analysis, which uses only the Sobolev norms || \\i. Boundary estimates and convergence rates in the maximum norm are much harder to obtain. We included one numerical example (not confirmed by the theory) to illustrate that weighted spline approximations generally perform very well regardless of the type of error measure. The simplicity of obtaining existence of weak solutions and error estimates for RitzGalerkin approximations is deceptive. Let us mention an important theoretical aspect which has been neglected when discussing numerical approximations: regularity of solutions. As
Chapters. Boundary Value Problems
82
Figure 6.6. Error of the normal derivative (left) and estimated convergence rates (right). is well known, even moderate smoothness of solutions cannot be taken for granted. For the boundary value problem under consideration, the Lax-Milgram theorem just asserts that u has first-order partial derivatives in LI- This is not sufficient to conclude that the differential equation or the natural boundary conditions are satisfied, not even in a weak sense, i.e., pointwise almost everywhere. To accomplish this we need that u e H2. Then, for v e H
since integration by parts is justified. Choosing test functions v which vanish on all of 3D, we see that [...] = 0, a.e. Moreover, since the restrictions of test functions to the boundary are dense in L,2(dD\r), it also follows that {...} = 0, a.e. This completes the cycle. From a classical solution we have obtained the variational formulation via integration by parts. Elegant (but soft) functional analysis yields the existence of weak solutions. After improving the regularity of solutions (the hard part; cf., e.g., [59]) we arrive back at the pointwise interpretation of the differential equation.
6.4
Biharmonic Equation
Many engineering applications have a natural variational formulation. An example is the clamped plate problem, illustrated in Figure 6.7. A transverse force with normalized density / is acting on a plate of width d, which is fixed in horizontal position at the boundary. The equilibrium position u(x\ , x^) is determined by minimizing the potential energy
83
6.4. Biharmonic Equation
Figure 6.7. Clamped plate. over all u e HQ. In the first integral, v = A/(2(A + />i)) € (0, 1/2) is the Poisson coefficient of the plate, determined from the Lame constants A. and /z [89]. Because HQ is the closure of smooth functions u with compact support in D,
Hence, the energy functional simplifies to
Of course the constant v cannot just disappear. It is hidden in the normalization of /. The actual force per unit surface area is
where E = /u(3A + 2/z)/(A. + JJL) is the Young modulus. The ellipticity of the bilinear form a on HQ is easily established. As usual, only the lower bound requires a more elaborate argument. By (6.5)
Moreover, by the Poincare-Friedrichs inequality A. 12
for u e HQ, so that \\u||2 ^ |w| 2 . In view of (6.6) this proves the lower bound for a. As a consequence we obtain the following result.
Chapter 6. Boundary Value Problems
84
6.4 Clamped Plate Hie boundary value problem, associated with the bilinear form
and the linear form
with / € La, has a unique solution u € /f0. The weak formulation of the plate problem corresponds to the biharmonic boundary value problem as is seen in the usual way by integrating by parts. For the Ritz-Galerkin approximation
we can use any of the spaces wB/,, w e B/j, or tuB/,(D) with a weight function of order 2. Figure 6.8 shows a numerical solution, computed with web-spaces of degree 2 and grid width h = 1/4 (dim weB/, = 220). In this example the plate has the form of a disc of radius 2 with a rectangular gap and is pulled down by its own weight (/ = —const). Because of the simple geometry the R-function method suggests itself for the construction of the weight function w. To this end, we have to represent the domain D in terms of elementary
Figure 6.8. Displacement (magnified) of a clamped plate under gravitational force.
6.4. Biharmonic Equation
85
sets, described by simple inequalities. For example, we can write D — DI Pi #2,3 with
With the aid of R-functions the Boolean operations are translated into expressions which combine the elementary weight functions wv (cf. section 4.3). Using the standard R-function system of Table 4.1, we obtain
Up to scaling, w = w^ models the qualitative shape of the displacement u fairly accurately. Hence, we obtain good results even with relatively low-dimensional spline spaces. The numerically estimated relative errors for the displacement u of the example in the figure are
respectively. For a 2-regular weight function, for which u/wis smooth on D, the error in the energy norm is of optimal order,
by Cea's inequality 2.8 and theorem 5.8. One can also show that the L2-error is of order O(hn+}} for n > 2. However, this requires a generalization of Jackson's inequality 5.11, which we proved only for a standard weight function vanishing, by definition, linearly on 3D (cf. the remark at the end of section 5.5). For the plate problem stability of the finite element basis is particularly important. Because of the fourth-order differential operator the condition number of the Ritz-Galerkin matrix grows like h~4 for standard subspaces. For bases, which are not uniformly stable with respect to the grid width, cond Gh becomes prohibitively large. For example, for cubic approximations uh e wB/, of a clamped circular plate with radius 1,
Already for h = 1/8 the MATLAB "cond" command [63] returns the value "inf"; i.e., the Ritz-Galerkin matrix is considered singular in double precision arithmetic. In contrast, the condition numbers for the stabilized web-spaces (uh e u;eB/,) are considerably smaller. In the left diagram of Figure 6.9 we have plotted log(condG/,) versus the logarithm of the dimension d of the web-space for the degrees n = 2, . . . , 5 (markers A, D , "fr, &). By comparing with the auxiliary dashed line (cond = const d2 x /z~ 4 ), we see that cond G/, does not grow faster than predicted by the theory. The right diagram shows the number of iterations required by the ssor-preconditioned conjugate gradient method for a relative accuracy < le — 10. As expected, the computational work remains acceptable also for small grid widths. In all cases the computing times are small compared to the time for assembling the Ritz-Galerkin system (< 2 seconds on a PC with Pentium 800 processor). If inhomogeneous boundary conditions are specified in (6.7), we can reduce the problem to the homogeneous case, as discussed in section 6.1. We subtract from the solution u a
Chapter 6. Boundary Value Problems
86
Figure 6.9. Logarithmic plots of the condition number condGh and the number of peg-iterations versus the dimension of the web-space u^B/,. function g which satisfies the boundary conditions. Then, the difference is a solution of the homogeneous problem. If an explicit analytic extension is not available, we can construct a spline extension g/, of the second-order boundary data. A simple procedure is to minimize
over linear combinations
6.5
of B-splines with some support on 3D.
Linear Elasticity
Models in structural analysis have been the starting point for developing finite element methods [90, 3]. In this application standard finite elements have a natural physical interpretation as small building blocks of elastic materials. Simulations in elasticity still represent today a very important branch of finite element analysis. The basic physical model is illustrated in Figure 6.10. An elastic solid, occupying a volume D, is fixed at a portion F of its boundary and subject to a volume force on D and a boundary force on 3D\F with densities (f\ , /2, fo) and (g\ , g2, £3), respectively. These forces result in a small deformation of the solid, described by a displacement M(JC) e M3 of the material points jc e D. Typically u is very small, and large distortions indicate excessive forces. The deformation is determined by minimizing the total energy
over all admissible displacements
.5. Linear Elasticity
87
Figure 6.10. Elastic deformation (magnified) of a dam under lateral pressure and g ravitational force. with //jl the subspace of functions in H1 which vanish on f (cf. section 6.3). Here, a is the stress and s the strain tensor, and we used the notation
We refer to [60] for a derivation of the energy functional and merely give the definition of the two symmetric tensors involved:
where trace e = £1,1 + £2,2 + £3,3- The constants A. and /x are the Lame coefficients, which describe the elastic properties of the material. The second identity, which relates the stress and strain tensor, is known as Hooke's law, valid for an isotropic, homogeneous material. Writing the first part of the energy functional (6.8) in the form
we see that it corresponds to a symmetric bilinear form a (u, u). Since the integrand involves only first-order derivatives, it is straightforward to establish the boundedness of a in the space (//p)3, which is equipped with the product norm
Chapter 6. Boundary Value Problems The derivation of the lower bound, necessary for ellipticity, is much harder. It involves Korn's inequality
proved, e.g., in [65] (cf. also the original work of Kom [56, 57]). Moreover, using that u vanishes on F, we can eliminate the term / MM on the right-hand side with the aid of the Poincare-Friedrichs inequality A. 12. Having established the hypothesis of the LaxMilgram theorem 2.7, we obtain the following familiar result.
6.5 Elasticity Problem The variational problem corresponding to the bilinear form
and the linear functional
with
3
2(D)
and g e L2(BD\r)3 has a unique solution (MI, u2, «a) €
Integrating the variational equations
by parts (recalling the definition ek^ = ^(dkUf + d^Uk)), it follows that
for a sufficiently smooth solution u (£ denotes the outward normal). Because of the symmetry of a, the sums of the expressions in brackets are equal in both integrals. For example, the first integral simplifies to
Moreover, arguing as in the last paragraph of section 6.3, both integrals must vanish separately. Hence, we can read off the boundary value problem associated with the quadratic form (6.8), which is referred to as the Lame-Navier system. We have assumed that the elastic solid is fixed at a surface F c 3D. However, this need not be the case. The entire boundary could be subject to forces and deformed.
6.6. Plane Strain and Plane Stress
89
Both the variational formulation and the differential equation remain valid. However, the displacement u is not unique and compatibility conditions must be satisfied. Similar problems were encountered for the basic Neumann problem discussed in section 6.2. Assembling the Ritz-Galerkin system is slightly more complicated than for scalar problems. Therefore, we discuss it in more detail. Using web-splines as the basis for the finite element subspace, each component uv of the vector u is approximated separately by a linear combination
where J5,|r = 0. Equivalently, we can write
where Hence, the Ritz-Galerkin system GU = F has block structure. The block (k, i) of G is the (3 x 3)-matrix with entries
and the fcth block of the vector F is the 3-vector with components
Since the basis functions Biv are nonzero in only one component, the tensors a and e simplify slightly. For example,
and
according to the definitions (6.9) and (6.10).
6.6
Plane Strain and Plane Stress
In many applications of linear elasticity a reduction of the dimension is possible. Examples are long objects with constant cross section, thin plates, and discs. Two common simplifications assume that either the strain or the stress components are zero in one coordinate direction. We discuss each case in turn.
90
ChapterG. Boundary Value Problems
The plane strain model applies to objects with a constant horizontal cross section D which are subject to horizontal forces and have no vertical displacement. These assumptions imply so that Hooke's law (6.10) simplifies to
We can write the horizontal components of this identity in vector form by introducing the notation Expressing also the Lame constants in terms of the Poisson ratio v e (0, 1/2) and the Young modulus E > 0 via
we obtain the two-dimensional stress/strain relation
With these definitions, specializing theorem 6.5 yields the following variational formulation for the plane strain model. 6.6 Plane Strain Model If / and g are square integrable densities of horizontal forces, applied to an elastic object with constant cross section D and vertical displacement u$(x\ , JC2> = 0, then
is determined by
where e' We note a minor technical point. In the product a : e the mixed term o\ ,221,2 appears twice; i.e., the product of the two tensors equals
(°r3,^£3,£ = 0^,3^,3 = 0 for plane strain). This is the reason for the modification £ — > • £ ' in the bilinear form. Alternatively, we could have doubled the third diagonal element of \L strain-
6.6. Plane Strain and Plane Stress
91
Figure 6.11. Displacement (magnified) for a tunnel with constant cross section. As an example, Figure 6.11 visualizes the displacement field (x\, Jt2) i-> (MI , M 2 ) for a tunnel under normal boundary forces. A numerical solution was computed with cubic web-splines for the parameters E = 30 * 109N/m2 and v = 0.2 (beton). The two fixed boundary parts F were modeled with the canonical weight function w(x) = x2. We now turn to the description of the other possible simplification mentioned at the beginning of this section. The plane stress model applies to objects with a uniform vertical thickness which is small compared to the horizontal dimensions. Moreover, it is assumed that o does not depend on *3 and
i.e., that the stress tensor has only horizontal nonzero components. As for the plain strain model, we obtain a two-dimensional version of Hooke's law (6.10). First we see that
However, e3,3 is in general nonzero, which means that small vertical deformations are possible: We can determine £3,3 from the equation 03 3 = 0, which yields
Substituting this formula into (6.10) and replacing the Lame constants by the Poisson ratio
92
Chapter 6. Boundary Value Problems
Figure 6.12. Displacement (left, magnified) and principal stress (right) of a rotating excentric disc. and the Young modules, a short computation yields the identity
for the horizontal components q_ = (a\,\, 02,2, a\,i) of the stress tensor. The variational formulation for the plane stress model is identical to that for plane strain, except that the matrix <2 strain ls replaced by <2stress- Rather than repeating theorem 6.6 almost verbatim, we state an equivalent version, using the characterization of weak solutions as minimizers of the energy functional. 6.7 Plane Stress Model If / and g are square integrable densities of horizontal forces, applied to an elastic object with small constant vertical thickness, and if cr has only horizontal components, then the first two components (u i , «2> of the displacement minimize
over all u e (H^)2, where Figure 6.12 shows as an example a rotating steel disc (E = 212*10 9 N/m 2 , v = 0.28), fixed at a slightly eccentric axis with radius r r . The centrifugal force with ||/|| = const r yields a deformation which, for the boundary of the disc, is indicated by a dashed line. The level curves {amax = const} on the right visualize the distribution of the principal stress, which is the largest eigenvalue of the matrix a. As is expected, the largest stresses occur close to the side of the axis with points farthest from the center.
6.6. Plane Strain and Plane Stress
93
Once more, we check for this example, the accuracy of the numerical approximations. Since weighted splines are continuously differentiable for n > 2, we can compute the pointwise residuals for the Lame-Navier boundary value problem (6.11):
where g = 0 for the rotating disc. This would not be possible for standard finite element approximations which usually merely belong to Hl. Figure 6.13 shows the logarithmic errors for a normalized right-hand side (||/||o = 1) and degrees n = 2, . . . , 5 (markers A, D, "fr, $). We expect that ep<je = O(hn~l) since the residuum of the partial differential equation involves second-order derivatives. This is confirmed in the example. Actually, the numerically estimated rates are slightly better, as one sees by measuring the slopes in the diagram. Similarly, the norms e^c of the residuum of the natural boundary condition are in good agreement with the optimal estimate O(hn).
Figure 6.13. Li-norm of the residuum for the differential equation (left) and the boundary condition (right) versus the grid width h = rr2~ M , /j, — 0, . . . , 3.
This page intentionally left blank
Chapter 7
Multigrid Methods
For uniform B-spline bases the use of multigrid techniques suggests itself. Such algorithms provide the most efficient iterative solvers for large Ritz-Galerkin systems. The solution time is proportional to the number of unknowns, hence, asymptotically optimal. While for classical iterations like successive overrelaxation or conjugate gradients the convergence rate deteriorates as the grid width becomes small, multigrid schemes reduce the error by a grid-independent factor in each step. The corresponding mathematical theory is fascinating and has long been an area of very active research. As is outlined in this chapter, the general multigrid theory applies without major modifications to web-splines. We first discuss in section 7.1 a trivial univariate model problem to illustrate the main multigrid ideas: smoothing and coarse grid correction. Then we describe and analyze a standard multigrid method for the web-spaces w eB. In section 7.2 we construct canonical grid transfer operators, and in section 7.3 we discuss the recursive implementation of an iteration step. Sections 7.4 and 7.5 are devoted to the convergence proof. It is based on the smoothing property of Richardson's iteration and the sharp error estimate for quasi-interpolants.
7.1
Multigrid Idea
To illustrate the basic multigrid idea, we consider in this section the univariate model problem
This trivial example already exhibits some typical features of finite element discretizations. Moreover, the components of a multigrid algorithm can be explained in the simplest possible setting. The standard finite element approximation
with hat-functions bt = bl(-/h — i) (cf. section 3.1 and Figure 7.2) is computed from the 95
96
Chapter 7. Multigrid Methods
tridiagonal Ritz-Galerkin system
with gkj = fQ b'jb'k and fa = fQ b ^ f . Proceeding as for realistic multidimensional problems, we solve this system by an iterative method. We choose Richardson's scheme, which updates an spproximation U % U* of the coefficient vector by subtracting a multiple of the residual: The parameter y is chosen as 4/ h = IJGUoo, so that the tridiagonal iteration matrix
has eigenvalues in (0, 1). As is typical for the iterative solution of elliptic equations, Richardson's method is extremely slow because the largest eigenvalue
of £ — y~*G tends to 1 as the grid width becomes small. However, we can accelerate the convergence by exploiting that the discretizations corresponding to different grid widths are related; they approximate the same continuous problem. The obvious way is to use the solution «/, as an initial guess for computing w/,/2- Surprisingly, a more substantial improvement is obtained with the opposite procedure, i.e., by passing information from fine to coarse grids. To explain this key multigrid idea, we analyze the error reduction
of Richardson's iteration in more detail. As is illustrated on the left of Figure 7.1, highly oscillating error components are strongly damped. The diagram shows the modification of a randomly chosen initial error eu = £^ c, &, with coefficients C = U — U* by two Richardson steps (thin lines). Already the error ev of the approximation V after two steps has become slowly varying. This smoothing property of Richardson's iteration is made more precise with the diagram on the right of the figure. The top two graphs show the reduction factors Q(9), 9 = n, 2n, . . . , (\/h — !)TT, for the Fourier basis ee, which interpolates the sine-functions, i.e.,
As is apparent, the convergence for low frequencies is poor (£#(#) ^ 1 for 9 = TT). Such frequencies dominate the error after a few steps, as is the case for the error of V in the example:
7.1. Multigrid Idea
97
Figure 7.1. Errors after Richardson iterations and coarse grid correction (left) and reduction factors for the Fourier basis {sin(9vh)}o
by considering the associated variational problem. To this end we assume that the vector R corresponds to a function r, i.e.,
This means that W* are the coefficients of the Ritz-Galerkin approximation to
Clearly, the coarse grid system should approximate the same problem, so that
where bj = bl (-/(2h) — /) are the hat-functions on the coarse grid (cf. Figure 7.2). Since the Ritz-Galerkin approximations are close, a correction based on W leads to a substantial improvement of the vector V. It remains to discuss the grid transfer. We must express R in terms of R since we do not want to determine the function r explicitly. Moreover, we have to compute from W an
98
Chapter 7. Multigrid Methods
Figure 7.2. Subdivision of hat-functions. update W % W* on the fine grid. Both tasks are easily accomplished by subdividing the coarse grid hat-functions. As is illustrated in Figure 7.2,
Hence, it follows that
where the matrix
contains the subdivision coefficients. Subdivision is also used to transfer the coarse grid correction W back to the fine grid, i.e.,
Finally, the correction P W ~ W* = V — U* is subtracted from the current approximation on the fine grid: This completes one step U -> V —>• W of the so-called two-grid iteration. For the example on the left of Figure 7.1, the L2-norm of the error ew after the coarse grid correction (thick line) is smaller by more than 90% than H^JIo- To reach the same accuracy would require 250 additional Richardson iterations. The good performance of the two-grid iteration is confirmed by the convergence factors Qr(0) for the Fourier basis, shown on the right side of the figure. For all frequencies 9, Qj(9} is less than 1/3. Despite the substantial improvement it seems that we have not gained much, since the coarse grid system must be solved exactly. However, a recursive application of the correction strategy suggests itself. We interpret one iteration step U —> W as an algorithm
7.2. Grid Transfer
99
Figure 7.3. Program structure of the v-cycle (left) and convergence rates of the Richardson and multigrid iteration (right). which improves an approximation U of the solution U* — G ' F of the Ritz-Galerkin system. Then, instead of solving the coarse grid system G W = R, we define
i.e., we compute an approximation using the null vector as a starting juess. Only if the grid width is sufficiently large, we determine the exact solution W = G"1 R. This leads to a special case (v-cycle, ft — 1) of the basic multigrid algorithm 7.3, which will be described in section 7.3. The program structure of the v-cycle is shown on the left side of Figure 7.3. Starting on the finest grid, we smooth the error with Richardson iterations (steps 5) and project the residual to the coarser grid (step /?). Then, we repeat the steps s and p recursively until we reach the coarsest level /z max > where we compute the correction exactly (step c). Finally, we successively update the approximations on the finer grids (step M). The diagram on the right side of the figure compares the convergence rates of the vcycle (thin lines) with that of Richardson's iteration (thick line). For /zmax = 1/2, we show the error reduction factor Q as a function of the finest grid width h — 2~e for v = 1, 2, 3 smoothing steps. While QR —»• 1 for Richardson's iteration, the rates QV remain < 1/2 for all variants of the v-cycle. Hence, we obtain a first indication of the grid-independent error reduction of multigrid algorithms. This remarkable property will be rigorously proved at the end of this chapter in a very general context.
7.2
Grid Transfer
The finite element bases described in chapter 4 are ideally suited for multigrid techniques because of their uniform structure. As for the trivial model problem, subdivision provides a natural grid transfer operator. For the weighted spline spaces wB, this is straightforward. The univariate subdivision formula 3.9 and definition 4.1 imply
100
Chapter 7. Multigrid Methods
Figure 7.4. Relevant biquadratic B-splines bk and bi on the fine and coarse grid (left) and subdivision coefficients sa multiplied by 2nm = 16 (right).
Substituting kv <— kv — 21v and expanding the product yield the following identity, which relates the B-spline bases on different grids. 7.1 Multivariate Subdivision The relevant B-splines bt with grid width 2h can be expressed as linear combinations
k
= b\ h), where we set (n+l) = 0 for IJL < 0 or //, > n + 1.
As in the previous section, the symbol ~ refers to the coarse grid. For example, bt, t e K, are the relevant B-splines bnk 2h- Moreover, U are the coefficients of a spline u = ^£ ii(bi on the coarse grid. This notation avoids an excessive use of the subscripts h and 2h. Figure 7.4 illustrates the grid refinement in the two-dimensional case. On the left, we show for two consecutive grids with width h and h = 2h the grid positions of the relevant biquadratic B-splines, marked with small and large circles, respectively. The linear combination in the subdivision formula 7.1 involves all B-splines bk with supp bk C supp bg. In the example, these are 16 B-splines, if suppbi C D. The corresponding coefficients sa are shown on the right side of the figure. As usual, the values are associated with the lower left corner of the B-spline supports.
7.2. Grid Transfer
101
A linear combination of coarse grid B-splines bk is represented on the fine grid as
i.e., the coefficients are related by
Moreover, as for the trivial model problem in section 7.1, a residual is transferred to the coarse grid according to
where A. is the linear functional determining the right-hand side of the Ritz-Galerkin equations. Clearly, multiplying with a weight function w does not affect these formulas. Hence, the transformation rules are valid also for the spline space u>B. The grid transfer for web-splines is slightly more complicated. Because of the modification of B-splines near the boundary, the space w eB with grid width 2h is in general not a subspace of w eB. Hence, not all web-splines BI possess an exact representation on the fine grid. However, the standard projector P/,, defined in section 5.1, provides a natural grid transfer operator; i.e., we approximate B^ by
Fortunately, this does not require any detailed knowledge about the dual functions A,. To obtain explicit formulas we recall that
By applying the subdivision formula 7.1, we see that the web-spline coefficients of the approximation Ph BI of Bt on the fine grid are
We note that the summation can be restricted to the inner indices k e / since A; is supported on an interior grid cell; hence its product with any outer B-spline vanishes. The same argument shows that
Chapter 7. Multigrid Methods
102
Therefore, the sum over k reduces to a single term, corresponding to k — i, which yields the following explicit form of the projection. 7.2 Grid Transfer for Web-Splines The projection of a coarse grid web-spline is
Accordingly,
and R = P'R is the approximation of a residual on the coarse grid.
Figure 7.5. Band width of the grid transfer projection matrix.
7.3. Basic Algorithm
103
The matrix P is sparse with band width depending on the degree n and the domain D, but not on the grid width h. This follows because the coefficients s,-2/t are nonzero only if / e / n (2k + {0, . . . , n + \}m} and the number of elements in J(i) is ^ 1. Geometrically, an entry pif is ^ 0 if supp bf C supp bj for j — t or for some j with e^j ^ 0. Figure 7.5 shows the band width of the subdivision matrix for a biquadratic spline space. We listed the number of nonzero entries of P with column index I at the grid points i(2h), I e I. This is only done for the boundary indices where P does not have the standard band width (n + 2)m = 42 corresponding to the subdivision of a B-spline bt. We see that the modifications near the boundary do not substantially increase the band width. While there are up to 10 elements in /(£), there are fewer inner B-splines on the fine grid with supp hi C supp bj near the boundary. Moreover, a B-spline bt may be associated with several indices j.
7.3
Basic Algorithm
The basic components of a standard multigrid algorithm are very simple. In addition to the grid transfer operators, described in the last section, we just need an iterative scheme which strongly damps oscillating error components. As for the trivial model problem, discussed in section 7.1, we choose Richardson's iteration because this is most convenient for the convergence analysis. For a Ritz-Galerkin system
one Richardson step is defined by
with
as the standard relaxation parameter. Since y is an upper bound for the spectral radius, the eigenvalues of the iteration matrix (E — y~{G) for symmetric positive definite G lie in the interval [0, 1). Hence, Richardson's iteration converges. But the rate is in general very poor. For smooth error components, the reduction factor tends to 1 as the grid width becomes small. With all basic components at hand we can now describe one step of a multigrid iteration. It uses a sequence of grids with widths
and is conceptually identical to the procedure for the trivial model problem.
104
Chapter 7. Multigrid Methods
7.3 Multigrid Algorithm
One step of the multigrid iteration, which improves an approximation U & U* = G~l F, is defined by the program
else
end where a and £ denote the number of smoothing and coarse multigrid iterations, respectively. Let us comment once more on the heuristic for the multigrid strategy. The error after a Richardson steps is Supposedly, its slowly varying components dominate. Therefore, the residual equation
can be very well approximated on the coarse grid. This means that we consider approximate solutions of the form P W % V — U*, which are obtained as projections from the coarse grid. Since we have
Hence, G % P'GP,sothat is the appropriate approximation of (7.2) (noting that GPW % R). Solving (7.3) directly (2h = /Zmax) or approximately with ft steps of a multigrid iteration with starting guess 0, we expect that Therefore, the correction V -^ W = V — PW should lead to a substantial improvement. Figure 7.6 illustrates the grid transfers of Algorithm 7.3 for ft = 2. As suggested by the recursive pattern, this variant of the multigrid iteration is called a w-cycle. It is slightly more robust than the v-cycle, shown in Figure 7.3, and, as we will see in section 7.5, also easier to analyze.
7.4. Smoothing and Coarse Grid Approximation
105
Figure 7.6. W-cycle of a multigrid iteration with four levels. A fixed choice of the parameters a and ft is convenient for theoretical purposes such as the convergence analysis of the next two setions. However, when implementing the multigrid iteration, it is much more efficient to control the grid transfer dynamically. One should stop the smoothing iterations if the convergence becomes slow and transfer the correction back to the fine grid if the residual has been sufficiently reduced. For details, we refer to the excellent paper [20] by Brandt, who describes how to tune multigrid algorithms to optimal performance. We conclude our description of the multigrid algorithm with an operation count. To this end we recall that the matrices P and G have uniformly bounded band width. Hence, all statements in the recursive algorithm 7.3 require ;< h~m operations, i.e., an amount proportional to the number of unknowns. Denoting by a(h) the number of operations for one multigrid step with grid width h, we have
Neglecting the operations for computing the exact solution on the coarsest grid, this yields
if ft < 2m. Thus, if ft < 4 in two dimensions and ft < 8 for three variables, the computational work for a multigrid step is equivalent to that of a fixed number of Richardson iterations. Due to the reduction of the grid size, the recursive calls cause only a moderate increase in complexity.
7.4
Smoothing and Coarse Grid Approximation
We will now give an analytical explanation for the smoothing effect of Richardson's iteration and the accuracy of the coarse grid correction. These results about the two key multigrid components are fundamental for the convergence proof of the next section. In their most basic form they require regularity of the variational problem and stability of the finite element basis. Therefore, we assume that the domain D is smooth and discuss only approximation by web-splines with a standard weight function (cf. definition 4.6). Moreover, in order
106
Chapter 7. Multigrid Methods
to focus on the essential aspects of the theory rather than to aim for great generality, we consider Poisson's equation as a typical model problem. We recall from section 2. 1 that
and
Because of the local support of the web-splines, the Ritz-Galerkin matrix G has uniformly bounded band width. Moreover, since ||#,||i -< hm/2~l by Bernstein's inequality 5.4. To analyze the smoothing effect, we estimate the error V — U* after a steps of Richardson's iteration. As for any convergent scheme with symmetric iteration matrix, However, we can obtain a more precise estimate in a norm associated with the Ritz-Galerkin matrix G.
7.4 Smoothing of Richardson's Iteration The error after a Richardson steps U -> V satisfies
where U, V are approximations of U* = G
F.
If we interpret the multiplication with the Ritz-Galerkin matrix as a second-order difference operation, we expect the factor h~2\ the factor hm just reflects the normalization of the web-splines. The important fact is the division by a + 1, which quantifies the smoothing effect of the iteration. The inequality is proved by estimating the eigenvalues /c, of the symmetric matrix which describes the transition from U - t/* to G(V - U*). By (7.4), #, = A.,/y e (0, 1] for any eigenvalue A./ of G. Hence, we obtain
establishing the desired bound since y :< hm 2. We now turn to the analysis of the coarse grid correction. The following estimate shows that there is only a small discrepancy between solutions on consecutive grids.
7.4. Smoothing and Coarse Grid Approximation
107
7.5 Error of the Coarse Grid Correction
If
where jj, #*, w*, r are the web-splines corresponding to the coefficient vectors We prove this estimate by interpreting v — u* and M* as approximations to the solution of an auxiliary Poisson problem
To this end we define r] e LI by
By Bernstein's inequality 5.4,
i.e., the right-hand side of (7.5) defines indeed a continuous linear functional on L 2 . Hence, the Riesz representation theorem A.5 is applicable. From the definition (7.5) of rj it is easily deduced that We just set ty = BI = PhBi for the first identity and note that a(v — M*, B{) is the /th entry of the vector G(V — [/*). The second identity follows from
Therefore, v — u* and u* are both Ritz-Galerkin approximations to (p. By the standard error estimate (2.9),
This completes the proof since, with q = P
and by the stability theorem 5.3 and the boundedness of the quasi-interpolant Ph. We already see how theorems 7.4 and 7.5 fit together. The error after smoothing is bounded in a norm which can be viewed as a discrete analogue of || • ||2- This quantifies the damping of oscillating components and permits a sufficiently accurate coarse grid correction. Combining both estimates leads to a grid-independent multigrid convergence rate, as will be described in the next section.
Chapter 7. Multigrid Methods
108
7.5
Convergence
The truly remarkable feature of multigrid iterations is the uniform bound on the convergence rate Q, which is independent of the grid width h. The first such algorithm was discovered by Fedorenko [35] after a long history of research on iterative elliptic solvers (cf., e.g., [91]). Table 7.1 lists some of the most well-known schemes for the standard 5-point discretization of Poisson's problem on the unit square. We note the substantial qualitative improvement of the error reduction factors Q for the iteration matrices. While the Jacobi or the GauBSeidel method require — l/log£> x h~2 iterations to reduce the error by a decimal digit, for multigrid techniques, like the MGR-algorithm, a fixed number of steps suffices. This huge performance gain becomes even more dramatic when combined with the continuing improvement of computer hardware. After commenting briefly on some of the fascinating classical research on iterative methods, we now state the basic multigrid theorem. As in the last section, we continue to use Poisson's equation with homogeneous Dirichlet boundary conditions as a model problem, and we consider web-spline approximations with standard weight functions. With these assumptions we have the following result [48]. 7.6 Multigrid Convergence For ft = 2 coarse grid iterations,
for one multigrid step U -> W. Hence, for a sufficiently large number a of smoothing iterations, the convergence rate Q of the w-cycle is less than 1, uniformly with respect to the grid width h. For the proof of this result we will frequently use the stability of the web-basis and the boundedness of the standard projector, i.e., the estimates
Year
Spectral radius Q
Jacobi [53]
1845
cos(Tth)
GauB-Seidel [39, 81]
1832
COS2(7Th)
Successive overtaxation (SOR) [92, 93]
1950
1 — sin(jr/2) 1 + sin(;r/z)
Fast Fourier transform (FFT) [28]
1965
direct method -< h~2\\ogh\ flops
Multigrid reduction method (MGR) [73]
1979
< 0.096 . . .
Algorithm
Table 7.1. Classical Poisson solvers.
7.5. Convergence
109
As usual, Q = {,},£/ denotes the coefficient vector of a web-spline q = ^(
where U* = G"1 R is the exact solution of the coarse grid system. Since P/j reproduces the web-spline v — M*, we can bound the error after one iteration step U -> W by
Moreover, by combining theorems 7.5 and 7.4 of the previous section, we obtain
where we have also used that ||r||0 x hm/2\\R\\ and R = G(V - U*). Substituting (7.7) into (7.6) yields the desired bound Q ^ l/(or + 1) for the two-grid convergence rate. If more than two grids are used, the solution of the coarse grid system is approximated by a recursive application of the multigrid iteration. We merely compute an approximation w to it*. While this presumably increases the error of the correction, it is plausible that the bound on the convergence rate for the two-grid iteration persists. We prove this via induction on the grid level; i.e., we assume that the result is valid for all grids with grid width > 2h with a constant Q to be chosen later. To bound the convergence rate for grid width h, we split the error of the approximation W = V — P W after one multigrid step in the form
The first norm on the right is the error after a two-grid step, which is
as we have shown before. In the second norm on the right the vector W is the result of ft = 2 multigrid iterations on the coarse grid, starting from the zero vector as initial approximation to U*. Hence, by the uniform boundedness of the projection P and the induction hypothesis, this norm is
Finally, we note that
Chapter 7. Multigrid Methods
110
To estimate the norm d\, we use (7.7), and for di x hm/2 \\V-U* \\ we note that Richardson's method reduces the norm of the error. Combining the last three displayed inequalities, it follows that
Hence, we obtain the recursion
for the multigrid convergence rate, where € refers to the grid level. To complete the proof of theorem 7.6, we have to show that
for sufficiently large a. Since the linear system on the coarsest grid is solved exactly, QO = 0. Moreover, the worst case bound is obviously obtained if all inequalities in (7.8) are sharp. The qualitative behavior of the resulting quadratic recursion is illustrated in Figure 7.7. Clearly, the largest value of c/(a + 1) for which the sequence Qe remains bounded corresponds to the limiting case when the parabola touches the diagonal, i.e., when its slope equals 1 at the fixed point: 1 = c 2^oo- Substituting this into the fixed point equation yields
for the critical value of a. Assuming now that a + 1 > 4c2, the sequence of rates behaves as in the right diagram of the figure. Hence,
Figure 7.7. Divergence (left) and convergence (right) of the recursion (7.8).
7.5. Convergence
111
is the smallest fixed point. This confirms that the asymptotic behavior of the convergence rate is not affected by the number of grids. The proof shows once again that finite elements are ideally suited for multigrid techniques. The simplicity of the analysis, which essentially follows [6, 19], becomes particularly apparent when compared to the very first convergence proofs in [5, 35], which treated the more difficult case of difference equations.
This page intentionally left blank
Chapter 8
Implementation
Finite element methods with splines do not require any mesh generation and thereby eliminate a difficult and time-consuming preprocessing step. The construction of basis functions is comparatively fast, in particular if natural weight functions are available. Once the basis is assembled, the course of a finite element simulation parallels that of mesh-based techniques. This is illustrated in Figure 8.1, which shows the components of a typical finite element algorithm and, in more detail, the steps of the construction of a web-basis. The regular grid is a definite advantage in all stages of the computations, as will become apparent from the details provided in this chapter. Moreover, extensive software for manipulating B-splines is available and can be utilized for computing and visualizing the finite element approximations.
Figure 8.1. Steps of a finite element simulation (left) and for the construction of a web-basis (right). 113
114
Chapters. Implementation
In section 8.1 we give a brief introduction to the Bezier form for curves and surfaces. This boundary representation is a particularly convenient interface to geometric modeling systems and, of course, combines well with B-spline approximations. Section 8.2 discusses the classification of grid cells, which is essential for all basis constructions and also needed for integration routines. In section 8.3 we describe the evaluation and differentiation of weight functions, considering R-functions as well as numerically constructed distance functions. The final two sections are devoted to routine finite element procedures: numerical integration and matrix assembly.
8.1
Boundary Representation
B-splines have become a widely accepted standard for geometry description. Hence, splinebased finite element methods can be naturally integrated in CAD/CAM systems. In particular, we can take advantage of accurate boundary representations rather than having to resort to piecewise linear approximations of standard mesh-based techniques. There are many variants of piecewise polynomial geometry models. For finite element approximation the Bezier form [51, 32] is most convenient. It facilitates numerical computations since software for manipulating polynomials and solving polynomial equations can be utilized. Moreover, any spline model, such as trimmed nonuniform rational B-spline representations (NURBS) [34], can be converted to this basic form. The Bezier form was introduced by Bezier [11] for automatizing the design of car bodies. He recognized that Bernstein polynomials yield parametrizations with very intuitive geometric properties. 8.1 Bezier Curve A rational Bdzier curve with control points cv e Mm and weights a)v > 0 is parametrized by
where fi"(t) = (")(1 — t)n vtv are the Bernstein polynomials of degree n. Figure 8.2 illustrates some important properties of Bezier curves, which follow readily from the definition (cf. [33, 51]). • Endpoint interpolation: The curve starts at the first and ends at the last control point, i.e., Moreover, the control polygon, formed by CQ, . . . , c,,, is tangent to p. • Convex hull: The curve p lies in the convex hull of the control points CQ, . . . , cn. • Influence of weights: Increasing a weight a>v pulls the curve toward the control point c y . If tov = 1 for all v, the denominator ^ v a>v fi"(t) is identically equal to 1, and p is a polynomial parametrization.
5.1. Boundary Representation
115
Figure 8.2. Conic sections, represented by quadratic Bezier curves (left), and a quintic Bezier curve with convex hull of its control polygon (right).
Because of the first two properties the shape of a Bezier curve is modeled fairly accurately by the control polygon. This fact has been the principal motivation for using the Bezier form in geometric design. Varying the weights provides additional design flexibility. However, more importantly, the rational form permits the exact representation of conic sections as quadratic Bezier curves. In the example on the left side of Figure 8.2 with
and a)Q = 0)2 = 1, the quadratic Bezier curve represents a circular arc if a)\ = l/\/2, a parabola if co\ = 1 (dashed line), and part of a hyperbola if a>\ > 1. Chapter 6 already contains several examples of domains modeled by Bezier curves. If the boundary cannot be represented exactly, spline approximations are used and converted to Bezier form. This ensures that the curves join smoothly. As for B-splines we can form tensor products of Bernstein polynomials to obtain bivariate representations. 8.2 Bezier Surfaces A rational Be*zier surface with control points cVtfi € R3 and weights parametrized by
with The properties of Bezier curves generalize in an obvious way. In particular, the endpoint interpolation property implies that the control points cv^ with v or /x equal to
Chapter 8. Implementation
116
Figure 8.3. Bezier surfaces with boundary curves and control polygons, representing a three-dimensional domain D. either 0 or n correspond to the boundary of the Bezier surface. For example,
since ^(0) = 1 and /?^(0) = 0 for /z > 0. This property is very convenient for joining Bezier surfaces. If neighboring surfaces share the common boundary control points, exact continuity of the piecewise Bezier surface is ensured. Figure 8.3 shows an example of a Bezier boundary representation, consisting of eight biquadratic rational Bezier surfaces (having nine control points each and sharing the control points of the highlighted boundary curves) and a disc at the bottom of the object. The upper half is modeled with four triangular surfaces, which have a multiple control point at the tip; i.e., for each surface all three control points corresponding to the top boundary coincide. Including such degenerate representations increases the flexibility for modeling surfaces with a complicated topological structure. This is particularly important for NURBS surfaces with many trim curves.
8.2
Classification of Grid Cells
The classification of grid cells is an important preprocessing step. Identifying the cell types is necessary for the construction of the spline bases as well as for integration routines. As described in section 4.4, we distinguish between inner, outer, and boundary cells Q, depending on whether Q c D, QC\ D — 0, or the interior of Q intersects the boundary (cf. Figure 4.6). The difficult part is to determine the boundary cells. The distinction between
.2. Classification of Grid Cells
117
Figure 8.4. Determining two-dimensional boundary cells from grid line intersections (black solid markers), local extrema (squares), and auxiliary test points (circles). inner and outer cells can then be made by applying a standard in/out test (cf., e.g., [68]) to a single point in each cell. The two-dimensional case is straightforward. There are a number of conceivable strategies for identifying the boundary cells. For example, as is illustrated in Figure 8.4, we can determine the intersections of 3D with the grid lines and local extrema, i.e., points of 3D with minimal or maximal horizontal or vertical component. Then, the boundary cells can be identified with the aid of the following observation. 8.3 Characterization of Planar Boundary Cells The interior of a planar boundary cell contains at least one local extremum of 9 D or a segment between two consecutive intersections of BD with grid lines. An algorithm based on this characterization is easily implemented. We first determine horizontal and vertical (linear) boundary segments and record one point for each such segment on a list of test points. Then we add the isolated extreme points to this list. Finally, we determine the grid line intersections and choose one boundary point between consecutive intersections as further test points. Now we just have to check to which cells the test points belong (ignoring points on grid lines). This strategy is illustrated in Figure 8.4, which shows possible patterns of 3D within a boundary cell. In each case isolated local extrema are marked with squares and additional test points with circles. The two examples on the left illustrate typical situations. For the third cell, a local extremum lies on a grid line. This exceptional case shows that we cannot ignore tangential grid line intersections since the set of test points may otherwise be insufficient. While covered by the algorithm, the fourth case should not be permitted in practice. If a hole of the domain is completely contained in a grid cell, the grid width is too large. It is unlikely that the finite element approximation will be sufficiently accurate. In fact, one should require that, except for corners, the tangent direction of 3D changes only moderately within a grid cell. For boundaries in Bezier form the above procedure requires one to compute roots of low-degree polynomials. While up to degree 4 explicit formulas exist, some instabilities may be caused by almost tangential intersections. However, this can be avoided by choosing a grid which maximizes the distance from extreme points. The generalization of the above methods to three dimensions is possible but not straightforward. There exist considerably more topological possibilities. Hence, we prefer an alternative approach, which is particularly suited for Bezier representations.
118
Chapter 8.
Implementation
Figure 8.5. Bezier surface with bounding boxes (left) and classification strategy for grid cells (right). As is illustrated in Figure 8.5, we enclose the Bezier surface in bounding boxes, corresponding to a uniform partition of the parameter domain. The midpoints p(sv, / M ) of these boxes (marked with dots) lie on the surface, and the width is determined with the aid of bounds on the derivatives of the parametrization. 8.4 Bounding Box If dt,s and dt,t (£ = 1,2,3) are bounds for the absolute value of the derivatives dspt and 3tpt, then the surface piece
is contained in the box with center p(s, t) and width de,s8s + dt,t8t in the £th coordinate direction. This result is a simple consequence of the integral form of the mean value theorem:
Taking absolute values, the Ith component of the left-hand side is
Hence, the distance from the center of the box is at most half the specified width.
8.3. Evaluation of Weight Functions
119
The strategy for identifying the boundary cells is illustrated schematically on the right side of Figure 8.5. If 8S and 8t are chosen small enough, most grid cells which intersect the Bezier surface will contain one of the points p(sv, ?M) and hence are easily identified. For example, we may choose
Then, according to theorem 8.4, the surface pieces are contained in boxes of width h/2, i.e., half the width of the grid cells. As for the Bezier surface in the figure the boxes form a narrow strip, which describes the position of the surface fairly accurately. Therefore, only relatively few grid cells will intersect one of the bounding boxes but not contain any of the points p(sv, ? M ). In the example on the right of the figure this is the case for the bottom grid cell. Such grid cells have to be analyzed by a different method. For example, we can use a constrained optimization algorithm to check whether the distance in the maximum norm of the cell midpoint to the surface is < h/2. Of course, we can also first repeat the bounding box strategy locally, with smaller step sizes 8S and 8t . Bounds on the partial derivatives of polynomial Bezier parametrizations p(s, t) are easily determined. As for linear combinations of uniform B-splines we just have to form differences of the control points (cf., e.g., [51]). The control points of dsp and dtp are the arrays
of dimension n x (n + 1) and (n + 1) x n, respectively. Hence, by the convex hull property, we can define
It is also possible to derive more precise bounds which take the signs of the partial derivatives into account. Alternatively, we can determine bounding boxes directly via the convex hull property and implement a classification scheme based on de Casteljau's subdivision algorithm. However, the description of such more sophisticated—and slightly more efficient — techniques would require more advanced knowledge of Bezier representations.
8.3
Evaluation of Weight Functions
In section 4.3 we introduced two classes of weight functions w: R-functions and blended distance functions. As we will see in this section, both types can be evaluated efficiently. We begin by describing a basic localization technique. For complicated domains it is convenient if the values w(x) depend only on boundary parts close to x for any point x e D. This reduces the complexity of computations and also simplifies the definition of weight functions. A simple solution is provided by the following theorem. Local weight functions are blended with the aid of a positive partition of unity (provided, e.g., by B-splines).
120
Chapters. Implementation
8.5 Local Weight Functions Let F be the union of smooth components Ff of the boundary of D and denote by b'k the relevant B-splines with grid width h'. Moreover, assume that wk are continous functions which, for some 8 > 0, satisfy
with dk,t = dist(supp b'k, F^). Then,
is a weight function of order 1 for F. The application of this theorem is straightforward. We can define weight functions separately on the B-spline supports suppb'k = kti + [0, n + \]mh' (usually h' ^> h). On each support only neighboring boundary components have to be considered, i.e., parts F^ of F with distance < 8. Ifdkj > 8 for all t, we can just set Wk = 1. Formally this is implied by the convention dist(;t, 0) = 1. For the proof of theorem 8.5 we first observe that the assumptions about the local weight functions imply that
This is intuitively clear since boundary components F^ with dk.t > 8 should not matter for determining the distance near the boundary. Indeed, if the distance to x is attained at such a boundary part, then the right-hand side is > 8. Hence, u>k(x) ;< (diamD)dist(jc, F)/5, establishing the nontrivial estimate of (8.1). To complete the proof, we note that convex combinations preserve the estimate, so that
as claimed. Figure 8.6 illustrates the construction of theorem 8.5. We see that, if 8 is chosen small enough, only near a corner is more than one curve Ff involved in the construction of the functions Wk- The supports of the corresponding B-splines, which intersect two of the three boundary strips of width <$, are marked with black squares at their lower left corners. B-splines marked with white squares are multiplied either by w^ = 1, like the one with highlighted support in the middle of the domain, or by a weight function for a single boundary curve. The localization has a similar effect in three dimensions. The weight functions w\^ typically correspond to three boundary components near a corner and to two boundary components near an edge. It is also apparent from the figure that the construction of theorem 8.5 needs to be applied to relatively few weight functions only. If the weight functions wk coincide for all B-splines which are nonzero on a grid cell Q, then ^ b^Wk = Wt on Q. In the example this is the case for the shaded grid cells since we have used local weight functions with common
.3. Evaluation of Weight Functions
121
Figure 8.6. Construction of local weight functions with biquadratic B-splines. plateau, i.e., Blending different weight functions is required only on very few grid cells near the corners. We now turn to the evaluation of weight functions. This also involves the computation of gradients. As we already remarked in section 4.3, software for automatic differentiation can be used. However, the implementation of special purpose routines is not difficult and makes the finite element codes self-contained. We sketch below basic algorithmic components for computing R-functions as well as blended distance functions. A weight function w, constructed with R-functions, can be evaluated recursively. Starting from predefined weight functions
we compute leading to w = wp. The R-functions rt correspond to Boolean operations (cf. Table 4.1) and have one or two previously defined weight functions as arguments (in the case of one argument the dependence on w^ is ignored). The gradient of w can be evaluated simultaneously by differentiating the recursion. By the chain rule we have
122
Chapter 8. Implementation
where 9^ denotes the partial derivative with respect to the kth variable. Hence, we can successively compute
Higher derivatives can be evaluated analogously, but are needed only for fourth- and higher order problems. The standard R-functions for union and intersection are
with the positive square root corresponding to the eperation U and–s to U. Accordingly, the recursion for the gradients becomes
which does not require much additional computational work. While the pure R-function method yields explicit expressions for weight functions, blended distance functions have to be evaluated numerically. The basic step is to compute the distance from smooth boundary parts for x in a sufficiently narrow strip rs (cf. Figure 8.7). Once the distance is determined, combining d with other functions (also R-functions) and computing derivatives present no problems. The width 8 of the boundary strip must be chosen small enough to avoid singularities of d. In particular, opposite boundaries of the domain must be separated, so that for any x G rs there is a unique closest point p e F. With these assumptions, the distance can be determined locally with the aid of the familiar orthogonality condition. We first discuss the two-dimensional case and assume that the curve segment F has a regular parametrization (typically in Bezier form)
Figure 8.7. Distance to a smooth boundary component F.
8.3. Evaluation of Weight Functions
123
Then, as is illustrated in Figure 8.7, the tangent vector at the point p(t) closest to x is orthogonal to the segment [jc, p ( t ) ] , i.e.,
This is a nonlinear equation for the parameter t which has a unique solution if the width of the strip r$ is sufficiently small. The gradient of d(x) = \\x — p(t)\\ requires no further computations. It is equal to the curve normal:
This is intuitively clear since the gradient represents the direction of steepest increase. A precise explanation is given in a moment, when we discuss the three-dimensional case. Moreover, we will also comment on the numerical solution of the orthogonality equation. The distance to a surface F can be determined in a completely analogous fashion. Here, the parametrization has the form
and we assume that the cross product d\p x 82 p is nonzero and oriented as the outward normal %(t\ , 12). With these assumptions we have the following characterization. 8.6 Distance Function For points x in a sufficiently narrow boundary strip T& the distance
is determined with the aid of the orthogonality relations
and gradd? The solvability of the nonlinear system (8.2) can be established with the aid of the Kantorowitsch criterion. We omit the standard argument and merely confirm that grad d = — £. To this end we consider the bijective transformation
By the inverse function theorem, the gradient of the distance d = yj, with respect to (jti , Jt2, XT,) is the last row of the inverse of the Jacobi matrix
To prove that the entries (3, 1), (3, 2), (3, 3) of (/')"' equal — £, we have to check that
This follows since the scalar products £ d\ p, % 82/7, £ d\ % , £ 82^ vanish; the first two because the partial derivatives of p span the tangent plane at p(t), and the last two because 3V (£ £) =
Chapter 8. Implementation
124
The nonlinear system (8.2) can be solved efficiently. If F is represented in Bezier form, p and dvp have rational components. Hence, by multiplying with the common denominator, the orthogonality relations can be transformed to a system of two polynomial equations (for boundary curves to a single polynomial). Hence, algebraic and semi-algebraic software for finding polynomial roots can be applied. Alternatively, we can use Newton's method. In particular, for degree > 2, this is faster since very good start values are available. For assembling Ritz-Galerkin matrices weight functions have to be evaluated at a dense grid of points, used in the quadrature formulas. Processing these points sequentially, one or two Newton steps usually suffice.
8.4
Numerical Integration
To assemble Ritz-Galerkin systems we need to compute integrals over subsets of the domain D and its boundary. This is done by summing the contributions from each grid cell Q\ i.e., the integrals have the form
where
Table 8.1. GauS parameters for [0, 1].
8.4. Numerical Integration
125
degree Legendre polynomial, and the weights yv are the integrals of the associated Lagrange polynomials. Turning to the discussion of the domain integral fQnD (p, let us first dispose of a simple case. For a grid cell Q = ih + [0, l]mh which does not intersect the boundary, we can just use the tensor product GauB formula. For example, for m = 3,
where t' = th + (tv, t^, ta}h are the transformed GauB nodes. We emphasize that for small h most integrals fall into this simple category. The number of boundary grid cells is ^ h' ~m. Hence, the techniques described below pertain only to an increasingly small percentage of integrals. For boundary grid cells we cannot apply a tensor product formula. Setting
Figure 8.8. Subdivision of a two-dimensional boundary cell and integration over smoothly deformed rectangles.
Chapter 8. Implementation
126
we can apply the tensor product formula in a straightforward way. We obtain
where ^ and r^ denote the transformed GauB nodes for the intervals [a, /3] an respectively. This is illustrated in Figure 8.8, which shows how the GauB points are mapped from the reference square to the two subsets Of course, the boundary of Q D D is usually not given in the form (8.3). However, the quadrature formula requires only isolated points on the boundary, which are easily generated. For example, if 3D is a spline curve (x\, X2) = ( p \ ( s ) , /?2 (•?))» then f ( t ' v ) and g(t'v) are obtained by solving the polynomial equation t'v = p\(s), which yields f ( t ' v ) = P2(s/} and g(t'v) = P2(sg) for the appropriate roots Sf and SK. Even for high degree, when the roots have to be computed by some iterative method, this is not time consuming. Since neighboring values are calculated, good starting values are available and generally few steps suffice. In three dimensions, the shape of the intersection Q D D can be rather complicated. Still, there are a number of typical cases, which can be reduced to integration over smoothly deformed cubes with few subdivisions. Figure 8.9 shows several examples. In each case, the transformations to the standard reference cube [0, I]3 are straightforward. For example, the prism-shaped intersection in the middle of the figure can be represented as
Accordingly, the integral
nD
after a change of variables
There are, however, more difficult cases. We are confronted with corners and edges of 3D within the grid cell Q and complicated boundaries caused by almost tangential intersections.
Figure 8.9. Integration over subdivided boundary cells.
8.5. Matrix Assembly
127
As mentioned above, the percentage of such types of intersections is small. However, they have to be dealt with, at least if high accuracy should be maintained in all parts of the simulation region. We propose to subdivide irregularly shaped sets Q D D into tetrahedral cells (moderately deformed tetrahedra) with a special purpose meshing algorithm. This is a very flexible approach, analogous to isoparametric finite element approximation, which also covers simple situations. For the purpose of integration, the geometric quality of the local mesh is not important. Moreover, we do not have to represent the boundary exactly. In fact, we will normally use isoparametric elements [24]. This means that the cells of the mesh are images of tetrahedra under polynomial maps which are close to the identity. Once such a tetrahedral subdivision of Q n D is generated, the numerical integration presents no problems. We simply transform standard formulas for the three-dimensional simplex [88].
8.5
Matrix Assembly
The assembly of finite element matrices for B-splines is similar to that for mesh-based elements. There are, however, some simplications due to the regular grid. Regardless of whether we use the spaces u;B or weB, the approximations are weighted splines
where each coefficient Uk is associated with a grid point kh. As is illustrated in Figure 8.10, it is convenient to enlarge the set K of relevant indices, so that the range of summation is an array K'. When evaluating w/,, we can set the irrelevant coefficients, which correspond to the points marked with small squares, equal to 0 and restrict the arguments of w and bk to D. Whenever possible, we keep this simple structure throughout the computations. In particular, for parallelizing algorithms this is preferable to working with unstructured index sets.
Figure 8.10. Partitioning of index sets for bilinear spline approximations.
128
Chapters. Implementation
We consider first the assembly of the Ritz-Galerkin matrices for the spaces if B. Since the bilinear form «(-, •) and the linear form A. are defined in terms of integrals, they can be computed by adding the contributions from each grid cell Q, i.e., Q
This yields the following algorithm. 8.8 Ritz-Galerkin System for Weighted B-Splines
Hie matrix G and the right-hand side F of the Ritz-Galerkin system for the spaces wB can be assembled with the following algorithm:
end end
end
Here we assume that the array K' D K corresponds to proper matrix indices; i.e., the lower left corner is labeled by k = (1,1,...). Since the support of each B-spline bk consists of (n + l)m grid cells, the two innermost loops have a fixed length. All pairs of the (n + l) m B-splines, which overlap the grid cell Q under consideration, have to be processed. The supports of two B-splines bk and bt intersect only if k — I e {— n, . . . , n}m. Therefore, the matrix G has at most (2n + l) m entries for each row index k and can thus be stored in a 2m -dimensional array with indices in
for scalar problems. Keeping irrelevant entries with indices k e K'\K as well allows us to conform to the simple geometric structure induced by the tensor product basis functions. To apply standard iterative schemes, we can enlarge the Ritz-Galerkin system by setting
This yields a solution with zero coefficients for irrelevant indices. The stabilization of the weighted spline basis wbk, k & K, which leads to the webspace can be viewed as a parameter condensation and preconditioning procedure. Hence, it can be accomplished with a simple modification of the Ritz-Galerkin system for wM. To describe this in more detail, we rewrite definition 4.9 as
129
8.5. Matrix Assembly Then, by linearity,
and
. This proves the following transformation rule.
8.9 Ritz-Galerkin System for Web-Splines The Rit2-<3detfcm systems OU = F andKGeU = eF for the weighted spline spaces and tyeB are related by where
For assembling the system e G e t/ = e F it is best to give up on the correspondence between matrix entries and grid points. Instead, G and e G are stored with the aid of index lists in a standard sparse format. To this end we number the inner indices i, marked with dots in the example of Figure 8.10, from 1 to |/| and the outer indices j, marked with circles, from |/| + l t o | / | + |/|. For the matrix E a column-oriented storage scheme is convenient since the complementary index sets
are easier to describe than the sets /(/) of column indices. As is illustrated in Figure 8.11, the first block of the matrix E, corresponding to the inner indices /, is a diagonal matrix containing the weights \/w(xi). The second block
Figure 8.11. Partitioning and sparsity pattern of the coupling matrix E for the example in Figure 8.10.
130
Chapters. Implementation
of dimension |/| x \J\ contains the coupling coefficients. For each outer index j G J the corresponding column contains the coefficients
and hence has at most (n + l) m entries. There are fewer entries if the array e,--j, i e /(y), contains zeros. For the matrix in Figure 8.11 this is the case for 27 indices j. Only less than 50% of the columns in the second block have the maximal number of (n + \)m = (1 + I) 2 nonzero entries. As the grid width becomes small, the transformation described in theorem 8.9 does not substantially affect the sparsity pattern of G. The ratio \J |/|/| is of order O(h}. Hence, most of the rows of e G still have < (2n +1)7" nonzero entries. Asymptotically, the required storage for the Ritz-Galerkin systems is ^ h~m for all weighted spline spaces.
Appendix Most of the basic theory of finite element methods with splines can be developed without advanced mathematical tools. We just need a few concepts and results from functional analysis, which are listed below. With the exception of the extension theorem A. 13 for Lipschitz domains, proofs can be found in any of the standard textbooks. For example, a short exposition to Hilbert spaces is contained in the book by Rudin [75]. The book by Adams [1] gives a comprehensive treatment of Sobolev spaces. A reader interested in the historical background may also want to consult the original work of Hilbert [41], von Neumann [64], and Sobolev [83, 84, 85]. A.I Minkowsky Inequality. If / is a continuous function with values in a Banach space (complete, normed vector space), then
This estimate can be interpreted as a continuous analogue of the triangle inequality and is proved by approximation with step functions. A.2 Cauchy-Schwarz Inequality. product, then
If \\u\\ = ^/(u, u] is a norm induced by a scalar
with equality if and only if u and v are linearly dependent. A.3 Bilinear Form. A bilinear form a (•, •) on a vector space is linear in each variable, i.e.,
for all scalars r v , sv. If a is symmetric and a(u,u) > 0 for u ^ 0, then a induces a scalar product and \\u \\a = -^/a(u, u) defines a norm. A.4 Hilbert Space. A Hilbert space H is a complete vector space with a norm || • || induced by a scalar product {•,•). These few structural assumptions have many consequences. We need, in particular, the following characterization of best approximations from a closed subspace V. 131
Appendix
132
For any u e H there exists a unique t>* e V with
which is determined by the orthogonality condition
familiar from elementary geometry. A.5 Riesz Representation. Any bounded linear functional X on a Hilbert space // can be represented in the form where 7£ is an isometry onto H, i.e., a bijective linear operator with A.6 Domain. We use the term domain for a bounded open set D in Em with Lipschitz boundary. This means that 3D can be covered by finitely many open balls D, so that, by choosing appropriate coordinates y -o- x,
for a Lipschitz-continuous function
Figure A.I. Lipschitz domain (left) and nonadmissible boundary with cusps (right).
Appendix
133
A.7 Square Integrable Functions. The Hilbert space L2(D) is the closure of the set of smooth functions on D with respect to the norm
associated with the scalar product (/, g)o = fD f g . Alternatively, L2(D) consists of all measurable functions /, for which |/|2 is Lebesgue integrable. The space L2(9D) of square integrable functions on the boundary of a domain is defined analogously. We simply integrate with respect to the boundary measure in the definition of the scalar product and the norm. A.8 General Sobolev Spaces. Denote by LP(D) the measurable functions u on D with
for 1 < p < oo and
I M OOI < const < oo for almost every x e D for p = oo. Then, for t e N, the Sobolev space W*(D) consists of all functions with partial derivatives of order < I in LP(D}. In particular,
Via interpolation [7] it is possible to extend this definition to fractional orders of differentiability as well. A.9 Integration by Parts. If dvf and / are absolutely integrable on D and 3D, respectively, then
where £ is the outward unit normal. Specific choices of / yield various classical theorems of vector analysis. Summing over v with / = u\, 112, ... yields GauB's theorem:
Similarly, with / = dvu v, we obtain Green's formula,
where d^u — t; grad u denotes the normal derivative. This identity is often used for u, v e HQ (D), when the boundary integral on the right-hand side is zero. A. 10 Trace Operator. The restriction to the boundary is a bounded operator from H}(D) to L2(3D). More precisely, since boundary data are not well defined in the Lebesgue
134
Appendix
sense, the restriction operator has to be extended from smooth functions, which are dense inH}(D). We note that there is a sharper version of this theorem, but it involves Sobolev spaces of fractional order, which have a more technical definition and are not needed for the objectives of this book. A.ll Compact Embedding. Any bounded sequence in // £+1 has a convergent subsequence in Hi. This is a typical statement, which relates smoothness to compactness. It is a (very) special case of Sobolev's famous embedding theorem, which states that
A.12 Poincare-Friedrichs Inequality. (m — 1) -dimensional measure, then
If u vanishes on a set F c 3D of positive
An important consequence is that the semi-norm | • | \ is equivalent to the norm || • || i on //ji = {u 6 Hl : u = 0 onF} and, in particular, on HQ (\u\i x \\u\\\). A.13 Extension Operator. There exists a bounded linear extension operator E : He(D) —> and
Moreover, we can assume that the extensions vanish outside a domain The operator 8 was constructed by Stein [86], improving an earlier result by Calderon [22], where the extensions were not independent of the order of differentiability t. The main difficulty is to cope with the minimal smoothness of the boundary of D as specified in A. 6. Requiring only Lipschitz continuity does not allow simple local transformation techniques.
Notation and Symbols General N, Z, R || • || :<,>:, x cond const(-) 3V, da diam dist supp
Natural numbers, integers, and reals 2-norm for vectors and matrices Inequalities up to constants, 1 Condition number of a matrix Constant, depending on parameters, 1 Partial derivatives, 1, 2.3 Diameter of a set Distance function Support of a function B-Splines
bn bnk h bi, b j , bk Bi Wh(D) wsWh(D} Wh (D) eij, E = {eitk} / € /, j e /, k e K h A.,-, A, PI, Q=lh + [0,l]mh w
Univariate B-spline of degree n, 3.2 Scaled translated tensor product B-spline, 4.1 Inner, outer, and relevant B-spline, 1, 4.4 Web-spline, 4.4 Splines on a bounded domain, 4.2 Web-space, 4.4 Hierarchical splines, 4.5 Extension coefficients and matrix, 4.4, 8.5 Inner, outer, and relevant indices, 1, 4.4 Grid width Dual and weighted dual function, 5.1 Standard projector, 5.1 Grid cell Weight function, 4.3
135
136
Notation and Symbols Finite Elements a(-, •) Cl A d1D c Mw D dD div G/, grad //o (£>) c // £ (£>) (••> •)£» II • I I £ » I • \t H[, //p L2(D) X Q Uh % u U = {«,} U = {Hi}
Bilinear form, 2.4 £-times continuously differentiable functions, 2.2 Laplace operator Normal derivative Bounded domain, A.6 Closure of D Domain boundary Divergence Ritz-Galerkin matrix, 2.1 Gradient Sobolev spaces, 2.3 Sobolev scalar product, norm, and semi-norm, 2.3 Constrained Sobolev spaces, 2.3, 6.2, 6.3 Square integrable functions, A.7 Linear functional Quadratic form, 2.1 Approximation of exact solution Coefficients of a Ritz-Galerkin approximation Coefficients of a coarse grid approximation, 7.2 General Sobolev spaces, A.8
Bibliography [1] R. A. Adams: Sobolev Spaces, Academic Press, New York, 1978. [2] J. H. Ahlberg, E. N. Nielson, and J. L. Walsh: The Theory of Splines and Their Applications, Academic Press, New York, 1967. [3] J. H. Argyris: Energy Theorems and Structural Analysis, Butterworth, London, 1960. [4] J. H. Argyris: Recent Advances in Matrix Methods of Structural Analysis, Pergamon Press, Elmsford, NY, 1964. [5] N. S. Bakhvalov: On the convergence of a relaxation method with natural constraints on the elliptic operator, USSR Comp. Math, and Math. Phys. 6 (1966), 101-135. [6] R. E. Bank and T. Dupont: An optimal order process for solving finite element equations, Math. Comp. 36 (1981), 35-51. [7] J. Berg and J. Lofstrom: Interpolation Spaces, Springer-Verlag, New York, 1976. [8] S. Bernstein: Demonstration du theoreme de Weierstrass, fondee sur le calcul des probabilites, Comm. Soc. Math. Kharkow 13 (1912-1913), 1-2. [9] P. Bezier: Definition numerique des courbes et surfaces I, Automatisme XI (1966), 625-632. [10] P. Bezier: Definition numerique des courbes et surfaces II, Automatisme XII (1967), 17-21. [11] P. Bezier: Numerical Control—Mathematics and Applications, John Wiley & Sons, New York, 1972. [12] W. Bohm: Inserting new knots into B-spline curves, Computer-Aided Design 12 (1980), 199-201. [13] C. de Boor: On uniform approximation by splines, J. Approx. Theory 1 (1968), 219235. [14] C. de Boor: On calculating with B-splines, J. Approx. Theory 6 (1972), 50-62. [15] C. de Boor: Package for calculating with B-splines, SIAM J. Numer. Anal. 14 (1977), 441^72. 137
138
Bibliography
[16] C. de Boor: A Practical Guide to Splines, Springer-Verlag, New York, 1978. [17] C. de Boor and G Fix: Spline approximation by quasi-interpolants, J. Approx. Theory 8 (1973), 19-^5. [18] C. de Boor, K. Hollig, and S. Riemenschneider: Box Splines, Springer-Verlag, New York, 1993. [19] D. Braess, M. Dryja, and W. Hackbusch: A multigrid method for nonconforming fediscretizations with application to non-matching grids, Computing 63 (1999), 1-25. [20] A. Brandt: Multi-level adaptive solutions to boundary value problems, Math. Comp. 31 (1977), 333-390. [21] I. G Bubnow: Rezension iiber die mil dem Schurawski-Preis ausgezeichneten Abhandlungen von Prof. Timoschenko, Sammlung des Instituts fur Verkehrswesen, Heft 81,SPB, 1913. [22] A. P. Calderon: Lebesgue spaces of differentiate functions and distributions, Proc. Symp. in Pure Math. 4 (1961), 33^9. [23] P. de Casteljau: Courbes et surfaces a poles, Technical report, Andre Citroen Automobiles SA, Paris, 1959. [24] P. G Ciarlet: The Finite Element Method for Elliptic Problems, North-Holland, Amsterdam, 1978. [25] P. G Ciarlet and J. P. Lions (eds.): Handbook of Numerical Analysis, North-Holland, Amsterdam, 1991. [26] R. W. Clough: The finite element method in plane stress analysis, Proc. 2nd ASCE Conf. on Electronic Computation, Pittsburgh, 1960. [27] E. Cohen, T. Lyche, and R. Riesenfeld: Discrete B-splines and subdivision techniques in computer-aided geometric design and computer graphics, Computer Graphics Image Proc. 14(1980), 87-111. [28] J. W. Cooley and J. W. Tukey: An algorithm for the machine calculation of complex Fourier series, Math. Comp. 19 (1965), 297-301. [29] R. Courant: Variational methods for the solution of problems of equilibrium and vibrations, Bull. Amer. Math. Soc. 49 (1943), 1-23. [30] R. Courant and D. Hilbert: Methods of Mathematical Physics, John Wiley & Sons, New York, 1953. [31] M. G Cox: The numerical evaluation of B-splines, J. Inst. Math. Appl. 10 (1972), 134-149. [32] G E. Farm (ed.): Geometric Modeling: Algorithms and New Trends, SI AM, Philadelphia, 1987.
Bibliography
139
[33] G. E. Farin: Curves and Surfaces for Computer Aided Geometric Design, Academic Press, New York, 1988. [34] G. E. Farin (ed.): NURBS for Curve and Surface Design, SIAM, Philadelphia, 1991. [35] R. P. Fedorenko: The speed of convergence of one iterative process, USSR Comp. Math, and Math. Phys. 4 (1964), 227-235. [36] A. Fuchs: OptimierteDelaunay-TriangulierungenzurVernetzunggetrimmterNURBSKorper, Dissertation, Universitat Stuttgart, Stuttgart, 1999. [37] A. Fuchs: Almost regular triangulations of trimmed NURBS-solids, Engineering with Computers 17 (2001), 55-65. [38] B. G. Galerkin: Sta.be und Flatten; Reihen in gewissen Gleichgewichtsproblemen elastischer Stdbe und Flatten, Vestnik der Ingenieure 19 (1915), 897-908. [39] C. F. GauB: Carl Friedrich Gauft, Gesammelte Werke, Vol. IX, 278-281. Translated by G.E. Forsythe, Math. Tables Aids Comput. 5 (1961), 255-258. [40] A. Griewank: Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation, Frontiers in Applied Mathematics 19, SIAM, 1999. [41] D. Hilbert: Grundziige einer allgemeinen Theorie der Integralgleichungen, Teubner, Stuttgart, 1912. [42] K. Hollig: Multivariate splines, in Approximation Theory, C. de Boor (ed.), AMS Short Course Lecture Notes 36 (1986), 103-128. [43] K. Hollig: Grundlagen der Numerik, MathText, Zavelstein, 1998. [44] K. Hollig: Finite element approximation with splines, in Handbook of Computer Aided Geometric Design, G. Farin, J. Hoschek, and M.S. Kim (eds.), Elsevier, 2002, 283-308. [45] K. Hollig, U. Reif, and J. Wipper: Error estimatesfor the web-method, in Mathematical Methods for Curves and Surfaces: Oslo 2000, T. Lyche and L. L. Schumaker (eds.), Vanderbilt University Press, Nashville, TN, 2001, 195-209. [46] K. Hollig, U. Reif, and J. Wipper: Weighted extended B-spline approximation of Dirichletproblems, SIAM J. Numer. Anal. 39 (2001), 442^62. [47] K. Hollig, U. Reif, and J. Wipper: Verfahren zur Erhohung der Leistungsfahigkeit einer Computereinrichtung bei Finite-Elemente-Simulationen und eine solche Computereinrichtung, Deutsche Patentanmeldung DE10023377A1 (2001). [48] K. Hollig, U. Reif, and J. Wipper: Multigrid methods with web-splines, Numer. Math. 91 (2002), 237-256. [49] K. Hollig, U. Reif, and J. Wipper: Process for increasing the efficiency of a computer infinite element simulations and a computer for performing that process, United States Patent Application, US2002/0029135A1 (2002).
140
Bibliography
[50] K. Ho-Le: Finite element mesh generation methods: A review and classification, Comput. Aided Design 20 (1988), 27-38. [51] J. Hoschek and D. Lasser: Fundamentals of Computer Aided Geometric Design, A. K. Peters, Natick, MA, 1993. [52] K. H. Huebner, E. A. Thornton, and T. G Byrom: The Finite Element Method for Engineers, John Wiley & Sons, New York, 1994. [53] C. G J. Jacobi: Uber eine neue Auflosungsart der bei der Methode der kleinsten Quadrate vorkommenden linearen Gleichungen, Astronomische Nachrichten 22:523 (1845), Spalten 297-306. [54] L. W. Kantorowitsch and W. I. Krylow: Ndherungsmethoden der Hoheren Analysis, VEB Deutscher Verlag der Wissenschaften, Berlin, 1956. [55] H. Kardestuncer (ed.): Finite Element Handbook, McGraw-Hill, New York, 1987. [56] A. Korn: Die Eigenschwingungen eines elastischen Korpers mil ruhender Oberfldche, Akad. der Wissenschaften Munich, Math.-Phys., Kl. Berichte 36 (1906), 351^01. [57] A. Korn: Uber einige Ungleichungen, welche in der Theorie der elastischen und elektrischen Schwingungen eine Rolle spielen, Bulletin Internationale, Cracovie Akademie Umiejet, Classe des sciences mathematiques et naturelles (1909), 705-724. [58] R. Kraft: Adaptive und linear unabhdngige multilevel B-Splines und ihre Anwendungen, Dissertation, Universitat Stuttgart, Stuttgart, 1998. [59] O. A. Ladyzhenskaya and N.N. Ural'tseva: Linear and Quasilinear Elliptic Equations, Academic Press, New York, 1968. [60] L. D. Landau and E. M. Lifshitz: Theory of Elasticity, 3rd edition, Pergamon Press, Elmsford, NY, 1986. [61] J. M. Lane and R. F. Riesenfeld: A theoretical development for the computer generation and display ofpiecewise polynomial surfaces, IEEE Trans. Pattern Anal. Mach. Intellig. 2 (1980), 35-45. [62] J. Mackerle: Finite Element Methods: A Guide to Information Sources, Elsevier Science Publishers B.V., Amsterdam, 1991. [63] Math Works, Inc.: The Student Edition ofMATLABfor Prentice-Hall, Englewood Cliffs, NJ, 1992.
MS-DOS Personal Computers,
[64] J. von Neumann: Allgemeine Eigenwerttheorie Hermitescher Integraloperatoren, Math. Ann. 102 (1930), 49-131. [65] J. A. Nitsche: On Korn's second inequality, RAIRO J. Numer. Anal. 15 (1981), 237248. [66] G D. Nowottny: Netzerzeugung durch Gebietszerlegung und duale Graphenmethode, Dissertation, Universitat Stuttgart, Stuttgart, 1999.
Bibliography
141
[67] S. J. Owen: A survey of unstructured mesh generation technology, in Proceedings, 7th International Meshing Roundtable, Sandia National Laboratories (1998), 239-268. [68] F. P. Preparata and M. I. Shamos: Computational Geometry, Springer-Verlag, New York, 1985. [69] L. B. Rail: Automatic Differentiation, Lecture Notes in Comput. Sci. 120, SpringerVerlag, New York, 1981. [70] J. W. S. Rayleigh: On the theory of resonance, Trans. Roy. Soc. (London), A161 (1870), 77-118. [71] J. W. S. Rayleigh: The Theory of Sound, 2nd edition, London, 1894 and 1896. [72] U. Reif: Orthogonality ofB-splines in weighted Sobolev spaces, SIAM J. Math. Anal. 28(1997), 1258-1263. [73] M. Ries, U. Trottenberg, and G. Winter: A note on MGR methods, Linear Algebra Appl. 49 (1983), 1-26. [74] W. Ritz: Uber eine neue Methode zur Losung gewisser Variationsprobleme der mathematischen Physik, J. Reine Angew. Math. 135 (1908), 1-61. [75] W. Rudin: Functional Analysis, McGraw-Hill, New York, 1973. [76] V. L. Rvachev and T. I. Sheiko: R-functions in boundary value problems in mechanics, Appl. Mech. Rev. 48 (1995), 151-188. [77] V. L. Rvachev, T. I. Sheiko, V. Shapiro, and I. Tsukanov: On completeness of RFM solution structures, Comp. Mech. 25 (2000), 305-316. [78] V. L. Rvachev, T. I. Sheiko, V. Shapiro, and I. Tsukanov: Transfinite interpolation over implicitly defined sets, Comput. Aided Geom. Design 18 (2001), 195-220. [79] I. J. Schoenberg: Contributions to the problem of approximation of equidistant data by analytic functions, Quart. Appl. Math. 4 (1946), 45-99 and 112-141. [80] L. L. Schumaker: Spline Functions: Basic Theory, Wiley-Interscience, New York, 1980. [81] Ph. L. Seidel: Uber ein Verfahren, die Gleichungen, auf welche die Methode der kleinsten Quadrate ftihrt, sowie lineare Gleichungen uberhaupt, durch sukzessive Annaherung aufzulosen, Abh. Bayer. Akad. Wiss. 11 (1874), 81-108. [82] V. Shapiro and I. Tsukanov: Meshfree simulation of deforming domains, Comput. Aided Design 31 (1999), 459^71. [83] S. L. Sobolev: On some estimates of families of functions having square-integrable derivatives, Dokl. Akad. Nauk SSSR 1 (1936), 267-270. [84] S. L. Sobolev: Sur un probleme limite pour les equations polyharmonics, Mat. Sb. (N.S.) 44 (1937), 467-500.
142
Bibliography
[85] S. L. Sobolev: Applications of Functional Analysis in Mathematical Physics, Transl. Math. Monographs 7, AMS, Providence, RI, 1963. [86] E. M. Stein: Singular Integrals and Differentiability Properties of Functions, Princeton University Press, Princeton, NJ, 1970. [87] G Strang and G J. Fix: An Analysis of the Finite Element Method, Prentice-Hall, Englewood Cliffs, NJ, 1973. [88] A. H. Stroud: Approximate Calculation of Multiple Integrals, Prentice-Hall, Englewood Cliffs, NJ, 1971. [89] R. Szilard: Theory and Analysis of Plates, Prentice-Hall, Englewood Cliffs, NJ, 1974. [90] M. J. Turner, R. W. Clough, H. C. Martin, and L. C. Topp: Stiffness and deflection analysis of complex structures, J. Aeronaut. Sci. 23 (1956), 805-823, 854. [91] R. S. Varga: Matrix Iterative Analysis, Prentice-Hall, Englewood Cliffs, NJ, 1962. [92] D. M. Young: Iterative Methods for Solving Partial Differential Equations of Elliptic Type, Ph.D. Thesis, Harvard University, Cambridge, MA, 1950. [93] D. M. Young: Iterative methods for solving partial differential equations of elliptic type, Trans. Amer. Math. Soc. 76 (1954), 92-111. [94] O. C. Zienkiewicz: Origins, milestones and directions of the finite element method, Arch. Comput. Methods Engrg. 2 (1995), 1-48. [95] O. C. Zienkiewicz and R. I. Taylor: Finite Element Method, Vol. I-III, Butterworth & Heinemann, London, 2000.
Index BEZIER, 1 curve, 114 surface, 115 bilinear form, 131 elliptic, 16 POISSON, 17 boundary condition essential, 2, 71 inhomogeneous, 85 mixed, 79 natural, 75 boundary value problem abstract, 16, 17 biharmonic, 84 DIRICHLET, 71,72 elasticity, 88 mixed, 79 NEUMANN, 75, 76 plane strain, 90 plane stress, 92 POISSON, 7, 71 variable coefficients, 79 bounding box, 118 BRAMBLE-HILBERT estimate, 61,62 BRANDT, 105
algebraic curve, 73 approximation order spline, 21 web-spline, 64, 73, 78 ARGYRIS, 1,11 AUBIN-NITSCHE duality principle, 21 B-spline bicubic, 38 classification, 47 convolution, 35 cubic, 30, 33 definition, 25 derivative, 25, 29 extended, 3 hierarchical, 50 inner, 47 linear independence, 32, 42, 52 multivariate, 37 outer, 47 partial derivative, 39 properties, 26, 38 recursion, 27 relevant, 40 representation of polynomials, 30,42 scalar product, 35, 36 segments, 28 subdivision, 32 tensor product, 37 weighted, 3, 43 weighted extended —>• web-spline,4 BERNSTEIN inequality, 59 polynomial, 2, 114 best approximation, 19, 132
CAD/CAM, 1 CAUCHY-SCHWARZ inequality, 131 CEA inequality, 20 CLOUGH, 1 CLOUGH-TOCHER element, 11 compatibility condition, 75 condition number, 60, 85 cone condition, 132 conjugate gradients, 85 143
Index
144
control polygon curve, 115 surface, 116 COURANT, 1 DEBOOR, 1,27 DE CASTELJAU, 2, 119 DIRICHLET problem, 72 distance function, 123 domain, 5, 132 dual function B-spline, 54 weighted, 56 elasticity, 88 embedding, 134 energy functional, 9 error correction, 107 finite element method, 20, 21, 73, 78,85 quasi-interpolant, 68 smoothing, 97, 106 extension, 134 FEDORENKO, 108 FEM (see also finite element method), 1 FFT, 108 finite element algorithm, 113 approximation, 8, 16 basis function, 2 CLOUGH-TOCHER, 11 history, 1 LAGRANGE, 11 linear, 9 properties, 12 standard, 1 FIX, 1 flow, 76 GALERKIN, 1 GAU6 formula, 124 GAUB-SEIDEL iteration, 108
grid cell, 3, 117 refinement, 100 transfer, 102 hat-function, 1, 10, 25, 98 HILBERT space, 131 history, 2, 108 HOOKE's law, 87 index classification, 127 inner, 3, 47 outer, 3, 47 relevant, 40 integration boundary cells, 125 by parts, 133 JACKSON inequality, 68 JACOBI iteration, 108 KANTOROWITSCH, 3, 43, 123 KORN inequality, 88 KRYLOW, 3, 43 LAME coefficients, 83, 87 LAME-NAVIER system, 88 LAX-MILGRAM theorem, 17 MARSDEN identity, 30, 42 MARTIN, 1 MATLAB, 85 matrix assembly B-spline, 128 web-spline, 129 membrane, 8 MGR algorithm, 108 MINKOWSKY inequality, 131 model problem, 7, 20, 21, 71, 95, 106 multigrid algorithm, 104 convergence, 108 correction, 107 smoothing, 106 NEUMANN problem, 75, 76 notation, 5, 100
Index orthogonal expansion, 56 orthogonality relation, 19 partition of unity, 31 plate, 83, 84 POINCARE-FRIEDRICHS inequality, 134 POISSON equation, 106 problem, 7, 12, 71 ratio, 83, 90 solvers, 108 projector, 54, 61, 63 quadratic form, 9 quasi-interpolant, 54, 63 R-function differentiation, 121 method, 3, 43, 44, 84 system, 45 RAYLEIGH, 1 regularity, 20,65,81 RICHARDSON iteration, 96, 103 RIESZ representation, 132 RITZ, 1 RITZ-GALERKIN approximation, 8, 10, 16, 72, 76, 84,89 RVACHEV, 3, 43 SCHOENBERG, 1,23,29 SOBOLEV space, 13, 15, 133 SOR, 108 sparsity pattern, 129 spline approximation, 21 cardinal, 29, 34 cubic, 24 definition, 23 history, 1 linear, 25 multivariate, 40 web- —>• web-spline, 48 square integrable, 133 stability, 3, 57
145
strain plane, 90 tensor, 87 STRANG, 1 stress plane, 91 tensor, 87 subdivision B-spline, 32 grid cell, 125 multivariate, 100 spline, 34 TOPP, 1 trace, 133 triangulation, 10 TURNER, 1 v-cycle, 99 variational problem —> boundary value problem, 17 w-cycle, 105 weak derivative, 14 web-spline approximation order, 64 definition, 48 idea, 4 normalization, 57 properties, 49 stability, 57 weight function algebraic, 44 definition, 43 local, 120, 121 numerical, 46 regular, 59 signed, 44 standard, 43 YOUNG modulus, 83, 90