438

Boundary Element Methods

Embed Size (px)

Citation preview

Page 1: Boundary Element Methods
Page 2: Boundary Element Methods

A Practical Guide to

BOUNDARYELEMENT METHODSwith the Software Library BEMLIB

Page 3: Boundary Element Methods
Page 4: Boundary Element Methods

CHAPMAN & HALL/CRCA CRC Press Company

Boca Raton London New York Washington, D.C.

A Practical Guide to

BOUNDARYELEMENT METHODSwith the Software Library BEMLIB

C. pozrikidis

Page 5: Boundary Element Methods

This book contains information obtained from authentic and highly regarded sources. Reprinted materialis quoted with permission, and sources are indicated. A wide variety of references are listed. Reasonableefforts have been made to publish reliable data and information, but the author and the publisher cannotassume responsibility for the validity of all materials or for the consequences of their use.

Neither this book nor any part may be reproduced or transmitted in any form or by any means, electronicor mechanical, including photocopying, microfilming, and recording, or by any information storage orretrieval system, without prior permission in writing from the publisher.

The consent of CRC Press LLC does not extend to copying for general distribution, for promotion, forcreating new works, or for resale. Specific permission must be obtained in writing from CRC Press LLCfor such copying.

Direct all inquiries to CRC Press LLC, 2000 N.W. Corporate Blvd., Boca Raton, Florida 33431.

Trademark Notice:

Product or corporate names may be trademarks or registered trademarks, and areused only for identification and explanation, without intent to infringe.

Visit the CRC Press Web site at www.crcpress.com

© 2002 by Chapman & Hall/CRC

No claim to original U.S. Government worksInternational Standard Book Number 1-58488-323-5

Library of Congress Card Number 2002024166Printed in the United States of America 1 2 3 4 5 6 7 8 9 0

Printed on acid-free paper

Library of Congress Cataloging-in-Publication Data

Pozrikidis, C.A practical guide to boundary element methods with the software library BEMLIB / by

Costas Pozrikidis. p. cm.Includes bibliographical references and index.ISBN 1-58488-323-51. Boundary element methods—Data processing. 2. Computer programming. I. Title.

TA347.B69 P69 2002 620

¢.

001

¢

51535—dc21 2002024166

C3235 disclaimer Page 1 Thursday, March 28, 2002 3:50 PM

Page 6: Boundary Element Methods

Preface

In the last 20 years, the boundary-element method (BEM) has been establishedas a powerful numerical technique for tackling a variety of problems in scienceand engineering involving elliptic partial differential equations. Examples can bedrawn from the fields of elasticity, geomechanics, structural mechanics, electromag-netism, acoustics, hydraulics, low-Reynolds-number hydrodynamics, and biome-chanics. The strength of the method derives from its ability to solve efficiently andaccurately problems in domains with complex and possibly evolving geometry wheretraditional methods can be inefficient, cumbersome, or unreliable.

The purpose of this text is to provide a concise introduction to the theory and imple-mentation of the boundary-element method, while simultaneously offering hands-onexperience based on the software library BEMLIB. The intended audience includesprofessionals, researchers, and students in various branches of computational scienceand engineering. The material is suitable for self-study, and the text is appropriatefor instruction in an introductory course on boundary-integral and boundary-elementmethods, or a more general course in computational science and engineering.

The software library BEMLIB accompanying this book contains a collection ofFORTRAN 77 programs related to Green’s functions and boundary-element methodsfor Laplace’s equation, Helmholtz’s equation, and Stokes flow. The main directoriescontain subdirectories that include main programs, assisting subroutines, and utilitysubroutines. Linked with drivers, the utility subroutines become stand-alone mod-ules. The programs of BEMLIB explicitly illustrate how procedures and conceptsdiscussed in the text translate into code instructions, and demonstrate the mathemat-ical formulation and structure of boundary-element codes for a variety of applica-tions. The output of the codes is recorded in tabular form so that it can be displayedusing independent graphics, visualization, and animation applications. The codes ofBEMLIB can be used as building blocks, and may serve as a point of departure fordeveloping further codes. General information on BEMLIB, the directory contents,and instructions on how to download and compile the codes are given in Chapter 8.

Consistent with the dual nature of this book as an introductory text and a softwareuser guide, the material is divided into two parts. The first part, Chapters 1 to 7,discusses the theory and implementation of boundary-element methods. The mate-rial includes classical topics and recent development such as the method of approx-imate particular solutions and the dual reciprocity method for solving inhomoge-neous, nonlinear, and time-dependent equations.

v

Page 7: Boundary Element Methods

vi A Practical Guide to Boundary-Element Methods

The second part, Chapters 8 to 12, contains the user guide to BEMLIB. The userguide explains the problem formulation and numerical method of the particular prob-lems considered, and discusses the function of the individual subprograms and codeswith emphasis on implementation.

I am indebted to Audrey Hill for her assistance in the preparation of the manuscript,to Judith Kamin for skillfully and gracefully coordinating the production, and toTodd Porteous for his flawless work in setting up the hardware and configuring thesoftware.

C. Pozrikidis

Page 8: Boundary Element Methods

Contents

Frequently Asked Questions xi

1 Laplace’s equation in one dimension 11.1 Green’s first and second identities and the reciprocal relation . . . . 11.2 Green’s functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Boundary-value representation . . . . . . . . . . . . . . . . . . . . 71.4 Boundary-value equation . . . . . . . . . . . . . . . . . . . . . . . 8

2 Laplace’s equation in two dimensions 92.1 Green’s first and second identities and the reciprocal relation . . . . 92.2 Green’s functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Integral representation . . . . . . . . . . . . . . . . . . . . . . . . 192.4 Integral equations . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.5 Hypersingular integrals . . . . . . . . . . . . . . . . . . . . . . . . 362.6 Irrotational flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 442.7 Generalized single- and double-layer representations . . . . . . . . 47

3 Boundary-element methods for Laplace’s equation in two dimensions 533.1 Boundary element discretization . . . . . . . . . . . . . . . . . . . 533.2 Discretization of the integral representation . . . . . . . . . . . . . 633.3 The boundary-element collocation method . . . . . . . . . . . . . 743.4 Isoparametric cubic-splines discretization . . . . . . . . . . . . . . 773.5 High-order collocation methods . . . . . . . . . . . . . . . . . . . 803.6 Galerkin and global expansion methods . . . . . . . . . . . . . . . 86

4 Laplace’s equation in three dimensions 914.1 Green’s first and second identities and the reciprocal relation . . . . 914.2 Green’s functions . . . . . . . . . . . . . . . . . . . . . . . . . . . 934.3 Integral representation . . . . . . . . . . . . . . . . . . . . . . . . 1004.4 Integral equations . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024.5 Axisymmetric fields in axisymmetric domains . . . . . . . . . . . 106

5 Boundary-element methods for Laplace’s equation in three dimensions 1115.1 Discretization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1115.2 Three-node flat triangles . . . . . . . . . . . . . . . . . . . . . . . 1175.3 Six-node curved triangles . . . . . . . . . . . . . . . . . . . . . . 1225.4 High-order expansions . . . . . . . . . . . . . . . . . . . . . . . . 127

vii

Page 9: Boundary Element Methods

viii A Practical Guide to Boundary-Element Methods

6 Inhomogeneous, nonlinear, and time-dependent problems 1316.1 Distributed source and domain integrals . . . . . . . . . . . . . . . 1326.2 Particular solutions and dual reciprocity in one dimension . . . . . 1346.3 Particular solutions and dual reciprocity in two and three dimensions 1416.4 Convection – diffusion equation . . . . . . . . . . . . . . . . . . . 1506.5 Time-dependent problems . . . . . . . . . . . . . . . . . . . . . . 154

7 Viscous flow 1617.1 Governing equations . . . . . . . . . . . . . . . . . . . . . . . . . 1617.2 Stokes flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1657.3 Boundary integral equations in two dimensions . . . . . . . . . . . 1717.4 Boundary-integral equations in three dimensions . . . . . . . . . . 1757.5 Boundary-element methods . . . . . . . . . . . . . . . . . . . . . 1787.6 Interfacial dynamics . . . . . . . . . . . . . . . . . . . . . . . . . 1807.7 Unsteady, Navier-Stokes, and non-Newtonian flow . . . . . . . . . 182

8 BEMLIB user guide 1918.1 General information . . . . . . . . . . . . . . . . . . . . . . . . . 1918.2 Terms and conditions . . . . . . . . . . . . . . . . . . . . . . . . . 1928.3 Directory contents . . . . . . . . . . . . . . . . . . . . . . . . . . 193

9 Directory: grids 197grid 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198trgl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203

10 Directory: laplace 207lgf 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209lgf 3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230lgf ax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245flow 1d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254flow 1d 1p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261flow 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265body 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270body ax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276tank 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281ldr 3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287lnm 3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291

11 Directory: helmholtz 295flow 1d osc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

12 Directory: stokes 301sgf 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302sgf 3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329sgf ax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349flow 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364

Page 10: Boundary Element Methods

Contents ix

prtcl sw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371prtcl 2d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376prtcl ax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385prtcl 3d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390

Appendix A Mathematical supplement . . . . . . . . . . . . . . . . . . 397

Appendix B Gauss elimination and linear solvers . . . . . . . . . . . . 403

Appendix C Elastostatics . . . . . . . . . . . . . . . . . . . . . . . . . 407

References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418

Page 11: Boundary Element Methods
Page 12: Boundary Element Methods

Frequently Asked Questions

1. What is the boundary-element method (BEM)?

The boundary-element method is a numerical method for solving partial differen-tial equations encountered in mathematical physics and engineering. Examples in-clude Laplace’s equation, Helmholtz’s equation, the convection-diffusion equation,the equations of potential and viscous flow, the equations of electrostatics and elec-tromagnetics, and the equations of linear elastostatics and elastodynamics.

2. Is there a restriction on the type of differential equation?

In principle, the answer is negative. In practice, however, the method is efficient andthus appropriate for linear, elliptic, and homogeneous partial differential equationsgoverning boundary-value problems in the absence of a homogeneous source.

3. What are the advantages of the boundary-element method?

Suppose that we want to find the solution of an elliptic partial differential equationin a two-dimensional domain. In the boundary-element method, we solve only forthe boundary distribution of the unknown function or one of its derivatives. It isnot necessary to compute the requisite function throughout the domain of solution.Once the unknown boundary distribution is available, the solution at any point maybe produced by direct evaluation. Thus, the crux of the boundary-element method isthe reduction of the dimension of the solution space with respect to physical spaceby one unit.

4. How is this accomplished?

The key idea is to express the solution in terms of boundary distributions of funda-mental solutions of the particular differential equation considered. The fundamentalsolutions are Green’s functions expressing the field due to a localized source. Thedensities of the distributions are then computed to satisfy the specified boundaryconditions.

5. What is the origin of the terminology “boundary-element method”?

The name derives from the practice of discretizing the boundary of a solution domaininto “boundary elements.” In the case of a two-dimensional solution domain, the

xi

Page 13: Boundary Element Methods

xii A Practical Guide to Boundary-Element Methods

boundary is a planar line, and the boundary elements are straight segments, parabo-las, circular arcs, or cubic segments. In the case of a three-dimensional solutiondomain, the boundary is a three-dimensional surface, and the boundary elements areflat triangles, curved triangles, or rectangles. In contrast, elements that arise from thediscretization of the solution domain itself are called “finite elements.”

6. When was the boundary-element method conceived?

Integral representations of the solution of elliptic partial differential equations, in-cluding Laplace’s equation and the equations of linear elastostatics, have been knownfor well over a century (e.g., [33]).

In 1963, M. A. Jaswon and G. T. Symm [31, 66] demonstrated that the associatedintegral equations can be solved accurately and reliably using numerical methods. In1978, C. A. Brebbia [9] formalized the boundary-integral equation method (BIEM)and introduced the terminology boundary-element method (BEM), which contrastedwith the already established terminology finite-element method (FEM).

7. What are the disadvantages of the boundary-element method?

Some initial effort is required to learn the fundamental principles underlying the inte-gral representations and the implementation of the numerical methods. An oversightin the mathematical formulation, a mistake in the implementation of the numericalmethods, or an error in a code is likely to have a catastrophic effect on the accuracyof the solution.

8. How does the BEM compare with the finite-difference method (FDM)and the finite-element method (FEM)?

For linear and elliptic problems, the BEM is vastly superior in both efficiency andaccuracy. Alternative methods require discretizing the whole of the solution domain,and this considerably raises the cost of the computation. Problems that can be solvedon a laptop computer using the boundary-element method may require the use of asupercomputer by finite-difference and finite-element methods for the same level ofaccuracy.

9. What should one know before one can understand the foundationof the BEM?

General knowledge of differential and integral calculus and introductory linear alge-bra is required.

Page 14: Boundary Element Methods

Frequently Asked Questions xiii

10. What should one know before one can write a BEM code?

General purpose numerical methods including numerical linear algebra, function in-terpolation, and function integration are required. The necessary topics are discussedin this book. Familiarity with a computer programming language, preferably FOR-TRAN, is a prerequisite.

11. How can one keep up to date with the growing literature onboundary-element methods?

The internet site: http://www.olemiss.edu/sciencenet/benetprovidesa wealth of updated information on books, journals, research, and software relatedto boundary-element methods.

Page 15: Boundary Element Methods
Page 16: Boundary Element Methods

Chapter 1

Laplace’s equation in one dimension

To introduce the fundamental ideas underlying the development of the boundary-element method, we begin by considering Laplace’s equation in one dimension foran unknown function f(x),

d2f

dx2= 0: (1.1)

The solution is to be found over a specified interval of the x axis, a x b, subjectto two boundary conditions for the function f(x) or its first derivative df(x)=dx atone or both ends x = a; b.

Using elementary calculus, we find that the general solution of (1.1) is the linearfunction,

f(x) = mx+ c; (1.2)

where the slope coefficient m and the constant c are computed by enforcing the twoboundary conditions. For example, if the solution is required to satisfy f(0) = 1 andf(1) = 3, then m = 2 and c = 1.

Pretending that we are unaware of the analytical solution given in (1.2), we proceedto formulate the problem in an alternative fashion by working in four stages. First,we discuss Green’s first and second identities and the reciprocal relation. Second,we introduce the Green’s functions. Third, we develop a boundary-value represen-tation. Finally, we derive a boundary-value equation that serves as a prelude to theboundary-integral equations developed in subsequent chapters for partial differentialequations.

1.1 Green’s first and second identities and the reciprocal relation

Multiplying the left-hand side of (1.1) by a twice-differentiable function (x) andrearranging, we obtain Green’s first identity

1

Page 17: Boundary Element Methods

2 A Practical Guide to Boundary-Element Methods

d2f

dx2=

d

dx[

df

dx] d

dx

df

dx: (1.1.1)

Interchanging the roles of f and , we derive the transposed form

fd2

dx2=

d

dx[ f

d

dx] df

dx

d

dx: (1.1.2)

Subtracting (1.1.2) from (1.1.1), we obtain Green’s second identity

d2f

dx2 f

d2

dx2=

d

dx[

df

dx f

d

dx]: (1.1.3)

If functions f and both satisfy Laplace’s equation (1.1), then the left-hand side of(1.1.3) vanishes, yielding the reciprocal relation

d

dx[df

dx f

d

dx] = 0; (1.1.4)

Green’s second identity will be our point of departure for developing the requisiteboundary-value representation in Section 1.3.

1.2 Green’s functions

A Green’s function of the one-dimensional Laplace equation satisfies Laplace’s equa-tion (1.1) everywhere except at an arbitrarily chosen point x = x0. At that point, theGreen’s function is singular, that is, it takes an infinite value.

By definition, the Green’s function, denoted by G(x; x0), satisfies the singularlyforced Laplace equation

d2G(x; x0)

dx2+ Æ1(x x0) = 0; (1.2.1)

where:

x is the variable “field point”.

x0 is the fixed location of the singular “point” or “pole.”

Æ1(x x0) is Dirac’s delta function in one dimension.

Page 18: Boundary Element Methods

Laplace’s equation in one dimension 3

By construction, Dirac’s delta function in one dimension is distinguished by the fol-lowing properties:

1. Æ1(xx0) vanishes everywhere except at the point x = x0, where it becomesinfinite.

2. The integral of Æ1 with respect to x over an interval I that contains the pointx0 is equal to unity, Z

I

Æ1(x x0) dx = 1: (1.2.2)

This property reveals that the delta function with argument of length has unitsof inverse length.

3. The integral of the product of an arbitrary function q(x) and the delta functionover an interval I that contains the point x0 is equal to value of the function atthe singular point, Z

D

Æ1(x x0) q(x) dx = q(x0): (1.2.3)

The integral of the product of an arbitrary function q(x) and the delta functionover an interval I that does not contain the point x0 is equal to zero.

4. In formal mathematics, Æ1(x x0) arises from the family of test functions

g(x x0) = (

L2)1=2 exp[ (x x0)

2

L2]; (1.2.4)

in the limit as the dimensionless parameter tends to infinity; in equation(1.2.4), L is an arbitrary length,

Figure 1.2.1 shows graphs of a family of dimensionless test functions G gL plot-ted against the dimensionless distance X (x x0)=L for = 1 (dashed line),2, 5, 10, 20, 50, 100, and 500 (dotted line). The maximum height of each graph isinversely proportional to its width, so that the area underneath each graph is equal tounity, Z

1

1

g(x) dx = (

L2)1=2

Z1

1

exp( x2

L2) dx = 1: (1.2.5)

To prove this identity, we recall the definite integral associated with the error func-tion,

2p

Z1

0

exp[w2] dw = 1; (1.2.6)

and substitute w = 1=2x=L.

Page 19: Boundary Element Methods

4 A Practical Guide to Boundary-Element Methods

-1 -0.5 0 0.5 1X

0

1

2

3

4

5

G

Figure 1.2.1 A family of dimensionless test functions G gL described by (1.2.4)plotted against the dimensionless distanceX (xx0)=L for = 1 (dashedline), 2, 5, 10, 20, 50, 100, and 500 (dotted line). In the limit as the dimen-sionless parameter tends to infinity, we recover Dirac’s delta function in onedimension.

A solution of equation (1.2.1) is the piecewise linear function whose slope equal to 1

2when x > x0, and 1

2when x < x0, given by

G(x; x0) =

8<: 1

2(x x0) if x > x0

12(x x0) if x < x0

; (1.2.7)

as depicted in Figure 1.2.2. Alternatively, we may write

G(x; x0) = 1

2jx x0j: (1.2.8)

An arbitrary constant may be added to the right-hand side of (1.2.8) without affectingthe impending derivation of the boundary-value representation.

Equation (1.2.8) illustrates that the Green’s function enjoys the symmetry property

G(x; x0) = G(x0; x): (1.2.9)

We shall see in later chapters that similar symmetry properties are satisfied by Green’sfunctions of partial differential equations involving self-adjoint differential operators,including Laplace’s equation in two and three dimensions. These symmetry proper-ties play an important role in the physical interpretation of the boundary-value andboundary-integral representations.

Page 20: Boundary Element Methods

Laplace’s equation in one dimension 5

y

0x

y = G(x, x )0

x

0

Figure 1.2.2 Graph of the Green’s function of Laplace’s equation in one dimensionsatisfying equation (1.2.1). The singular point x0 is the pole of the Green’sfunction.

1.2.1 Green’s function dipole

Differentiating the right-hand side of (1.2.7) with respect to the field point x, we findthat the derivative of the Green’s function is a piecewise constant function,

dG(x; x0)

dx=

8<: 1

2if x > x0

12

if x < x0

: (1.2.10)

Since the first derivative of the Green’s function is discontinuous at the singular point,it is not surprising that the second derivative behaves like a delta function accordingto (1.2.1).

Problems

P.1.2.1 The Heaviside function

Show that the integral of Æ1(x0 x0) with respect to x0 from negative infinity to x isthe shifted Heaviside functionH(x x0), which is equal to zero when x < x0, andunity when x > x0.

P.1.2.2 Green’s function of Helmholtz’s equation in one dimension

(a) Show that any two solutions of Helmholtz’s equation in one dimension

d2f

dx2 c f = 0; (1)

Page 21: Boundary Element Methods

6 A Practical Guide to Boundary-Element Methods

satisfy the reciprocal relation (1.1.4); c is a real or complex constant.

(b) A Green’s function of Helmholtz’s equation in one dimension satisfies the equa-tion

d2G(x; x0)

dx2 c G(x; x0) + Æ1(x x0) = 0: (2)

When c = 2, where is a real constant, the Green’s function is given by

G(x; x0) = 1

2sin(jx x0j): (3)

When c = 2, where is a real constant, the Green’s function is given by

G(x; x0) = 1

2sinh(jx x0j): (4)

Confirm that, in the limit as tends to zero, the Green’s functions (3) and (4) reduceto the Green’s function of Laplace’s equation given in (1.2.7).

P.1.2.3 Convection – diffusion in uniform flow

The steady-state temperature or species concentration field f(x) in a uniform flowwith constant velocity U is governed by the linear convection – diffusion equation

Udf

dx=

d2f

dx2; (1)

where is the thermal or species diffusivity. The corresponding Green’s functionsatisfies the equation

UdG(x; x0)

dx=

d2G(x; x0)

dx2+ Æ1(x x0): (2)

Show that

G(x; x0) =1

H(x; x0) exp[

U (x x0)

2]; (3)

where H(x; x0) is the Green’s function of Helmholtz’s equation given by the right-hand side of equation (4) of P.1.2.2 with = jU j=(2). Thus,

G(x;x0) = 1

jU j sinh(jU jjx x0j

2) exp[

U (x x0)

2]: (4)

Page 22: Boundary Element Methods

Laplace’s equation in one dimension 7

1.3 Boundary-value representation

Let us return to Green’s second identity (1.1.3), and identify the function with theGreen’s function given in (1.2.7), where the singular point x0 is located inside thesolution domain a < x0 < b. Using the definition in (1.2.1), and assuming that thefunction f satisfies (1.1), we find

f(x) Æ(x x0) =d

dx[G(x; x0)

df(x)

dx f(x)

dG(x; x0)

dx]: (1.3.1)

Integrating both sides of (1.3.1) with respect to x over the solution domain [a; b], andusing the distinctive properties of the delta function and the fundamental theorem ofcalculus, we obtain the representationZ b

a

f(x) Æ(x x0) dx = f(x0)

= [G(x; x0)df(x)

dx f(x)

dG(x; x0)

dx]x=b (1.3.2)

[G(x; x0)df(x)

dx f(x)

dG(x; x0)

dx]x=a:

A slight rearrangement yields

f(x0) = ( dfdx

)x=a G(x0; x = a) + (df

dx)x=b G(x0; x = b)

+f(x = a) (dG(x; x0)

dx)x=a f(x = b) (

dG(x; x0)

dx)x=b: (1.3.3)

Denoting df=dx by q, we obtain

f(x0) = q(x = a)G(x0; x = a) + q(x = b)G(x0; x = b)

+f(x = a) (dG(x; x0)

dx)x=a f(x = b) (

dG(x; x0)

dx)x=b; (1.3.4)

which can be regarded as a boundary-value representation: if f(x = a), f(x = b),q(x = a), and q(x = b) are known, the right-hand side of (1.3.4) may be evaluatedfor any value of x0, thereby providing us with the solution.

Using expressions (1.2.7) and (1.2.10) for the Green’s function and its derivative, werecast (1.3.4) into the explicit form

f(x0) =1

2q(x = a) (x0 a) +

1

2q(x = b) (x0 b)

+1

2f(x = a) +

1

2f(x = b): (1.3.5)

Page 23: Boundary Element Methods

8 A Practical Guide to Boundary-Element Methods

Equation (1.1) demands that the slope df=dx be constant, independent of x. Settingq(x = a) = q(x = b) = q, we obtain

f(x0) = q (x0 a+ b

2) +

1

2[f(x = a) + f(x = b)]; (1.3.6)

which reproduces the linear solution given in (1.2).

Problem

P.1.3.1 Helmholtz’s equation

Develop the counterpart of the boundary-value representation (1.3.4) for Helmholtz’sequation in one dimension, equation (1) of P.1.2.2, involving the correspondingGreen’s function.

1.4 Boundary-value equation

In practice, boundary conditions provide us with two of the following three values:

f(x = b), f(x = a), q.

To compute the unknown value, we take the limit of (1.3.6) as the point x0 ap-proaches one of the end-points a or b, and thereby derive an algebraic relation calledthe “boundary-value equation.”

For example, if f(x = b) and f(x = a) are specified, we may evaluate (1.3.6) atx0 = b, and rearrange to obtain the familiar expression for the slope of a straight line

q =f(x = b) f(x = a)

b a: (1.4.1)

Substituting (1.4.1) into (1.3.6) completes the boundary-value representation.

In the case of Laplace’s equation in one dimension discussed in this chapter, theboundary-value representation has provided us with an algebraic equation for anunknown boundary value.

In the case of Laplace’s equation and other partial differential equations in two- andthree-dimensional domains discussed in the remainder of this book, analogous for-mulations will result in integral equations for the boundary distribution of an un-known function. The numerical solution of these integral equations is the fundamen-tal goal of the boundary-element method.

Page 24: Boundary Element Methods

Chapter 2

Laplace’s equation in two dimensions

Laplace’s equation in two dimensions takes the form of the linear, elliptic, and ho-mogeneous partial differential equation

r2f(x; y) = 0; (2.1)

where r2 is the Laplacian operator in the xy plane defined as

r2 @2

@x2+

@2

@y2: (2.2)

A function that satisfies (2.1) is called harmonic.

To compute the solution of (2.1) in a certain solution domain, we require boundaryconditions for the unknown function f (Dirichlet boundary condition), its normalderivative (Neumann boundary condition), or a combination thereof (mixed or Robinboundary condition) along overlapping or complementary parts of the boundary.

Following the analysis of Chapter 1, we proceed to formulate the solution in termsof an integral equation by working in four stages. First, we discuss Green’s firstand second identities and the reciprocal relation. Second, we introduce the Green’sfunctions of Laplace’s equation in two dimensions. Third, we develop a boundary-integral representation. Finally, we derive an integral equation that we then solveusing the boundary-element method.

2.1 Green’s first and second identities and the reciprocal relation

Green’s first identity states that any two twice-differentiable functions f(x; y) and(x; y) satisfy the relation

r2f = r (rf)r rf: (2.1.1)

Note the similarity with (1.1.1) for the corresponding problem in one dimension.

9

Page 25: Boundary Element Methods

10 A Practical Guide to Boundary-Element Methods

In index notation, equation (2.1.1) takes the form

@2f

@xi@xi=

@

@xi(

@f

@xi) @

@xi

@f

@xi; (2.1.2)

where summation over the repeated index i is implied in the range i = 1, 2, corre-sponding to x and y (Appendix A). The proof of (2.1.2) requires elementary opera-tions following the observation thatr2 = r (rf), that is, the Laplacian of a scalarfunction is equal to the divergence of its gradient (Appendix A).

Interchanging the roles of f and , we obtain the converse relation

f r2 = r (f r)rf r: (2.1.3)

Subtracting (2.1.3) from (2.1.1), we derive Green’s second identity

r2f f r2 = r (rf f r): (2.1.4)

If both functions f and satisfy Laplace’s equation (2. 1), the left-hand side of(2.1.4) vanishes, yielding the reciprocal relation for harmonic functions

r (rf f r) = 0; (2.1.5)

which is the two-dimensional counterpart of (1.1.4).

2.1.1 Integral form of the reciprocal relation

The integral form of the reciprocal relation arises by integrating both sides of thereciprocal relation (2.1.5) over an arbitrary control area Ac that is bounded by aclosed line or a collection of closed lines denoted by C, as illustrated in Figure 2.1.1.

Using the divergence theorem in the plane (Appendix A), we convert the areal inte-gral to a line integral, and thereby obtain the integral statementZ Z

Ac

(rf f r) n dA = 0; (2.1.6)

where n is the unit vector normal toC pointing into the control area, and dA = dxdyis a differential area in the xy plane.

Equation (2.1.6) imposes an integral constraint on the boundary values and boundarydistribution of the normal derivatives of any pair of non-singular harmonic functionsf and . If we identify f with an unknown function and with a specified test func-tion, then we can use (2.1.6) to obtain information on, and even construct, a desiredsolution. The most appropriate family of test functions are the Green’s functionsdiscussed next in Section 2.2.

Page 26: Boundary Element Methods

Laplace’s equation in two dimensions 11

(a)

CA

A

c

c

C

(b)

n

n

nn

n

Figure 2.1.1 A control area in the xy plane enclosed by (a) a closed line, and (b) acollection of closed lines.

Problem

P.2.1.1 Kirchhoff transformation

Laplace’s equation describes the steady-state distribution of temperature T in a do-main occupied by a homogeneous material with uniform thermal conductivity k.

If the thermal conductivity is not constant but varies with position over the medium,then the temperature distribution is described by the generalized equation

@

@x(k@T

@x) +

@

@y(k@T

@y) = 0; (1)

which arises by balancing the thermal fluxes expressed by Fick’s law over an in-finitesimal area.

Consider heat conduction in a homogeneous material where the thermal conductivityis a function of the local temperature, that is, k = q(T ), where q(T ) is a givenfunction, and introduce the Kirchhoff transformation

f(T ) =

Z T

T0

q() d;df

dT= q(T ); (2)

where T0 is an arbitrary reference temperature, and is a dummy variable of integra-tion. The function f(T ) is an implicit function of position through the dependenceof T on x and y. Show that (a) the gradients of f and T are related by rf = k rT ,and (b) f(x; y) satisfies Laplace’s equation (2. 1).

Page 27: Boundary Element Methods

12 A Practical Guide to Boundary-Element Methods

2.2 Green’s functions

The Green’s functions of Laplace’s equation in two dimensions constitute a specialclass of harmonic functions that are singular at an arbitrary point x0 = (x0; y0). Bydefinition, a Green’s function satisfies the singularly forced Laplace’s equation

r2G(x;x0) + Æ2(x x0) = 0; (2.2.1)

where:

x = (x; y) is the variable “field point.”

x0 = (x0; y0) is the fixed location of the “singular point” or “pole.”

Æ2(x x0), written more explicitly as Æ2(x x0; y y0), is Dirac’s deltafunction in two dimensions.

By construction, Dirac’s delta function in two dimensions is endowed with the fol-lowing properties:

1. Æ2(x x0; y y0) vanishes everywhere except at the point x = x0, y = y0,where it becomes infinite.

2. The integral of the delta function over an area D that contains the singularpoint (x0; y0) is equal to unity,Z

D

Æ2(x x0; y y0) dx dy = 1: (2.2.2)

This property illustrates that the delta function in the xy plane has units ofinverse squared length.

3. The integral of the product of an arbitrary function f(x; y) and the delta func-tion over an area D that contains the singular point (x0; y0) is equal to thevalue of the function at the singular point,Z

D

Æ2(x x0; y y0) f(x; y) dx dy = f(x0; y0): (2.2.3)

The integral of the product of an arbitrary function f(x; y) and the delta func-tion over an areaD that does not contain the singular point (x0; y0) is equal tozero.

4. In formal mathematics, Æ2(x x0; y y0) arises from the family of test func-tions

q(r) =

L2exp( r2

L2); (2.2.4)

Page 28: Boundary Element Methods

Laplace’s equation in two dimensions 13

in the limit as the dimensionless parameter tends to infinity, where

r jx x0j =p(x x0)2 + (y y0)2;

and L is an arbitrary length,

Figure 2.2.1 shows graphs of a family of dimensionless test functions Q qL2

plotted against the dimensionless distance X (x x0)=L for y = y0, and =1 (dashed line), 2, 5, 10, 20, 50, 100, and 500 (dotted line). The maximum heightof each graph is inversely proportional to the square of its width, so that the areaunderneath each graph in the xy plane is equal to unity,Z Z

q(r) dx dy =

Z 2

0

Z 1

0

q(r) r dr d = 2

Z 1

0

q(r) r dr

=2

L2

Z1

0

exp( r2

L2) r dr = 1: (2.2.5)

Another way to derive this identity is to observe that

q(r) = g(x x0) g(y y0); (2.2.6)

where the function g is defined in equation (1.2.4), writeZ Zq(r) dx dy = [

Z1

1

g(x x0) dx ] [

Z1

1

g(y y0) dy ]; (2.2.7)

and then use property (1.2.5).

2.2.1 Green’s functions of the first kind and Neumann functions

In addition to satisfying equation (2.2.1), a Green’s function of the first kind is re-quired to take the reference value of zero over a contourCG representing the bound-ary of a solution domain, that is,

G(x;x0) = 0; (2.2.8)

when the point x lies on CG.

On the other hand, a Green’s function of the second kind, also called a Neumannfunction, is distinguished by the property that its normal derivative vanishes over theboundary CG, that is,

n(x) rG(x;x0) @G

@n(x;x0) = 0; (2.2.9)

where the point x lies on CG.

Physically, a Green’s or Neumann function may be identified with one of the follow-ing:

Page 29: Boundary Element Methods

14 A Practical Guide to Boundary-Element Methods

-1 -0.5 0 0.5 1X

0

1

2

3

4

5

Q

Figure 2.2.1 A family of dimensionless test functionsQ qL2 described by (2.2.4)plotted against the dimensionless distance X (x x0)=L for y = y0 and = 1 (dashed line), 2, 5, 10, 20, 50, 100, and 500 (dotted line). In the limitas the dimensionless parameter tends to infinity, we recover Dirac’s deltafunction in two dimensions.

The steady temperature field due to a point source of heat located at the pointx0 in the presence of an isothermal or insulated boundary represented by CG,corresponding, respectively, to the Green’s function of the first or second kind.

The steady concentration field due to a point source of a species located atthe point x0 in the presence of an iso-concentration or impermeable boundaryrepresented by CG, corresponding, respectively, to the Green’s function of thefirst or second kind.

The harmonic potential due to a point sink of mass located at the point x0 in adomain of flow bounded by CG.

2.2.2 Free-space Green’s function

The free-space Green’s function corresponds to an infinite solution domain in theabsence of any interior boundaries. Solving equation (2.2.1) by inspection or usingthe Fourier transform, we find

G(x;x0) = 1

2ln r; (2.2.10)

where r = jx x0j = [(x x0)2 + (y y0)

2]1=2 is the scalar distance of the fieldpoint x from the singular point x0.

Page 30: Boundary Element Methods

Laplace’s equation in two dimensions 15

2.2.3 Green’s functions in bounded domains

As the observation point x approaches the singular point x0, all Green’s and Neu-mann functions exhibit a common singular behavior. Specifically, any Green’s orNeumann function is composed of a singular part that is identical to the free-spaceGreen’s function given in (2.2.10), and a complementary part expressed by a har-monic functionH that is non-singular throughout the domain of solution,

G(x;x0) = 1

2ln r +H(x;x0): (2.2.11)

In the case of the free-space Green’s function, the complementary component Hvanishes. More generally, the particular form of H depends on the geometry of theboundary CG. For certain simple boundary geometries involving straight and circu-lar contours, the complementary functionH may be found by the method of images,that is, by placing free-space Green’s functions and their derivatives at strategicallyselected locations outside the solution domain.

For example, the Green’s function for a semi-infinite domain bounded by a planewall located at y = w is given by

G(x;x0) = 1

2ln r 1

2ln rIm; (2.2.12)

where

r = jx x0j; rIm = jx xIm0 j; (2.2.13)

and xIm0 = (x0; 2w y0) is the image of the point x0 with respect to the wall. Theplus and minus sign correspond, respectively, to the Green’s function of the first kindand to the Neumann function.

2.2.4 BEMLIB directory lgf 2d

Subdirectory lgf 2d of directory laplace of BEMLIB contains subroutines thatevaluate a family of Green’s and Neumann functions, including the following:

Green’s function in free space.

Singly periodic Green’s function.

Green’s and Neumann functions in a semi-infinite domain bounded by a planewall.

Green’s and Neumann functions in an infinite strip confined by two parallelplane walls.

Page 31: Boundary Element Methods

16 A Practical Guide to Boundary-Element Methods

Neumann function in a semi-infinite strip confined by two parallel plane wallsand a third wall intersecting the parallel walls at right angles.

Neumann function in the exterior of a circle.

Most of these Green’s and Neumann functions are constructed by the method ofimages. Details on derivation and illustration of iso-scalar contours are presented inChapter 10.

2.2.5 Integral properties of Green’s functions

Consider a singly or multiply connected control area in the xy plane, denoted byAc, that is bounded by a closed contour or a collection of closed contours, denotedby C. The boundary CG associated with the Green’s function may be one of thesecontours. For the moment, we shall assume that all contours are smooth, that is, theydo not exhibit corners or cusps.

Integrating (2.2.1) over the control area Ac, and using the divergence theorem andthe distinctive properties of the delta function in two dimensions, we find that theGreen’s functions satisfy the integral identity

ZC

n(x) rG(x;x0) dl(x) =

8<:

1 when x0 is inside Ac12

when x0 is on C0 when x0 is outside Ac

; (2.2.14)

where the unit normal vector n points into the control area Ac. When the singularpoint x0 is located on the boundaryC, the improper integral on the left-hand side of(2.2.14) is a principal-value integral.

Using the three relations shown in (2.2.14), we derive the important identityZC

n(x) rG(x;x0) dl(x) =Z PV

C

n(x) rG(x;x0) dl(x)1

2; (2.2.15)

where PV denotes the principal-value integral computed by placing the evaluationpoint x0 precisely on C. The plus and minus sign on the right-hand side of (2.2.15)apply, respectively, when the point x0 on the left-hand side lies inside or outside thecontrol area Ac.

2.2.6 Green’s function dipole

Differentiating a Green’s function with respect to the coordinates of the pole, weobtain a vectorial singularity called the Green’s function dipole, given by

GD(x;x0) r0G(x;x0) = [

@G(x;x0)

@x0;@G(x;x0)

@y0]; (2.2.16)

Page 32: Boundary Element Methods

Laplace’s equation in two dimensions 17

where the subscript “0” denotes differentiation with respect to the Cartesian compo-nents of x0. Physically, the scalar field

(x;x0) = d r0G(x;x0) (2.2.17)

represents the temperature or concentration field due to a point source dipole of heator species located at the point x0. The direction and strength of the dipole are deter-mined, respectively, by the orientation and magnitude of the arbitrary vector d.

Differentiating, for example, the right-hand side of (2.2.10), we derive the two-dimensional free-space Green’s function dipole,

GDi (x;x0) =

1

2

xi

r2; (2.2.18)

where i = 1; 2 corresponds to x and y, x = x x0, and r = jx x0j. Thetemperature field due to a point source dipole of heat in free space is thus given by

(x;x0) =1

2

dxx+ dyy

r2; (2.2.19)

where the scalar coefficients dx and dy determine the orientation and strength of thedipole in the xy plane.

2.2.7 Green’s function quadruple

Higher derivatives of the Green’s function with respect to the coordinates of the poleyield higher-order tensorial singularities that are multi-poles of the point source. Thefirst three members of this family are the quadruple GQ, the octuple GO , and thesextuple GS .

The free-space quadruple is given by

GQij(x;x0) =

@GDj (x;x0)

@x0j=@2G(x;x0)

@x0i@x0j= 1

2(Æij

r2 2

xixj

r4);

(2.2.20)

where x = x x0 and r = jx x0j.

Problems

P.2.2.1 Delta function in two dimensions

Prove by direct evaluation the equality shown in the second line of (2.2.5).

P.2.2.2 Helmholtz’s equation

(a) Show that any two solutions of Helmholtz’s equation in two dimensions

Page 33: Boundary Element Methods

18 A Practical Guide to Boundary-Element Methods

r2f(x; y) c f(x; y) = 0; (1)

satisfy the reciprocal relation (2.1.5); c is a real or complex constant,

(b) The Green’s functions of Helmholtz’s equation in two dimensions satisfy theequation

r2G(x;x0) c G(x;x0) + Æ2(x x0) = 0: (2)

When c = i2, where i is the imaginary unit and is a real positive constant,the free-space Green’s function is given by

G(x;x0) =1

2[ker0(r) i kei0(r)]; (3)

where r = jx x0j, and ker0, kei0 are Kelvin functions (e.g., [2], p. 379).

When c = 2, where is a real positive constant, the free-space Green’sfunction is given by

G(x;x0) =1

2K0(r); (4)

where K0 is a modified Bessel function (e.g., [2], p. 374).

When c = 2, where is a real positive constant, the free-space Green’sfunction is given by

G(x;x0) = i4H

(2)0 (r);= 1

4[Y0(r) + i J0(r)]; (5)

whereH(2)0 is a Hankel function, and J0, Y0 are, respectively, Bessel functions

of the first and second kind (e.g., [2], p. 358).

With the help of a mathematical handbook, show that, in the limit as the field pointx approaches the singular point x0, the real and complex Green’s functions (3) to (5)reduce to the free-space Green’s function of Laplace’s equation given in (2.2.10).

P.2.2.3 Convection – diffusion in uniform flow

The steady-state temperature or species concentration field f(x; y) in a uniform(streaming) flow with constant velocity U = (Ux; Uy) is governed by the linearconvection – diffusion equation

Ux@f

@x+ Uy

@f

@y= r2f; (1)

Page 34: Boundary Element Methods

Laplace’s equation in two dimensions 19

where is the thermal or species diffusivity with dimensions of length squared di-vided by time. In vector notation, equation (1) takes the compact form U rf =r2f . The corresponding Green’s function satisfies the equation

Ux@G(x;x0)

@x+ Uy

@G(x;x0)

@y= r2G(x;x0) + Æ2(x x0): (2)

Confirm that the free-space Green’s function is given by

G(x;x0) =1

H(x;x0) exp[

U (x x0)

2]; (3)

where H(x;x0) is the Green’s function of Helmholtz’s equation given by the right-hand side of equation (4) of P.2.2.2 with = jUj=(2). Thus,

G(x;x0) =1

2K0(

jUj r2

) exp[U (x x0)

2]: (4)

P.2.2.4 D’Arcy equation

Verify that the Green’s function of D’Arcy’s equation in two dimensions

k1@2f

@x2+ k2

@2f

@y2= 0; (1)

where k1 and k2 are two real constants with the same sign, is given by

G(x;x0) = 1

2pk1k2

ln r: (2)

What transformation does the Green’s function undergo when k1 and k2 have differ-ent signs?

2.3 Integral representation

Applying Green’s second identity (2.1.4) for a non-singular harmonic function f(x)and a Green’s function G(x;x0) in place of (x), and using the definition (2.2.1),we obtain

f(x) Æ2(x x0) = r [G(x;x0)rf(x) f(x)rG(x;x0)] ; (2.3.1)

which is the two-dimensional counterpart of (1.3.1).

Page 35: Boundary Element Methods

20 A Practical Guide to Boundary-Element Methods

Next, we select a control area Ac that is bounded by a closed contour or a collec-tion of contours denoted by C, as illustrated in Figure 2.1.1. When the pole of theGreen’s function x0 is placed outsideAc, the left-hand side of (2.3.1) is non-singularthroughout Ac. Integrating both sides of (2.3.1) over Ac, and using the divergencetheorem in two dimensions (Appendix A), we findZ

C

[G(x;x0)rf(x) f(x)rG(x;x0)] n(x) dl(x) = 0; (2.3.2)

where dl is the differential arc length along C.

In contrast, when the x0 is placed inside Ac, the left-hand side of (2.3.1) exhibits asingularity at the point x0. Using the distinctive properties of the delta function intwo dimensions to perform the integration, we find

f(x0) = ZC

G(x;x0) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rG(x;x0)] dl(x); (2.3.3)

where the unit normal vector n points into the control area enclosed by C, as shownin Figure 2.1.1.

Equation (2.3.3) provides us with a boundary-integral representation of a harmonicfunction in terms of the boundary values and the boundary distribution of the nor-mal derivative of the harmonic function. To compute the value of f at a particularpoint x0 located inside a selected control area, we simply evaluate the two boundaryintegrals on the right-hand side of (2.3.3).

A symmetry property allows us to switch the order of the arguments of the Green’sfunction in (2.3.3), that is, to interchange the location of the singular point and theevaluation point, writing

G(x;x0) = G(x0;x); (2.3.4)

(see P.2.3.1). Using this property, we express (2.3.3) in the form

f(x0) = ZC

G(x0;x) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rG(x0;x)] dl(x): (2.3.5)

The two integrals on the right-hand side of (2.3.5) represent boundary distributions ofGreen’s functions and Green’s function dipoles oriented perpendicular to the bound-aries of the control area expressing, respectively, boundary distributions of point

Page 36: Boundary Element Methods

Laplace’s equation in two dimensions 21

sources and point-source dipoles. Making an analogy with the corresponding bound-ary distributions of electric charges and charge dipoles in electrostatics, we refer tothese integrals as the single-layer and double-layer harmonic potentials. The densi-ties (strength per unit length) of these potentials are equal, respectively, to the bound-ary distribution of the normal derivative and to the boundary values of the harmonicpotential.

2.3.1 Green’s third identity

Applying the integral representation (2.3.3) with the free-space Green’s functiongiven in (2.2.10), we derive Green’s third identity in two dimensions,

f(x0) =1

2

ZC

[ln r rf(x) + f(x)x0 x

r2] n(x) dl(x); (2.3.6)

where r = jx x0j, and the unit normal vector n points into the control area en-closed by the contour C.

2.3.2 Choice of Green’s functions

Green’s third identity involving the free-space Green’s function is applicable to anysolution domain geometry. In practice, it is beneficial to work with a boundary-integral representation that involves a Green’s function of the first or second kindcorresponding to the particular geometry under consideration, and chosen accordingto the type of specified boundary conditions.

Suppose, for example, that the boundary conditions require that the function f van-ishes over a contourCG that is part of the boundary C involved in the integral repre-sentation. Implementing this boundary condition, we find that the double-layer po-tential over CG is identically equal to zero. If G(x0;x) is chosen to be the Green’sfunction of the first kind corresponding to CG, that is, G(x0;x) = 0 when the eval-uation point x lies on CG, then the corresponding single-layer integral is also equalto zero, yielding a simplified representation.

2.3.3 Integral representation of the gradient

It is perfectly acceptable to compute first or higher-order derivatives of the right-hand side of (2.3.3) with respect to the components of x0 = (x0; y0), so long as thepoint x0 lies inside the solution domain away from the boundaries. The result is anintegral representation for the gradient rf and for high-order tensors consisting ofhigh-order derivatives.

Taking the first derivative of the integral representation (2.3.3) with respect to x0,and switching the order of differentiation and integration on the right-hand side, we

Page 37: Boundary Element Methods

22 A Practical Guide to Boundary-Element Methods

find

@f(x0)

@x0=

ZC

@G(x0;x)

@x0[n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) r@G(x0;x)@x0

] dl(x); (2.3.7)

where the gradient r on the right-hand side operates with respect to x. Taking alsothe derivative with respect to y0 and compiling the two representations, we obtain avector integral representation for the gradient,

r0f(x0) = ZC

r0G(x0;x) [n(x) rf(x)] dl(x) (2.3.8)

+

ZC

f(x) [n(x) rr0G(x0;x)] dl(x);

where the gradient r0 operates with respect to the evaluation point x0. In indexnotation, the representation (2.3.8) takes the form

@f(x0)

@x0i=

ZC

@G(x0;x)

@x0i[n(x) rf(x)] dl(x)

+

ZC

f(x)@2G(x0;x)

@x0i@xjnj(x) dl(x); (2.3.9)

where summation over the repeated index j is implied on the right-hand side.

Applying the representation (2.3.9) for a constant function f(x), we derive the vectoridentity

ZC

@2G(x0;x)

@x0i@xjnj(x) dl(x) = 0: (2.3.10)

Applying further the representation (2.3.9) for the linear function f(x) = ai(xibi),where ai are arbitrary constant coefficients and bi are arbitrary coordinates, observ-ing that n(x) rf(x) = ak nk(x), and discarding the arbitrary constants ak, wefind

Æik = ZC

@G(x0;x)

@x0ink(x) dl(x)

+

ZC

(xk bk)@2G(x0;x)

@x0i@xjnj(x) dl(x); (2.3.11)

where Æik is Kronecker’s delta (Appendix A).

Page 38: Boundary Element Methods

Laplace’s equation in two dimensions 23

Identities (2.3.10) and (2.3.11) are useful for reducing the order of the singularityof the second integral on the right-hand side of (2.3.8) in the limit as the evaluationpoint x0 approaches the boundary C, as will be discussed in Section 2.5.

In the case of the free-space Green’s function, we depart from Green’s third identity(2.3.6) and derive the more specific form of (2.3.8),

r0f(x0) =1

2

ZC

(r0 ln r) [n(x) rf(x)] dl(x)

+1

2

ZC

f(x) [r0(x0 x

r2) n(x)] dl(x); (2.3.12)

where r = jx x0j. Carrying out the differentiations and switching to index nota-tion, we find

@f(x0)

@x0i=

1

2

ZC

~xir2

[ n(x) rf(x)] dl(x)

+1

2

ZC

f(x) (Æij

r2 2

~xi ~xjr4

) nj(x) dl(x); (2.3.13)

where Æij is Kronecker’s delta, and ~x = x0 x. Comparing the two integrandswith expressions (2.2.18) and (2.2.20), we conclude that the two integrals on theright-hand side of (2.3.13) and, by extension, the integrals on the right-hand side of(2.3.9), represent boundary distributions of point-source dipoles and quadruples.

Identities (2.3.10) and (2.3.11) written with the free-space Green’s function take thespecific forms Z

C

(Æij

r2 2

~xi ~xjr4

) nj(x) dl(x) = 0; (2.3.14)

and

Æik = ZC

~xir2nk(x) dl(x) +

ZC

(xk bk) (Æij

r2 2

~xi ~xjr4

) nj(x) dl(x):

(2.3.15)

2.3.4 Representation in the presence of an interface

In engineering applications, we encounter problems involving heat conduction orspecies diffusion in two adjacent media labeled 1 and 2, as illustrated in Figure 2.3.1.At steady state, the individual temperature or concentration fields, denoted by f (1)

and f (2), satisfy Laplace’s equation (2. 1).

At the interface, denoted by I , physical considerations provide us with an expressionfor the discontinuity in temperature of species concentration

Page 39: Boundary Element Methods

24 A Practical Guide to Boundary-Element Methods

n

n

I

C

C2

1

(1)

(1)

n(2)

Domain 2

Domain 1

n(2)

Figure 2.3.1 Illustration of a composite domain consisting of two conducting mediawith an interface.

f f (1) f (2): (2.3.16)

For example, in heat transfer, an apparent discontinuity in temperature may arisebecause of imperfect mechanical contact associated with surface roughness, and maybe modeled in terms of a “contact conductance.”

Moreover, an interfacial energy or mass balance provides us with an expression forthe flux discontinuity

q k1 n(1) rf (1) + k2 n(1) rf (2)

= k2 n(2) rf (2) + k1 n(2) rf (1); (2.3.17)

where k1 and k2 are the media conductivities or diffusion coefficients. The unitnormal vectors are directed as shown in Figure 2.3.1.

Our objective is to derive an integral representation where the interfacial conditions(2.3.16) and (2.3.17) are embedded in the integral representation.

We begin by considering a point x0 in medium 1, and apply identity (2.3.2) withC = C2 and the integral representation (2.3.3) with C = C1 to find

0 = ZC2

G(x;x0) [n(2)(x) rf (2)(x)] dl(x)

+

ZC2

f (2)(x) [n(2)(x) rG(x;x0)] dl(x); (2.3.18)

Page 40: Boundary Element Methods

Laplace’s equation in two dimensions 25

and

f (1)(x0) = ZC1

G(x;x0) [n(1)(x) rf (1)(x)] dl(x)

+

ZC1

f (1)(x) [n(1)(x) rG(x;x0)] dl(x); (2.3.19)

where the contours C1 and C2 include the interface I .

Decomposing the integrals over C1 and C2 into integrals over the interface I andintegrals over the remaining part, adding (2.3.18) and (2.3.19), and recalling thatalong the interface n(2) = n(1), we obtain the representation

f (1)(x0) = A1 +B1 A2 +B2

1

ZI

G(x;x0) [ n(1)(x) rf (1)(x) 1

1

q

k1] dl(x)

+

ZI

f(x) [n(1)(x) rG(x;x0)] dl(x); (2.3.20)

where k2=k1. The first four terms on the right-hand side of (2.3.20) are definedas

A1 ZC1I

G(x;x0) [n(1)(x) rf (1)(x)] dl(x);

B1 ZC1I

f (1)(x) [n(1)(x) rG(x;x0)] dl(x);

(2.3.21)

A2 ZC2I

G(x;x0) [n(2)(x) rf (2)(x)] dl(x);

B2 ZC2I

f (2)(x) [n(2)(x) rG(x;x0)] dl(x):

Alternatively, we may multiply (2.3.18) by and add the resulting expression to(2.3.19) to obtain

f (1)(x0) = A1 +B1 A2 + B2 +1

k1

ZI

q(x)G(x;x0) dl(x)

+(1 )

ZI

[f (1)(x) +

1 f(x)] [n(1)(x) rG(x;x0)] dl(x): (2.3.22)

Analogous representations for a point x0 that lies in medium 2 arise by straightfor-ward changes in notation.

Page 41: Boundary Element Methods

26 A Practical Guide to Boundary-Element Methods

Simplifications have occurred because the integrals over the interface in (2.3.20) and(2.3.22) involve the discontinuitiesf and q and the distribution of f or its normalderivative on one side.

Problems

P.2.3.1 Symmetry of the Green’s functions

Prove the symmetry property (2.3.4). Hint: Apply Green’s second identity with thefunctions f and chosen to be Green’s functions with singular points located atdifferent positions, and integrate the resulting expression over a selected control areabounded by CG.

P.2.3.2 Mean-value theorem

Consider a harmonic function f(x; y) satisfying Laplace’s equation (2.1), and intro-duce a control area enclosed by a circular contour of radius a centered at the pointx0. In plane polar coordinates (; ) centered at the point x0, the unit normal vec-tor pointing into the control area is given by n = ( cos ; sin ). Moreover,x x0 = a cos , y y0 = a sin , and r jx x0j = a. Using these expressions,we find that Green’s third identity (2.3.6) simplifies to

f(x0) =a

2

Z 2

0

[ln a rf(x) n(x) + f(x)1

a] d: (1)

Use the divergence theorem to show that the integral of the first term on the right-hand side of (1) vanishes, and thereby obtain the mean-value theorem

f(x0) =1

2

Z 2

0

f(x) d: (2)

The right-hand side of (2) is the mean value of f over the perimeter of the circle.

P.2.3.3 Helmholtz’s equation

Show that a solution of Helmholtz’s equation in two dimensions, equation (1) ofP.2.2.2, admits the integral representation (2.3.3), where G(x;x0) is the correspond-ing Green’s function.

P.2.3.4 Linear convection – diffusion equation

The steady-state distribution of a temperature of species concentration field f(x; y)in a two-dimensional flow with x and y velocity components ux(x; y) and uy(x; y)

Page 42: Boundary Element Methods

Laplace’s equation in two dimensions 27

is governed by the convection – diffusion equation

@(ux f)

@x+@(uy f)

@y= r2f; (1)

where is the thermal or species diffusivity with dimensions of squared length di-vided by time. In vector notation, equation (1) takes the compact form

r (u f) = r2f; (2)

where u = (ux; uy) is the velocity vector field.

To develop a boundary-integral representation for f , we consider Green’s secondidentity (2.1.4) and express it in the form

[r (u f) + r2f ] +r (f u) fu r + r2

= r (rf f r): (3)

If f satisfies equation (1), then the expression enclosed by the first set of squarebrackets on the left-hand side vanishes. Rearranging the remaining terms, we obtain

fu r+ r2

= r ( rf f r f u): (4)

Next, we introduce the Green’s function of the adjoint of the convection – diffusionequation (1), denoted by G(x;x0), satisfying the equation

u(x) rG(x;x0) = r2G(x;x0) + Æ2(x x0): (5)

The computation of Green’s functions for uniform and linear flows is discussed inReference [58].

(a) Identify the function in (4) with a Green’s function G whose singular point islocated inside a control area enclosed by the contour C, and work as in the text toderive the boundary-integral representation

f(x0) =

ZC

G(x;x0) [n (u f rf)](x) dl(x)

+

ZC

f(x) [n(x) rG(x;x0)] dl(x); (6)

where the unit normal vector n points into the control area enclosed by C.

(b) Discuss the physical interpretation of the two integrals on the right-hand side of(6).

Page 43: Boundary Element Methods

28 A Practical Guide to Boundary-Element Methods

2.4 Integral equations

Let us return to the integral representation (2.3.4) and take the limit as the point x0approaches a locally smooth contourC. Careful examination reveals that the single-layer potential varies continuously as the point x0 approaches and then crosses C.

Focusing on the behavior of the double-layer potential, we use identity (2.2.15) towrite

limx0!CfZC

f(x) [n(x) rG(x0;x)] dl(x)g

= limx0!CfZC

[f(x) f(x0)] [n(x) rG(x0;x)] dl(x)

+f(x0)

ZC

n(x) rG(x0;x) dl(x)g

= limx0!CfZC

[f(x) f(x0)] [n(x) rG(x0;x)] dl(x)g

+f(x0)

Z PV

C

n(x) rG(x0;x) +1

2f(x0)

=

Z PV

C

f(x) [n(x) rG(x0;x)] dl(x) +1

2f(x0); (2.4.1)

where PV denotes the principal-value integral.

Substituting (2.4.1) into (2.3.5) and rearranging the resulting expression, we find

f(x0) = 2ZC

G(x;x0) [n(x) rf(x)] dl(x)

+2

Z PV

C

f(x) [n(x) rG(x;x0)] dl(x); (2.4.2)

where the point x0 lies precisely on the contour C, and the unit normal vector npoints into the control area enclosed by C.

Written with the free-space Green’s function, the integral equation (2.4.2) takes theform

f(x0) =1

ZC

ln r [n(x) rf(x)] dl(x)

+1

Z PV

C

f(x)n(x) (x0 x)

r2dl(x); (2.4.3)

Page 44: Boundary Element Methods

Laplace’s equation in two dimensions 29

where r = jx x0j. Expression (2.4.3) is Green’s third identity evaluated at theboundary,

The boundary-element method is based on the following observations:

Given the boundary distribution of the function f , equation (2.4.2) reduces toa Fredholm integral equation of the first kind for the normal derivative q n rf . To show this more explicitly, we recast the integral equation into theform Z

C

G(x;x0) q(x) dl(x) = F (x0); (2.4.4)

where

F (x0) 1

2f(x0) +

Z PV

C

f(x) [n(x) rG(x;x0)] dl(x) (2.4.5)

is a known source term consisting of the boundary values of f and the double-layer potential.

Given the boundary distribution of the normal derivative n rf , equation(2.4.2) reduces to a Fredholm integral equation of the second kind for theboundary distribution of f . To show this more explicitly, we recast the integralequation into the form

f(x0) = 2

Z PV

C

f(x) [n(x) rG(x;x0)] dl(x) + (x0); (2.4.6)

where

(x0) = 2ZC

G(x;x0) [n(x) rf(x)] dl(x) (2.4.7)

is a known source term consisting of the single-layer potential.

The Green’s function exhibits a logarithmic singularity with respect to distance ofthe evaluation point from the singular point. Because the order of this singularity islower than the linear dimension of the variable of integration, the integral equation(2.4.4) is weakly singular. Consequently, the Fredholm-Riesz theory of compactoperators can be applied to study the properties of the solution (e.g., [4]), and theimproper integral may be evaluated accurately by numerical methods, as discussedin Chapter 3.

When C is a smooth contour with a continuously varying normal vector, as the in-tegration point x approaches the evaluation point x0, the normal vector n tends tobecome orthogonal to the nearly tangential vector (x x0). Consequently, the nu-merator of the integrand of the double-layer potential on the right-hand side of (2.4.3)

Page 45: Boundary Element Methods

30 A Practical Guide to Boundary-Element Methods

behaves quadratically with respect to the scalar distance r = jx x0j, and a singu-larity does not appear. The Fredholm-Riesz theory of compact operators may thenbe applied to study the properties of the solution (e.g., [4]), and the principal valueof the double-integral integral may be computed accurately by numerical methods,as discussed in Chapter 3.

The main goal of the boundary-element method is to generate numerical solutionsto the integral equations (2.4.4) and (2.4.6). The numerical implementation of theboundary-element collocation method, to be discussed in detail in Chapter 3, in-volves the following steps:

1. Discretize the boundary into a collection of boundary elements, and approx-imate the boundary integrals with sums of integrals over the boundary ele-ments.

2. Introduce approximations for the unknown function over the individual bound-ary elements.

3. Apply the integral equation at collocation points located over the boundary el-ements to generate a number of linear algebraic equations equal to the numberof unknowns.

4. Perform the integration of the single- and double-layer potential over the bound-ary elements.

5. Solve the linear system for the coefficients involved in the approximation ofthe unknown function.

In performing and interpreting the results of a boundary-integral computation, it isimportant to have a good understanding of the existence and uniqueness of solution.If the integral equation does not have a solution or if the solution is not unique, poorlyconditioned or singular algebraic systems with erroneous solutions will arise.

For example, analysis shows that the integral equation (2.4.6) has a unique solutiononly when the specified boundary distribution of the normal derivative satisfies theintegral constraint Z

C

n(x) rf(x) dl(x) = 0: (2.4.8)

If this constraint is satisfied, any solution can be shifted uniformly by an arbitraryconstant (e.g., [4, 60]). This behavior is consistent with the physical expectationthat, given the temperature flux around the boundary of a conducting plate, a steadytemperature field will be established only if the net rate of heat flow into the plateis zero; and if so, the temperature field can be elevated or reduced by an arbitraryconstant.

Page 46: Boundary Element Methods

Laplace’s equation in two dimensions 31

0x

(a)

n

α

α

x 0

(b)

Figure 2.4.1 Illustration of (a) a wedge-shaped domain with apex at the point x0,and (b) a control area whose boundary exhibits a corner.

2.4.1 Boundary corners

Relation (2.2.15) and subsequent relations (2.4.1) and (2.4.2) are valid only whenthe contour C is smooth in the neighborhood of the evaluation point x0, that is, thecurvature is finite and the unit normal vector is unique and varies continuously withrespect to arc length.

To derive an integral representation at a boundary corner or cusp, we observe thatthe integral of the two-dimensional Dirac delta function over the infinite wedge-shaped area shown in Figure 2.4.1(a) is equal to =(2), where is the apertureangle. Repeating the preceding analysis, we find that, when the point x0 is locatedat a boundary corner or cusp, as shown in Figure 2.4.1(b), the boundary-integralrepresentation takes the form

f(x0) = 2

ZC

G(x;x0) [ n(x) rf(x) ] dl(x)

+2

Z PV

C

f(x) [ n(x) rG(x;x0) ] dl(x): (2.4.9)

When = , the contour is locally smooth, and (2.4.9) reduces to the standardrepresentation (2.4.2).

When the boundary of a solution domain contains a corner or cusp, the solution ofthe integral equation for the function f or its normal derivative is likely to exhibit alocal singularity. Numerical experience has shown that neglecting the singularity andsolving the integral equations using the standard implementation of the boundary-element method are not detrimental to the overall accuracy of the computation.

Page 47: Boundary Element Methods

32 A Practical Guide to Boundary-Element Methods

To improve the accuracy of the numerical solution, the functional form of the singu-larity may be identified by carrying out a local analysis, and the boundary-elementmethod may be designed to automatically probe the strength of the divergent partand effectively produce the regular part of the solution [25, 34 – 36, 63, 69]. (seealso Reference [40]).

2.4.2 Shrinking arcs

It is instructive to rederive the integral representation (2.4.2) and its generalized form(2.4.9) in an alternative fashion that circumvents making use of the peculiar proper-ties of the delta function. A key observation is that the integral identity (2.3.2) isvalid so long as the evaluation point lies outside the solution domain, however closethe point is to the boundaries. Written with the free-space Green’s function, thisidentity reads

1

2

ZC

[ln r rf(x) + f(x)x0 x

r2] n(x) dl(x) = 0; (2.4.10)

where r = jx x0j.

Consider a point x0 on a locally smooth contour, as illustrated in Figure 2.4.2(a), orat a boundary corner, as illustrated in Figure 2.4.2(b), and introduce a circular arc ofradius and aperture angle that serves to exclude the evaluation point x0 from thecontrol area enclosed by C. If the contour C is locally smooth, as shown in Figure2.4.2(a), = ; if the contour is locally cusped, = 0 or 2. On the circular arc,xx0 = cos , yy0 = sin , r jxx0j = , nx(x) = cos , ny(x) = sin ,and the differential arc length is given by dl = d. Using these expressions, wefind that the contribution of the arc to the integral on the right-hand side of (2.4.10)is

1

2

Z

0

ln [cos

@f

@x(x) + sin

@f

@y(x)] f(x)

1

d: (2.4.11)

In limit as tends to zero, the product ln tends to vanish, the function f(x)and its partial derivatives @f

@x(x) and @f

@y(x) tend to their respective values at x0,

and the right-hand side of (2.4.11) tends to the value 2f(x0). Correspondingly,

the integral over the modified contour on the right-hand side of (2.4.10) tends to itsprincipal value computed by excluding from the integration domain a small intervalof length on either side of the evaluation point x0. Combining these results, wederive the integral representation (2.4.9), which includes the common case (2.4.2)for a smooth contour.

Our earlier observation that any Green’s function is composed of the singular free-space Green’s function and a non-singular complementary part can be invoked todemonstrate the general applicability of the boundary-integral equation (2.4.9).

Page 48: Boundary Element Methods

Laplace’s equation in two dimensions 33

(b)

n

n

n

0x

εθ

CC

E

(a)

n

n

α

n

θε

0x

C

E

C

Figure 2.4.2 Derivation of the boundary-integral representation in two dimensionsat a point x0 that lies (a) on a smooth contour, and (b) at a boundary corner.

Problems

P.2.4.1 Boundary corners

With reference to Figure 2.4.1(b), show that the aperture angle can be evaluated as

= 2

Z PV

C

n(x) rG(x;x0) dl(x): (1)

P.2.4.2 Conduction in the presence of an interface

(a) Take the limit of the integral representation (2.3.20) as the evaluation point x0approaches a locally smooth interface I , and thus derive boundary-integral equation.

(b) Repeat (a) for the integral representation (2.3.22).

P.2.4.3 The biharmonic equation

The biharmonic equation in two dimensions reads

r4f(x; y) = 0; (1)

Page 49: Boundary Element Methods

34 A Practical Guide to Boundary-Element Methods

where r4 is the biharmonic operator defined as

r4 r2 r2 =@4

@x4+ 2

@4

@x2 @y2+

@4

@y4: (2)

The corresponding Green’s function satisfies the equation

r4G(x;x0) + Æ2(x x0) = 0; (3)

where Æ2 is Dirac’s delta function in the xy plane.

(a) Verify that the free-space Green’s function is given by

G(x;x0) = 1

8r2 (ln r 1); (4)

where r = jx x0j.

(b) A Green’s function of the biharmonic equation and its normal derivative are re-quired to take the reference value of zero over a specified contour CG.

Verify that the Green’s function for a semi-infinite domain bounded by a plane walllocated at y = w is given by

G(x;x0) = 1

8r2 ln

r

rIm y0 w

4(y w); (5)

where r = jx x0j, rIm = jx xIm0 j, and xIm0 = (x0; 2w y0) is the image of

the singular point with respect to the wall [24].

(c) Verify that the Green’s function in the interior of a circular boundary of radius acentered at the point xc is given by

G(x;x0) = 1

8r2 ln

r a

rIm d d2 a2

16a2(jx xcj2 a2); (6)

where d = jx0 xcj, r = jx x0j, rIm = jx xIm0 j, and

xIm0 = xc + (x0 xc)

a2

d2(7)

is the image of the singular point with respect to the circle ([18], p. 272).

(d) Consider Green’s second identity (2.1.4), and set = r2 , where is a newfunction, to obtain

r2 r2f f r4 = r [r2 rf f r(r2 ) ]: (8)

Using elementary calculus, we find

Page 50: Boundary Element Methods

Laplace’s equation in two dimensions 35

r2 r2f = r (r )r2f = r [r r2f ]r r(r2f)

= r [r r2f r(r2f)] + r4f: (9)

Replacing the first term on the left-hand side of (8) with the last expression andrearranging, we find

r4f f r4

= r [r2 rf f r(r2 )r r2f + r(r2f) ]: (10)

Assuming now that the function f satisfies the biharmonic equation (1), we eliminatethe first term on the left-hand side of (10). Identifying further with a Green’sfunction of the biharmonic equation, we obtain

f(x) Æ2(x x0) = r [GL(x x0)rf(x)

f(x)rGL(x x0)r (x;x0) !(x) +G(x;x0)r!(x) ]; (11)

where

GL(x x0) r2G(x x0) (12)

is a Green’s function of Laplace’s equation, and

! r2f: (13)

Departing from identity (11), derive the boundary-integral representation

f(x0) = ZC

GL(x;x0) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rGL(x;x0)] dl(x)

ZC

G(x;x0) [n(x) r!(x)] dl(x)

+

ZC

!(x) [n(x) rG(x;x0)] dl(x); (14)

where the unit normal vector n points into the control area enclosed by the contourC, as shown in Figure 2.1.1, and the point x0 lies inside C.

(e) Show that, when the point x0 lies on a locally smooth contour C, the integralrepresentation (14) yields the integral equation

Page 51: Boundary Element Methods

36 A Practical Guide to Boundary-Element Methods

f(x0) = 2ZC

GL(x;x0) [n(x) rf(x)] dl(x)

+2

Z PV

C

f(x) [n(x) rGL(x;x0)] dl(x)

2ZC

G(x;x0) [n(x) r!(x)] dl(x)

+2

ZC

!(x) [n(x) rG(x;x0)] dl(x); (15)

where PV denotes the principal value of the double-layer potential.

(f) Derive the counterpart of (15) for a point x0 at a boundary corner.

2.5 Hypersingular integrals

Consider the integral representation for the gradient of a harmonic function in twodimensions written with the free-space Green’s function, given in equation (2.3.13).Expanding the terms that have been contracted by the repeated index summationconvention, we find that the x and y derivatives of the scalar field are given by

@f(x0)

@x0= 1

2

ZC

x x0

r2[ n(x) rf(x)] dl(x)

+1

2

ZC

f(x) [nx(x)

r2 2 (x x0)

(x x0) nx(x) + (y y0) ny(x)

r4] dl(x);

(2.5.1)

and

@f(x0)

@y0= 1

2

ZC

y y0

r2[ n(x) rf(x)] dl(x)

+1

2

ZC

f(x) [ny(x)

r2 2 (y y0)

(x x0) nx(x) + (y y0) ny(x)

r4] dl(x);

(2.5.2)

where r = jx0 xj.

In the limit as the evaluation point x0 approaches the contour C, as illustrated inFigure 2.5.1(a), these representations provide us with integral equations of the first

Page 52: Boundary Element Methods

Laplace’s equation in two dimensions 37

C

n

(a)

x 0

δx

y

n

−a b

(b)

x 0

Figure 2.5.1 (a) In the limit as the evaluation point x0 approaches the contour C,the integral representation for the gradient provides us with a “hypersingular”integral equation for the boundary distribution of the function f and its spatialderivatives. (b) Evaluation of the improper integrals over a section of a flatboundary extending between x = a and b.

or second kind for the boundary distribution of the function f and its derivatives.To derive the precise form of these integral equations, it is necessary to perform adetailed investigation of the asymptotic behavior of the integrals on the right-handsides of (2.5.1) and (2.5.2).

2.5.1 Local analysis

It is illuminating to begin by considering the behavior of the integrals in the limitas the evaluation point x0 approaches a locally flat boundary extending betweenx = a and b, as illustrated in Figure 2.5.1(b).

Writing x0 = (0; Æ), x = (x; 0), and n = (0; 1), we find that the contribution of thestraight segment to the integrals on the right-hand sides of (2.5.1) and (2.5.2) is

Ix(Æ) = 1

2

Z b

a

x

x2 + Æ2

@f

@y

x;y=0

dx

Z b

a

x

(x2 + Æ2)2f(x; y = 0) dx; (2.5.3)

and

Page 53: Boundary Element Methods

38 A Practical Guide to Boundary-Element Methods

Iy(Æ) =Æ

2

Z b

a

1

x2 + Æ2

@f

@y

x;y=0

dx

+1

2

Z b

a

[1

x2 + Æ2 2 Æ2

(x2 + Æ2)2] f(x; y = 0) dx: (2.5.4)

Naively putting Æ = 0 produces strongly singular and so-called “hypersingular” in-tegrals whose interpretation is unclear.

To properly assess the behavior of the right-hand side of (2.5.3) in the limit as Æ tendsto zero, we recast it into the form

Ix(Æ) = Ix1 fy(0) Ix2 + Ix3 f(0) Ix4 + fx(0) I

x5 + fxx(0) I

x6 ; (2.5.5)

where the subscripts x and y denote differentiation with respect to the correspondingvariable, followed by evaluation at y = 0. We have introduced the definite integrals

Ix1 1

2

Z b

a

x

x2 + Æ2[fy(x) fy(0)] dx;

Ix2 1

2

Z b

a

x

x2 + Æ2dx;

Ix3 Æ

Z b

a

x

(x2 + Æ2)2[f(x) f(0) fx(0) x

1

2fxx(0) x

2] dx;

Ix4 Æ

Z b

a

x

(x2 + Æ2)2dx;

Ix5 Æ

Z b

a

x2

(x2 + Æ2)2dx;

Ix6 Æ

2

Z b

a

x3

(x2 + Æ2)2dx: (2.5.6)

Using Taylor series expansions, we find that, as Æ tends to zero, the integrands ofIx1 and Ix3 behave in a regular fashion, and the corresponding integrals tend to finitevalues.

The second integral can be evaluated exactly, and is found to be

Ix2 =1

2

Z b=Æ

a=Æ

w dw

1 + w2=

1

4lnb2 + Æ2

a2 + Æ2; (2.5.7)

Page 54: Boundary Element Methods

Laplace’s equation in two dimensions 39

where w x=Æ. In the limit as Æ tends to zero, Ix2 tends to the principal-valueintegral

Ix2 (0) 1

2P

Z b

a

1

xdx 1

2

Z

a

dx

x+

Z b

dx

x

!!0

; (2.5.8)

where the right-hand side is evaluated in the limit as the positive exclusion length tends to zero.

The fourth integral can be calculated exactly, and is found to be

Ix4 =Æ

2

b2 a2

(a2 + Æ2)(b2 + Æ2): (2.5.9)

In the limit as Æ tends to zero, this integral vanishes.

The fifth integral can be calculated exactly, and is found to be

Ix5 =1

Z b=Æ

a=Æ

w2 dw

(1 + w2)2=

1

Z arctan(b=Æ)

arctan(a=Æ)

sin2 d; (2.5.10)

where w = tan . In the limit as Æ tend to zero, the lower and upper limits ofintegration with respect to on the right-hand side tend, respectively, to =2 and=2; accordingly, Ix5 tends to 1=2.

The sixth integral is given by

Ix6 = Æ Ix2 1

2Ix4 : (2.5.11)

In the limit as Æ tends to zero, this integral vanishes.

Combining these results, we find that, in the limit as Æ tends to zero,

Ix(Æ)! 1

2P

Z b

a

fy(x)

xdx+

1

2fx(0); (2.5.12)

where P denotes the principal value of the improper integral. The first term on theright-hand side of (2.5.12) expresses the “naive” evaluation of (2.5.3) for Æ = 0.

To examine the asymptotic behavior of the right-hand side of (2.5.4), we remove thesingularity of the kernel by writing

Iy() = Iy1 + fy(0) Iy2 + fyx(0) I

y3 + Iy4 + f(0) Iy5 + fx(0) I

y6

+Iy7 f(0) Iy8 fx(0) Iy9 fxx(0) I

y10 fxxx(0) I

y11; (2.5.13)

Page 55: Boundary Element Methods

40 A Practical Guide to Boundary-Element Methods

where

Iy1 Æ

2

Z b

a

1

x2 + Æ2[fy(x) fy(0) fyx(0) x] dx;

Iy2 Æ

2

Z b

a

dx

x2 + Æ2; Iy3

Æ

2

Z b

a

x

x2 + Æ2dx;

Iy4 1

2

Z b

a

1

x2 + Æ2[f(x) f(0) fx(0) x] dx;

Iy5 1

2

Z b

a

dx

x2 + Æ2; Iy6

1

2

Z b

a

x

x2 + Æ2dx;

Iy7 Æ2

Z b

a

1

(x2 + Æ2)2[f(x) f(0) fx(0) x

1

2fxx(0) x

2

1

6fxxx(0) x

3] dx;

Iy8 Æ2

Z b

a

dx

(x2 + Æ2)2; Iy9

Æ2

Z b

a

x

(x2 + Æ2)2dx;

Iy10 Æ2

2

Z b

a

x2

(x2 + Æ2)2dx; Iy11

Æ2

3

Z b

a

x3

(x2 + Æ2)2dx:

(2.5.14)

Using Taylor series expansions, we find that, as Æ tends to zero, Iy1 , Iy4 , and Iy7 tendto finite values, Iy2 tends to 1

2, Iy3 tends to zero, Iy5 diverges as 1

2Æ, and Iy6 tends

to a finite value associated with a principal-value integral. The integral Iy8 can beexpressed in the form

Iy8 = Iy5 +1

hsin 2

i=arctan(b=Æ)

=arctan(a=Æ): (2.5.15)

The first term on the right-hand side counterbalances the divergent contribution ofIy5 on the right-hand side of (2.5.13) Using Taylor series expansions, we find that, asÆ tends to zero, the second term on the right-hand side of (2.5.15) vanishes. The lastthree integrals Iy9 , Iy10, and Iy11 tend to zero.

Combining these results, we find that, in the limit as Æ tends to zero,

Iy(Æ)! 1

2fy(0) +

1

2P

Z b

a

f(x) f(0)

x2dx; (2.5.16)

where P denotes the principal-value integral.

Page 56: Boundary Element Methods

Laplace’s equation in two dimensions 41

2.5.2 Shrinking arcs

Another way of assessing the asymptotic behavior of the integral representation forthe gradient is to consider a point x0 that lies on a smooth contour C and exclude itfrom the control area enclosed by the contour by introducing a semi-circular arc ofradius , as illustrated in Figure 2.4.2(b).

On the circular arc, x x0 = cos , y y0 = sin , r jx x0j = ,nx(x) = cos , ny(x) = sin , and dl = d. The contribution of the arc to theright-hand side of (2.5.1) and (2.5.2) is

Ix = 1

2

Z

0

cos [ cos @f(x)

@x+ sin

@f(x)

@y] d 1

2

Z

0

f(x) cos d;

(2.5.17)and

Iy = 1

2

Z

0

sin [ cos @f(x)

@x+ sin

@f(x)

@y] d 1

2

Z

0

f(x) sin d;

(2.5.18)where the point x lies on the arc.

To compute the limiting value of the right-hand side of (2.5.17) as tends to zero,we expand the function f(x) and its derivatives in Taylor series about the evaluationpoint x0, retain the leading term in the expansion of the derivatives in the first inte-gral and the leading two terms in the expansion of f(x) in the second integral, andperform the integration in local polar angle to find

Ix ! 1

4fx(0)

1

2f(x0)

Z

0

cos d

1

2

Z

0

[ fx(0) cos + fy(0) sin ] cos d = 1

2fx(0): (2.5.19)

Working similarly with (2.5.18), we find

Iy ! 1

f(x0)

1

2fy(0): (2.5.20)

Substituting (2.5.19) and (2.5.20) into (2.5.1) and (2.5.2) with the left-hand sides setequal to zero, and rearranging, we find

1

2

@f(x0)

@x0= 1

2

Z PV

C

x x0

r2[ n(x) rf(x)] dl(x)

+1

2

Z PV

C

f(x) [nx(x)

r2 2 (x x0)

(x x0) nx(x) + (y y0) ny(x)

r4] dl(x);

(2.5.21)

Page 57: Boundary Element Methods

42 A Practical Guide to Boundary-Element Methods

and

1

2

@f(x0)

@y0= 1

2

Z PV

C

y y0

r2[ n(x) rf(x)] dl(x) + lim!0f

1

2

ZC

f(x) [ny(x)

r2 2 (y y0)

(x x0) nx(x) + (y y0) ny(x)

r4] dl(x)

1

f(x0) g: (2.5.22)

It is understood that the principal value of the quantity enclosed by the curly bracketson the right-hand side of (2.5.22) arises in the limit as tends to zero. These resultsare consistent with the more specific forms (2.5.12) and (2.5.16).

In the literature of boundary-element methods, the second term on the right-handside of (2.5.22), defined in terms of a limit, is called the Hadamard or “finite part” ofthe unregularized integral, and is denoted by

1

2

Z FP

C

f(x) [ny(x)

r2 2 (y y0)

(x x0) nx(x) + (y y0) ny(x)

r4] dl(x)

lim!0f1

2

ZC

f(x) [ny(x)

r2 2 (y y0)

(x x0) nx(x) + (y y0) ny(x)

r4]

dl(x) 1

f(x0) g: (2.5.23)

Extreme caution should be exercised in using this terminology and accepting theunderlying implication that the limit of a strongly singular integral automaticallyproduces the finite part of a hypersingular integral.

Expressions (2.5.21) and (2.5.22) have been derived with reference to a local coor-dinate system where the y axis is normal to the contour C at the point x0 where thegradient is evaluated. The results have shown that a hypersingular integral arises inthe representation of the normal derivative.

2.5.3 Hypersingular integral equations

Having confirmed the existence of the limit of the integral representation for the gra-dient (2.3.13) as the evaluation point x0 approaches the boundary C, provided thatsufficient regularity conditions are met so that the Taylor series expansions are de-fined, we may proceed to derive “hypersingular integral equations” for the boundarydistribution of the normal or tangential derivatives.

Taking, in particular, the limit as the point x0 approaches the contourC, and project-ing the resulting expression onto the normal vector, we find

Page 58: Boundary Element Methods

Laplace’s equation in two dimensions 43

1

2ni(x0)

@f(x0)

@x0i=

Z PV

C

ni(x0)@G(x0;x)

@x0i[n(x) rf(x)] dl(x)

+

Z FP

C

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dl(x); (2.5.24)

where the notationZ FP

C

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dl(x)

lim!0 fZC

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dl(x)

1

f(x0) g

(2.5.25)

defines the finite part of the integral. Equation (2.5.24) is a Fredholm integral equa-tion of the second kind for the boundary distribution of the normal derivative.

2.5.4 Regularization of hypersingular integral equations

In practice, it is beneficial to eliminate the strong singularities at the outset by regu-larizing the kernels with the help of integral identities.

Consider the integral representation (2.3.9) and its consequent vector identities (2.3.10)and (2.3.11). To prepare the ground for the regularization, we multiply (2.3.10) byf(x0) and obtain the identity

0 =

ZC

f(x0)@2G(x0;x)

@x0i@xjnj(x) dl(x): (2.5.26)

Furthermore, we project (2.3.11) onto the gradient @f(x0)=@x0k and set the con-stants bk equal to x0k to obtain the identity

@f(x0)

@x0i=

ZC

@G(x0;x)

@x0i

@f(x0)

@x0knk(x) dl(x)

+

ZC

@2G(x0;x)

@x0i@xjnj(x)

@f(x0)

@x0k(xk x0k ) dl(x): (2.5.27)

Page 59: Boundary Element Methods

44 A Practical Guide to Boundary-Element Methods

Next, we subtract (2.5.26) and (2.5.27) from (2.3.9) and find

0 = ZC

@G(x0;x)

@x0ifn(x) r[f(x) f(x0)]g dl(x)

+

ZC

[ f(x) f(x0)@f(x0)

@x0k(xk x0k ) ]

@2G(x0;x)

@x0i@xjnj(x) dl(x);

(2.5.28)

where summation over the repeated index j is implied on the right-hand side. Inthe limit as the evaluation point x0 approaches the boundary C, the integrands onthe right-hand side of (2.5.28) remain nonsingular, yielding a regularized integralequation.

Problem

P.2.5.1 Evaluation of definite integrals

Confirm the definite integrals (2.5.7), (2.5.9), and (2.5.11) given in the text.

2.6 Irrotational flow

Laplace’s equation arises in the computation of a particular class of fluid flows whosevelocity u = (ux; uy) may be expressed as the gradient of a scalar function , calledthe velocity potential, in the form

ux =@

@x; uy =

@

@y: (2.6.1)

In vector notation,

u = r: (2.6.2)

Conversely, if the velocity field derives from a scalar function as shown in (2.6.2),then the flow is potential or irrotational (e.g., [59]).

A mass balance over an infinitesimal volume of flow occupied by an incompressiblefluid shows that the velocity field is solenoidal,

r u @ux

@x+@uy

@y= 0: (2.6.3)

Page 60: Boundary Element Methods

Laplace’s equation in two dimensions 45

Expressing the velocity in terms of the potential using (2.6.1), we find

r r = r2 =@2

@x2+@2

@y2= 0; (2.6.4)

that is, the velocity potential satisfies Laplace’s equation. The boundary-integralrepresentation of the harmonic potential is a convenient starting point for deriving ahost of results concerning the properties and computation of irrotational flow (e.g.,[59]).

As a first step toward developing the boundary-integral representation, we select afinite control area that is enclosed by a collection of contours, denoted by C. Thisotherwise mundane step acquires special importance when we consider flow in aninfinite or partially bounded domain where the temptation to define an infinite controlarea may lead to an erroneous formulation.

2.6.1 Infinite flow past a body

Consider two-dimensional potential flow past a body in an infinite domain, in theabsence of circulatory motion around the body, as illustrated in Figure 2.6.1. Todevelop the boundary-integral representation, we split the harmonic potential into anincident component1 that prevails far from the body, and a disturbance componentD due to the body

= 1 + D : (2.6.5)

In the presence of circulatory motion, a third component must be added to the right-hand side of (2.6.5), as discussed in subdirectory body 2d of directory laplaceof the BEMLIB user guide (Chapter 10).

Because the body is assumed to be impenetrable, far from the body the disturbancepotential behaves like a point source dipole described by the gradient of the Green’sfunction,

D(x) ' d rBG(x;xB); (2.6.6)

where d is an a priori unknown constant vector, xB is a designated center of thebody, and the gradientrB operates with respect to xB . If the potential behaved likea point source, a non-zero amount of fluid would have to emanate from the body,which is not acceptable.

To derive the boundary-integral representation, we consider a control area that isbounded by the contour of the body CB and a large circular contour of radius Rcentered at x0, denoted by L. Applying the boundary-integral representation (2.3.3)for the disturbance potential, we find

Page 61: Boundary Element Methods

46 A Practical Guide to Boundary-Element Methods

x

xB

n

nR

CB

L

0

Figure 2.6.1 Potential flow past a two-dimensional body with vanishing circulationaround the body. To develop the boundary-integral representation, we define acontrol area that is enclosed by the contour of the bodyCB and a large circularcontour of radiusR enclosing the body centered at x0, denoted by L, and thenlet the radius of L expand to infinity.

D(x0) = ZCB;L

G(x0;x) [n(x) rD(x)] dl(x)

+

ZCB ;L

D(x) [n(x) rG(x0;x)] dl(x); (2.6.7)

where the unit normal vector n points into the control area enclosed by the union ofCB and L, as depicted in Figure 2.6.1.

Focusing our attention on the single-layer integral over the large contour L, we notethat G(x;x0) = 1

2lnR is constant and extract it from the integral. Mass con-

servation requires that the flow rate across any surface enclosing the body is zero,RL[n(x) rD(x)] dl(x) = 0. Combining these results, we find that the single-

layer potential over L vanishes for any location of the evaluation point. Turning tothe double-layer integral over L, we use the asymptotic behavior shown in (2.6.6)to find that, in the limit as R tends to infinity, the double-layer integral disappears.Discarding the integrals over L on the right-hand side of (2.6.7), we derive a repre-sentation for the disturbance potential in terms of potentials defined over the bodycontour.

Page 62: Boundary Element Methods

Laplace’s equation in two dimensions 47

2.7 Generalized single- and double-layer representations

The boundary-integral representation provides us with the solution of Laplace’s equa-tion at the point x0 in terms of boundary distributions of point sources and point-source dipoles whose strength density distributions are the boundary value and nor-mal derivative of the solution. For simplicity, it is sometimes desirable to eliminateone of the two potentials, thereby deriving generalized or indirect boundary-integralrepresentations with modified strength density distributions.

2.7.1 Interior fields

Consider first the solution of Laplace’s equation in the interior of a closed contourC, denoted by f Int, and introduce an exterior field fExt that shares with f Int theboundary values over C, that is, f Int = fExt over C. Applying the boundary-integral representation for the interior field and the reciprocal relation for the exteriorfield, both at a point x0 that lies inside C, we obtain

f Int(x0) = ZC

G(x;x0) [n(x) rf Int(x)] dl(x)

+

ZC

f Int(x) [n(x) rG(x;x0)] dl(x); (2.7.1)

and

0 = ZC

G(x;x0) [n(x) rfExt(x)] dl(x)

+

ZC

fExt(x) [n(x) rG(x;x0)] dl(x); (2.7.2)

where the unit normal vector n points toward the interior. Subtracting (2.7.2) from(2.7.1) and using the stipulated continuity condition for f across C, we obtain thesingle-layer representation

f Int(x0) = ISLP (x0; ); (2.7.3)

where

ISLP (x0; ) ZC

G(x;x0) (x) dl(x); (2.7.4)

is the single-layer potential, and

(x) n(x) r[f Int(x) fExt(x)]; (2.7.5)

Page 63: Boundary Element Methods

48 A Practical Guide to Boundary-Element Methods

is the strength density distribution. It is understood that the right-hand side of (2.7.5)is evaluated over C.

Alternatively, we introduce an exterior field fExt that shares with f Int the boundarydistribution of the normal derivative, n(x) rf Int(x) = n(x) rfExt(x) over C.Working in a similar fashion, we derive a representation of the interior field in termsof a double-layer potential,

f Int(x0) = IDLP (x0; q); (2.7.6)

where

IDLP (x0; q) ZC

q(x) [n(x) rG(x;x0)] dl(x); (2.7.7)

is the double-layer potential, and

q(x) f Int(x) fExt(x); (2.7.8)

is the strength density distribution. It is understood that the right-hand side of (2.7.8)is evaluated over C.

It is instructive to note that the boundary-integral formulation provides us with theidentity

f Int(x0) = ISLP (x0;@f Int

@n) + IDLP (x0; f

Int); (2.7.9)

which identifies the strength density of the double- and single-layer potential withthe boundary distribution of the harmonic function and its normal derivative.

2.7.2 Exterior fields

Similar representations can be derived for an exterior field, with one important ex-ception. A representation of an exterior field in terms of a double-layer potential ispossible only when the integrated flux is zero,Z

C

n(x) rfExt(x) dl(x) = 0: (2.7.10)

The physical reason is that the double-layer representation is unable to generate afield that behaves like a point source far from an interior boundary.

To overcome this limitation, the double-layer representation may be complementedwith the field due to a point source expressed by the Green’s function, where thesingular point is located inside the interior boundary (e.g., [59]). The resulting com-pound representation is known as the “completed double-layer potential.”

Page 64: Boundary Element Methods

Laplace’s equation in two dimensions 49

2.7.3 Gradient of the single-layer potential

Taking the gradient of the single-layer potential (2.7.4) written with the free-spaceGreen’s function, and noting that G(x;x0) = G(x x0) and thus r0G(x;x0) =rG(x x0), we find

r0ISLP (x0; ) =

ZC

rG(x0;x) (x) dl(x): (2.7.11)

To express the integral representation (2.7.11) in terms of the single- and double-layer potential, we decompose the gradient of the Green’s function into its normaland tangential constituents as

rG(x0;x) = n [ n rG(x0;x) ] + t [ t rG(x0;x) ]; (2.7.12)

where t is the unit tangent vector along C. Substituting this decomposition into theright-hand side of (2.7.11), defining

u n; (2.7.13)

and rearranging, we obtain

r0ISLP (x0; ) =

ZC

u(x) [ n(x) rG(x0;x) ] dl(x)

ZC

t(x)@G(x0;x)

@l(x) dl(x)

= ZC

u(x) [ n(x) rG(x0;x) ] dl(x)ZC

@

@l[t(x) G(x0;x) (x)] dl(x)

+

ZC

G(x0;x)@

@l[t(x) (x)] dl(x): (2.7.14)

The fundamental theorem of calculus requires that the penultimate integral in (2.7.14)is zero, yielding the identity

r0ISLP (x0; ) =

ZC

u(x) [ n(x) rG(x0;x) ] dl(x)

+

ZC

v(x) G(x0;x) dl(x); (2.7.15)

where

v @

@l(t ) = n+

@

@lt: (2.7.16)

The first expression on the right-hand side of (2.7.16) arises from the Frenet relation@t=@l = n, where is the curvature.

Page 65: Boundary Element Methods

50 A Practical Guide to Boundary-Element Methods

Equation (2.7.15) expresses the gradient of the single-layer potential as a linear com-bination of a single- and a double-layer potential with vectorial strength density dis-tributions in the form

r0ISLP (x0; ) = ISLP (x0;v) IDLP (x0;u): (2.7.17)

2.7.4 Gradient of the double-layer potential

To derive an analogous representation for the gradient of the double-layer potential,we work in a similar fashion and find

r0IDLP (x0; q) =

ZC

q(x) [n(x) rfrG(x0;x)] g dl(x): (2.7.18)

The ith component of the gradient may be expressed in the form

@IDLP (x0; q)

@x0i=

ZC

q(x) nj(x)@2G(x0;x)

@xj@xidl(x):

= ZC

@

@xi[ q(x)

@G(x0;x)

@xj] nj(x) dl(x)

+

ZC

@q

@xi

@G(x0;x)

@xjnj(x) dl(x): (2.7.19)

To simplify this representation, we extend the density q into the complement of thesolution space, use the divergence theorem to convert the penultimate integral to adomain integral, expand the integrand of the domain integral and invoke the defi-nition of the Green’s function to discard one term, and, finally, use the divergencetheorem to eliminate the domain integral in favor of a contour integral. Combiningthe surviving terms, and reverting to vector notation, we find

r0IDLP (x0; q) =

ZC

[n(x) rq(x)]rG(x0;x) dl(x)

=ez ZC

rG(x0;x)@q

@l(x) dl(x) = ez r0 I

SLP (x0;@q

@l); (2.7.20)

where ez t n is the unit vector perpendicular to the xy plane. Using (2.7.15)with @q=@l in place of , we now obtain the desired representation

r0IDLP (x0; q) =

ZC

u(x) [ n(x) rG(x0;x) ] dl(x)

ZC

v(x)G(x0;x) dl(x); (2.7.21)

involving single- and double-layer potentials, where

Page 66: Boundary Element Methods

Laplace’s equation in two dimensions 51

u ez n@q

@l=@q

@lt; (2.7.22)

and

v ez @

@l

t@q

@l

= ez [ n

@q

@l+ t

@2q

@l2] =

@q

@lt @2q

@l2n:

(2.7.23)

Equation (2.7.21) expresses the gradient of the single-layer potential as a linear com-bination of a single- and a double-layer potential with vectorial strength density dis-tributions given in (2.7.22) and (2.7.23), in the form

r0IDLP (x0; q) = ISLP (x0; v) + IDLP (x0; u): (2.7.24)

When the scalar density of the double-layer potential q is constant, the vector densitydistributions u and v are both zero and the gradient of the double-layer potentialvanishes. This result is consistent with the uniformity of the double-layer potentialin the interior and exterior of C, as required by identity (2.2.14).

Problem

P.2.7.1 Boundary integral representation of the gradient

(a) Follow the instructions in the text to derive the representation (2.7.20).

(b) If f(x) is a harmonic function, then the scalar components of its gradientrf(x)are also harmonic functions and admit the boundary-integral representation (2.7.9)with @f=@x or @f=@y in place of f . Thus,

rf Int(x0) = ISLP (x0;@rf Int@n

) + IDLP (x0;rf Int): (1)

On the other hand, taking the gradient of (2.7.9), we find

r0fInt(x0) = r0I

SLP (x0;@f Int

@n) +r0I

DLP (x0; fInt): (2)

Show that when (2.7.17) and (2.7.24) are substituted into equation (2), and the single-and double-layer potentials are consolidated, the result is equation (1).

Page 67: Boundary Element Methods
Page 68: Boundary Element Methods

Chapter 3

Boundary-element methods for Laplace’sequation in two dimensions

The boundary-element method derives its name from the practice of describing theboundary of a solution domain with a collection of elementary geometrical unitscalled boundary elements. In the case of Laplace’s equation in two dimensions, theboundary elements are line segments with straight or curved shapes described inanalytical form by methods of function interpolation and approximation in terms ofelement nodes.

Boundary discretization is the first step in the implementation of the boundary-element method. In the second step, we describe the boundary distribution of thespecified or unknown functions involved in the integral representation with local in-terpolating or approximating polynomials. In the third step, we compute the polyno-mial coefficients by requiring an appropriate number of conditions originating fromthe integral equations.

In this chapter, we outline the implementation of these fundamental steps with refer-ence to Laplace’s equation in two dimensions. Other types of differential equationsmay be solved by straightforward alterations of the basic procedure.

3.1 Boundary element discretization

A variety of boundary elements are available in two dimensions. Three popularchoices are linear elements with straight shapes, circular arcs, and elements of cubicsplines.

3.1.1 Straight elements

Figure 3.1.1 illustrates the discretization of a boundary into a collection ofN straightelements defined by the element end-points or nodes. The element labels, printed inbold, increase in the counterclockwise direction around the boundary. Since the sec-

53

Page 69: Boundary Element Methods

54 A Practical Guide to Boundary-Element Methods

N

y

2

1N+1

3

4

i+1i

x

13

iN

2

n

Figure 3.1.1 Discretization of a closed line, representing a two-dimensional bound-ary, into a collection of straight elements whose union forms a polygon.

ond end-point of an element is the first end-point of the next element, the collectionof the N elements is defined by N + 1 distinct (unique) nodes. If the boundary isclosed, as depicted in Figure 3.1.1, the first and last global nodes coincide, and thecollection of the N elements is defined by N distinct nodes.

To describe the ith element, we introduce the coordinates of the element end-points

(xEi;1; yEi;1); (xEi;2; y

Ei;2); (3.1.1)

and a dimensionless parameter ranging in the interval [1; 1]. The coordinates ofa point on the element are given by

x() =1

2(xEi;2 + xEi;1) +

1

2(xEi;2 xEi;1) ;

(3.1.2)

y() =1

2(yEi;2 + yEi;1) +

1

2(yEi;2 yEi;1) :

As increases from -1 to 1, the point (x; y) moves from the first element end-pointto the second element end-point.

Next, we introduce the array of global or unique nodes, (xGi ; yGi ). Recalling that

the second end-point of the ith element is the first end-point of the next element, wewrite

(xEi;1; yEi;1) = (xGi ; y

Gi ); (xEi;2; y

Ei;2) = (xGi+1; y

Gi+1): (3.1.3)

Making substitutions into (3.1.2), we derive parametric representations in terms ofthe global nodes.

Page 70: Boundary Element Methods

Boundary-element methods in two dimensions 55

θ

N+11

2 3

i

i+1

N

y

x

n

xc

N

12

i

Figure 3.1.2 Discretization of a closed line, representing a two-dimensional bound-ary, into a collection of circular arcs drawn with dashed lines.

3.1.2 Circular arcs

Figure 3.1.2 illustrates the discretization of a boundary into a collection ofN circulararcs. The element labels, printed in bold, increase in the counter-clockwise directionaround the boundary.

The coordinates of the first and second end-point of the ith arc are shown in (3.1.1).Additional geometrical properties of the arc include the following:

The coordinates of the arc center (xc;i; yc;i).

The arc radiusRi.

The polar angles at the first and second end-points denoted, respectively, by1;i and 2;i.

If the arc turns in the counterclockwise direction, as shown in Figure 3.1.2, 2;i >1;i; if the arc turns in the clockwise direction, 2;i < 1;i.

A point on the ith arc is described in parametric form in terms of the polar angle by the equations

x() = xc;i +Ri cos ; y() = yc;i +Ri sin : (3.1.4)

If the arc turns in the counterclockwise direction, 1;i < < 2;i; if the arc turns inthe clockwise direction, 1;i < < 2;i. By definition then,

x1;i = xc;i +Ri cos 1;i; y1;i = yc;i +Ri sin 1;i;

x2;i = xc;i +Ri cos 2;i; y2;i = yc;i +Ri sin 2;i:(3.1.5)

Page 71: Boundary Element Methods

56 A Practical Guide to Boundary-Element Methods

To standardize the parametric representation, we introduce the dimensionless param-eter ranging in the interval [1; 1], and write

() =1

2(2;i + 1;i) +

1

2(2;i 1;i) : (3.1.6)

As increases from -1 to 1, the angle changes from i;1 to i;2. Correspondingly,the point [x(); y()] moves from the first element end-point to the second elementend-point.

Substituting the right-hand side of (3.1.6) in place of in (3.1.4), we derive a para-metric representation in terms of , [x(); y()].

3.1.3 Cubic splines

The straight-segment and circular-arc discretizations provide us with approximaterepresentations with discontinuous slope and curvature at the element end-points. Toobtain a globally smooth representation, we introduce boundary elements defined bycubic-splines interpolation.

To implement this discretization, we describe the boundary with N +1 nodes, intro-duce a parameter s that varies monotonically along the boundary, and assign valuesof s to the nodes. One sensible choice for the value of s assigned to the ith node,denoted by si, is the polygonal arc length, that is, the current length of the polygonalline connecting sequential nodes, measured from the first node.

In the cubic-splines representation, the ith boundary element subtended between theith and i+ 1 node is described in parametric form by the cubic polynomials

x(s) = Pi(s) = ai (s si)3 + bi (s si)

2 + ci (s si) + xGi ;

y(s) = P 0i (s) = a0i (s si)3 + b0i (s si)

2 + c0i (s si) + yGi ;(3.1.7)

where si s si+1. By construction, the parametric representations shown in(3.1.7) satisfy the interpolation conditions

x(si) = Pi(si) = xGi ; y(si) = P 0i (si) = yGi : (3.1.8)

The 3N coefficients ai; bi, and ci, where i = 1; : : : ; N , and the corresponding 3Ncoefficients a0i; b

0

i, and c0i, will be computed by requiring interpolation and smooth-ness conditions, as follows.

Consider the parametric representation for the x coordinate shown in the first equa-tion of (3.1.7).

First, we require the interpolation condition

Pi(si+1) = xGi+1 = xGi + ai h3i + bi h

2i + ci hi; (3.1.9)

Page 72: Boundary Element Methods

Boundary-element methods in two dimensions 57

for i = 1; : : : ; N , where

hi si+1 si: (3.1.10)

Second, we require continuity of slope at the interior nodes,

dPi

ds(si+1) =

dPi+1

ds(si+1); (3.1.11)

for i = 1; : : : ; N 1. Substituting the first expression of (3.1.7) into (3.1.11), weobtain

3 ai h2i + 2 bi hi + ci = ci+1; (3.1.12)

for i = 1; : : : ; N 1.

Third, we require continuity of curvature at the interior nodes,

d2Pi

ds2(si+1) =

d2Pi+1

ds2(si+1); (3.1.13)

for i = 1; : : : ; N 1. Substituting the first expression of (3.1.7) into (3.1.13), weobtain

6 ai hi + 2 bi = 2 bi+1; (3.1.14)

for i = 1; : : : ; N , subject to the definition

bN+1 1

2

d2PN

ds2(sN+1): (3.1.15)

In summary, equations (3.1.9), (3.1.12), and (3.1.14) provide us with 3N 1 con-ditions involving 3N + 1 unknown coefficients including bN+1, and ai; bi, ci, fori = 1; : : : ; N , To balance the number of unknowns with the number of equations,we must impose two additional conditions by exercising common sense or geomet-rical intuition, as will be discussed later in this section.

To compute the unknown coefficients, it is expedient to proceed in three stages. First,we rearrange (3.1.14) into

ai =bi+1 bi

3 hi; (3.1.16)

for i = 1; : : : ; N . Second, we substitute this expression into (3.1.9) and solve for cito obtain

ci =xGi+1 xGi

hi 1

3hi (bi+1 + 2 bi); (3.1.17)

Page 73: Boundary Element Methods

58 A Practical Guide to Boundary-Element Methods

for i = 1; : : : ; N . Third, we substitute (3.1.17) and (3.1.16) into (3.1.12) and rear-range to derive a tridiagonal system of N 1 equations involving the N + 1 coeffi-cients bi, i = 1; : : : ; N + 1,

hi

3bi + 2

hi + hi+1

3bi+1 +

hi+1

3bi+2 =

xGi+2 xGi+1

hi+1

xGi+1 xGihi

;

(3.1.18)

for i = 1; : : : ; N 1. To compute these unknown coefficients, we require twoadditional conditions.

Periodic cubic splines

When the boundary is closed or periodic, we impose periodicity conditions for thefirst and second derivative at the first and last nodes expressed, respectively, by theequations

3 aN h2N + 2 bN hN + cN = c1; b1 = bN+1: (3.1.19)

Substituting (3.1.16) and (3.1.17) into the first of (3.1.19) to eliminate aN , cN , andc1, rearranging the resulting expression, and using the second of (3.1.19), we find

2

3(h1 + hN ) b1 +

1

3h1 b2 +

1

3hN bN =

xG2 xG1h1

xGN+1 xGNhN

:

(3.1.20)

Applying (3.1.18) for i = 1; : : : ; N1, and using the second of (3.1.19) to eliminatebN+1, we derive the linear system

266666664

2(h1+h2)3

h23

0 : : : : : : 0h23

2(h2+h3)

3h33

0 : : : 0: : : : : : : : : : : : : : : : : :

0 : : :hN3

3

2(hN3+hN2)

3

hN2

30

0 : : : 0 hN2

3

2(hN2+hN1)

3

hN1

3

0 0 : : : 0 hN1

3

2(hN1+hN )

3

377777775

26666666664

b2b3b4...

bN2bN1bN

37777777775

=

2666666666664

xG3 xG

2

h2 xG2 x

G

1

h1 h1

3b1

xG4 xG

3

h3 xG3 x

G

2

h2...xGN1x

G

N2

hN2 xG

N2xG

N3

hN3

xGNxG

N1

hN1 xG

N1xG

N2

hN2

xGN+1x

G

N

hN xG

NxG

N1

hN1 hN

3b1

3777777777775: (3.1.21)

Page 74: Boundary Element Methods

Boundary-element methods in two dimensions 59

If the coefficient b1 on the right-hand side were known, we would be able to solvethe tridiagonal system (3.1.21) using Thomas’ algorithm discussed in Section 3.1.5,and thereby complete the cubic splines parametrization.

The proper value of b1 ensures that equation (3.1.20) is also satisfied. To computethis value, we note that the values of bi, i = 2; : : : ; N , computed by solving system(3.1.21) are linear functions of the value b1, and so is the left-hand side of (3.1.20).This observation allows us to express (3.1.20) in the linear form

F () b1 + = 0; (3.1.22)

where and are two a priori unknown constants. The desired root is given by

b1 = = F (0)

F (1) F (0): (3.1.23)

The solution algorithm involves five steps:

1. Set b1 = 0 on the right-hand side of (3.1.21), solve the linear system usingThomas’ algorithm described in Section 3.1.5, and evaluate the difference be-tween the left- and right-hand sides of (3.1.20); this is the value F (0).

2. Set b1 = 1 on the right-hand side of (3.1.21), solve the linear system usingThomas’ algorithm, and evaluate the difference between the left- and right-hand sides of (3.1.20); this is the value F (1).

3. Compute the proper value of b1 from (3.1.23).

4. Compute the right-hand side of (3.1.21) using the proper value of b1, and solvethe linear system to obtain the rest of the coefficients bi.

5. Compute ai and ci using equations (3.1.16) and (3.1.17).

A similar calculation can be done for the y coordinates of the nodes, and the two setsof cubic splines coefficients for the x and y coordinates may be used to construct theparametric representation according to (3.1.7). Figure 3.1.3 shows the cubic splinesrepresentation of a closed line defined by five points.

Natural cubic splines

When the interpolated line is open, it is reasonable to demand that the curvaturevanish at the end-points, and thus obtain a natural cubic spline resembling an elasticplate that is deflected under the action of an edge force.

To compute the natural spline, we apply (3.1.18) for i = 1; : : : ; N 1, and setb1 = 0 and bN+1 = 0 to derive a system of N 1 equations for the N 1 un-knowns b2; : : : ; bN . The system may be solved efficiently using Thomas’ algorithmdescribed in Section 3.1.5.

Page 75: Boundary Element Methods

60 A Practical Guide to Boundary-Element Methods

Figure 3.1.3 Cubic splines representation of a closed line defined by five points.

The solid line in Figure 3.1.4 is the natural cubic splines representation of an openline defined by five points.

Clamped-end cubic splines

An alternative to the natural-end conditions are the clamped-end conditions that spec-ify the slope at the first and last node, denoted by 1 and N+1. Using the cubicsplines parametrization along with (3.1.16) and (3.1.17), we find

c1 =xG2 xG1

h1 1

3h1 (b2 + 2 b1) = 1;

3 aN h2N + 2 bN hN + cN =xGN+1 xGN

hN+

1

3hN (bN + 2 bN+1) = N+1:

(3.1.24)

Rearranging, we obtain

b1 = 1

2b2 +

3

2 h1(xG2 xG1

h1 1);

(3.1.25)

bN+1 = 1

2bN 3

2 hN(xGN+1 xGN

hN N+1):

Applying (3.1.18) for i = 1; : : : ; N1, and using (3.1.25) to eliminate b1 and bN+1,we derive a system of N 1 equations for the N 1 unknowns b2; : : : ; bN . Thesolution can be found efficiently using Thomas’ algorithm described in Section 3.1.5.

The dashed line in Figure 3.1.4 is the cubic splines representation of an open linedefined by five points, computed with clamped-end conditions of zero slope.

Page 76: Boundary Element Methods

Boundary-element methods in two dimensions 61

Figure 3.1.4 Cubic splines representation of an open line defined by five points.The solid line represents the natural splines, and the dashed line represents thesplines computed with clamped-end conditions of zero slope.

3.1.4 BEMLIB discretization

Subdirectory grid 2d of directory grids of BEMLIB contains a main programand assisting subroutines that perform the boundary-element discretization of a lineconsisting of a collection of straight and circular segments into a graded mesh of el-ements with corresponding shapes, as illustrated in Figure grid 2d.1 of the BEMLIBdirectory guide (Chapter 9).

Subdirectory 06 interp diff of directory num meth of BEMLIB contains themain program splines cb and assisting subroutines that perform the boundary-element discretization of a closed or open line into cubic splines.

3.1.5 Thomas’ algorithm

The tridiagonal structure of the matrixA displayed on the right-hand side of equation(3.1.21) allows us to compute the solution with minimal computational effort usingThomas’ algorithm.

Consider the K K system of linear equations

T x = s (3.1.26)

for the unknown vector x, where T is the tridiagonal matrix

Page 77: Boundary Element Methods

62 A Practical Guide to Boundary-Element Methods

T =

26666664

a1 b1 0 0 0 : : : 0 0 0c2 a2 b2 0 0 : : : 0 0 00 c3 a3 b3 0 : : : 0 0 0: : : : : : : : : : : : : : : : : : : : : : : : : : :0 0 0 0 0 : : : cK1 aK1 bK10 0 0 0 0 : : : 0 cK aK

37777775; (3.1.27)

and s is a known right-hand side. Thomas’ algorithm proceeds in two stages, asfollows.

At the first stage, the tridiagonal system (3.1.26) is transformed to the bidiagonalsystem T

0 x = y involving the bidiagonal coefficient matrix

T0 =

26666664

1 d1 0 0 0 : : : 0 0 00 1 d2 0 0 : : : 0 0 00 0 1 d3 0 : : : 0 0 0: : : : : : : : : : : : : : : : : : : : : : : : : : :0 0 0 0 0 : : : 0 1 dK10 0 0 0 0 : : : 0 0 1

37777775: (3.1.28)

At the second stage, the bidiagonal system is solved by backward substitution, thatis, by solving the last equation for the last unknown xK , and then moving upward tocompute the rest of the unknowns in a sequential fashion. The combined algorithmis as follows:

Reduction to bidiagonal

d1y1

=

1

a1

b1s1

Do i = 1;K 1

di+1

yi+1

=

1

ai+1 ci+1di

bi+1

si+1 ci+1yi

End Do

(3.1.29)

Backward substitution

xK = yK

Do i = K 1; 1 (step = 1)xi = yi di xi+1

End Do

Page 78: Boundary Element Methods

Boundary-element methods in two dimensions 63

Thomas’ algorithm is a special implementation of the inclusive method of Gausselimination discussed in Appendix A, which is applicable to systems with coeffi-cient matrices of arbitrary structure. Computational savings arise by recognizingand bypassing idle operations such as the addition of zero and the multiplication byunity.

Problems

P.3.1.1 Boundary-element discretization

(a) Use program grid 2d in directory grids of BEMLIB to discretize a closedcontour of your choice, and display your results.

(b) Use program splines cb in subdirectory 06 interp diff of directorynum meth of BEMLIB to discretize a closed contour of your choice, and displayyour results.

P.3.1.2 Thomas’ algorithm

Subdirectory 03 lin eq of directory num meth of BEMLIB includes subroutinethomas that solves a tridiagonal system of equations by Thomas’ algorithm dis-cussed in the text. Use the program to solve a system of your choice, and verify aposteriori that the solution satisfies all equations.

3.2 Discretization of the integral representation

Consider the boundary-integral representations (2.3.3) and (2.4.2) applicable, respec-tively, for a point x0 located inside or at the boundary of a selected control area,repeated here for convenience:

f(x0) = ZC

G(x;x0) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rG(x;x0)] dl(x); (3.2.1)

and

f(x0) = 2ZC

G(x;x0) [n(x) rf(x)] dl(x)

+2

Z PV

C

f(x) [n(x) rG(x;x0)] dl(x): (3.2.2)

Page 79: Boundary Element Methods

64 A Practical Guide to Boundary-Element Methods

The unit normal vector n points into the control area enclosed by the contour C.

Approximating the integrals over C with sums of integrals over the boundary ele-ments Ei, i = 1; : : : ; N , we obtain the discrete representation

f(x0) = NXi=1

ZEi

G(x;x0) [n(x) rf(x)] dl(x)

+NXi=1

ZEi

f(x) [n(x) rG(x;x0)] dl(x); (3.2.3)

and the discretized integral equation

f(x0) = 2NXi=1

ZEi

G(x;x0) [n(x) rf(x)] dl(x)

+2

NXi=1

Z PV

Ei

f(x) [n(x) rG(x;x0)] dl(x): (3.2.4)

Equation (3.2.4) applies at a point x0 that lies over one of the boundary elementsEi.

In addition to the geometrical boundary-element approximation, we now introduceapproximations for the boundary distribution of the function f(x) and its normalderivative n(x) rf(x).

3.2.1 Uniform elements

In the simplest approximation, we replace the boundary distribution of f(x) and itsnormal derivative n(x) rf(x) with constant functions over the individual boundaryelements, denoted respectively by fi and (@f=@n)i, where i = 1; : : : ; N .

Extracting these constant values from the single- and double-layer potential on theright-hand sides of (3.2.3) and (3.2.4), we find

f(x0) = NXi=1

i(x0) (@f

@n)i +

NXi=1

i(x0) fi; (3.2.5)

and

f(x0) = 2NXi=1

i(x0) (@f

@n)i + 2

NXi=1

PVi (x0) fi: (3.2.6)

We have introduced the influence coefficients

i(x0) ZEi

G(x;x0) dl(x); (3.2.7)

Page 80: Boundary Element Methods

Boundary-element methods in two dimensions 65

and

i(x0) ZEi

n(x) rG(x;x0) dl(x); (3.2.8)

representing uniform distributions of point sources and point-source dipoles orientednormal to the boundary elements. This interpretation explains the somewhat un-fortunate nomenclature “uniform elements” or “constant elements” favored in theboundary-element literature.

The notation PVi (x0) on the right-hand side of (3.2.6) signifies that, when the pointx0 lies on the ith boundary element, the principal value of the integral on the right-hand side of (3.2.8) is implied.

If the element values fi and (@f=@n)i were available, we would be able to computethe field value f(x0) in terms of the influence coefficients using the discrete rep-resentation (3.2.5). Moreover, we would be able to reproduce the boundary valuesusing the companion discrete representation (3.2.6).

To compute the influence coefficients accurately, it is necessary to classify the ele-ments into two categories according to whether or not singularities in the integrandsarise. In the remainder of this section, we discuss the computation of the influencecoefficients in each category. In Section 3.3, we discuss methods of computing theelement values fi and (@f=@n)i by solving systems of linear algebraic equations.

3.2.2 Non-singular elements

Assume first that the evaluation point x0 lies off the ith element. In that case, theintegrands of the constant-element influence coefficients shown in (3.2.7) and (3.2.8)are non-singular, and the integrals may be computed accurately using standard ana-lytical or numerical methods.

Straight elements

Consider the evaluation of the influence coefficients over the ith straight elementdescribed in parametric form by the equations in (3.1.2), as illustrated in Figure3.2.1(a). A straightforward computation shows that the differential arc length isgiven by

dl pdx2 + dy2 = h d; (3.2.9)

where 1 1, and

h 1

2

q(xEi;2 xEi;1)

2 + (yEi;2 yEi;1)2 (3.2.10)

is the metric coefficient associated with the parameter . The unit normal vector isconstant, denoted by n(i).

Page 81: Boundary Element Methods

66 A Practical Guide to Boundary-Element Methods

o

x

no

lo

i+1l

il

i+1

i

i

x

x

x

n

i+1

ll

(b)(a)

Figure 3.2.1 Evaluation of the influence coefficients over (a) a non-singular, and (b)a singular straight element. The unit normal vector points into the solutiondomain.

Accordingly, the influence coefficients are given by

i(x0) = h

Z 1

1

G[x(); y(); x0; y0] d; (3.2.11)

and

i(x0) = h fn(i)xZ 1

1

@G

@x[x(); y(); x0; y0] d

+n(i)y

Z 1

1

@G

@y[x(); y(); x0; y0] d g: (3.2.12)

Gauss-Legendre quadrature

The integrals on the right-hand sides of (3.2.11) and (3.2.12) may be computed ac-curately by the Gauss-Legendre quadrature. In this method, the integral of a non-singular function f() over the interval [1; 1] is approximated with a weighted sumof the values of the integrand at selected locations, in the form

Z 1

1

f() d 'NQXk=1

f(k) wk; (3.2.13)

where:

NQ is a specified number of quadrature base points.

The kth base point k is the kth root of the NQ-degree Legendre polynomialLNQ

(), taking values in the interval (1; 1).

Page 82: Boundary Element Methods

Boundary-element methods in two dimensions 67

wk is the integration weight corresponding to the kth base point. The sum ofthe integration weights is equal to 2 for any value of NQ, so that, when f is aconstant function, quadrature (3.2.13) produces the exact answer.

For example, when NQ = 1, 1 = 0 is the root of the first-degree Legendre polyno-mial, L1() = . The corresponding integration weight is w1 = 2.

Applying the Gauss-Legendre quadrature to compute the single-layer influence co-efficient defined in (3.2.11), we obtain the approximation

i(x0) ' h

NQXk=1

G[x(k); y(k); x0; y0] wk; (3.2.14)

Mathematical handbooks and decent texts on numerical methods provide us withtables of the pairs (k; wk) parametrized by the number of quadrature points NQ

(e.g., [60]). Subroutine gauss leg in subdirectory 07 integration of direc-tory mum meth of BEMLIB contains tabulated pairs for NQ = 1, 2, 3, 4, 5, 6, 8,12, and 20. Program integral in the same subdirectory evaluates an integral byseveral methods including the Gauss-Legendre quadrature.

Circular arcs

Consider next the evaluation of the influence coefficients over the ith circular arcdescribed in parametric form in terms of the polar angle by the equations in (3.1.4),as illustrated in Figure 3.2.2(a). The differential arc length is given by

dl = Ri d; (3.2.15)

where the plus sign applies when the arc turns in the counterclockwise direction, asshown in Figure 3.2.2(a), and the minus sign otherwise. Correspondingly, the unitnormal vector is given by

nx = cos ; ny = sin : (3.2.16)

When the arc turns in the counterclockwise direction, the normal vector points to-ward the arc center.

Substituting (3.1.4), (3.2.15), and (3.2.16) into the right-hand sides of (3.2.7) and(3.2.8), we obtain

i(x0) = Ri

Z 2;i

1;i

G[x(); y(); x0 ; y0] d; (3.2.17)

and

Page 83: Boundary Element Methods

68 A Practical Guide to Boundary-Element Methods

θ

x0

x

nRi

l

i

i+1

θ

x

nRi

l

x

θ 0

i+1

i

(b)(a)

y

x

0

Figure 3.2.2 Evaluation of the influence coefficients over (a) a non-singular, and (b)a singular arc.

i(x0) = Ri

Z 2;i

1;i

f@G@x

[x(); y(); x0; y0] cos

+@G

@y[x(); y(); x0; y0] sin g d; (3.2.18)

where i;1 and i;2 are the angles corresponding to the first and second end-point.

Next, we express in terms of using the parametrization (3.1.6), and then evaluatethe integrals by the Gauss-Legendre quadrature.

For example, to compute the single-layer influence coefficient, we write

i(x0) = Ri2;i 1;i

2

Z 1

1

G[x(); y(); x0; y0] d

' Rij2;i 1;ij

2

NQXk=1

G[x(k); y(k); x0; y0] wk: (3.2.19)

Cubic splines

The single- and double-layer influence coefficients over cubic-splines elements arecomputed in a similar fashion. Using the parametric forms displayed in (3.1.7), wefind that the differential arc length over the ith boundary element is given by

dl pdx2 + dy2 = hi(s) ds; (3.2.20)

Page 84: Boundary Element Methods

Boundary-element methods in two dimensions 69

where si s si+1, and

hi(s) ([3 ai(s si)2 + 2 bi(s si) + ci]

2

+[3 a0i(s si)2 + 2 b0i(s si) + c0i]

2)1=2 (3.2.21)

is a position-dependent metric coefficient for the arc length. When the parameters increases in the counterclockwise direction around the boundary, the Cartesiancomponents of the unit normal vector are given by

nx(s) = dydl

= 1

hi(s)[3 a0i(s si)

2 + 2 b0i(s si) + c0i];

(3.2.22)

ny(s) =dx

dl=

1

hi(s)[3 ai(s si)

2 + 2 bi(s si) + ci]:

Substituting (3.1.7), (3.2.20), and (3.2.22) into the right-hand sides of (3.2.7) and(3.2.8), we derive expressions for the influence coefficients in terms of integrals withrespect to the parameter s. Finally, we introduce the familiar parametrization

s =1

2(si + si+1) +

1

2(si+1 si) ; (3.2.23)

where 1 1, and compute the integrals by the Gauss-Legendre quadrature.

3.2.3 Singular elements

Consider now the computation of the influence coefficients when the evaluation pointx0 lies on the ith boundary element. In this case, as the integration point x ap-proaches the evaluation point x0, the integrands of the influence coefficients (3.2.7)and (3.2.8) exhibit, respectively, a logarithmic and an apparent higher-order singu-larity, and the boundary elements are classified as singular.

To simplify the treatment the singularities, we subtract the free-space kernels at theoutset by recasting expressions (3.2.7) and (3.2.8) into the forms

i(x0) ZEi

G(x;x0) +

1

2ln jx x0j

dl(x) + FSi (x0); (3.2.24)

and

PVi (x0) ZEi

n(x) rG(x;x0) +

1

2

n(x) (x x0)

jx x0j2dl(x)

+PVFSi (x0); (3.2.25)

Page 85: Boundary Element Methods

70 A Practical Guide to Boundary-Element Methods

where

FSi (x0) 1

2

ZEi

ln jx x0j dl(x); (3.2.26)

and

PVFSi (x0) 1

2

Z PV

Ei

n(x) (x x0)

jx x0j2dl(x): (3.2.27)

The superscript FS denotes the free-space forms, and PV denotes the principalvalue of the double-layer integral. The first integrals on the right-hand sides of(3.2.24) and (3.2.25) are non-singular and may be computed with high accuracy us-ing the Gauss-Legendre quadrature. The problem has been reduced to evaluating theseemingly improper free-space forms (3.2.26) and (3.2.27).

Consider the integrand of the double-layer potential on the right-hand side of (3.2.27).As the integration point x approaches the evaluation point x0, the normal vector ntends to become orthogonal to the nearly tangential vectorial distance (xx0). Con-sequently, the numerator of the fraction of the integrand behaves quadratically withrespect to the scalar distance jx x0j, and a singularity does not appear.

The absence of a singularity explains why the computation of the principal valueis so much more convenient than the computation of the limit of the double-layerpotential as the evaluation point approaches the boundary.

Straight elements

Consider the evaluation of the influence coefficients over the ith straight elementdescribed in parametric form by the equations in (3.1.2), where the evaluation pointx0 lies on the segment at arc length position l0, as illustrated in Figure 3.2.1(b).

Writing jx x0j = jl l0j and carrying out the integration for the single-layerpotential, we obtain

i(x0) = 1

2

Z li+1

li

ln jl l0j dl

= 1

2[ jli+1 l0j (ln jli+1 l0j 1) + jli l0j (ln jli l0j 1) ]: (3.2.28)

Because the normal vector n is orthogonal to the tangential vector (x x0), thenumerator of the fraction inside the integral of the double-layer influence coefficientvanishes, and the influence coefficient of the double-layer potential is identicallyequal to zero, PVFSi (x0) = 0.

Page 86: Boundary Element Methods

Boundary-element methods in two dimensions 71

Circular arcs

Consider next the evaluation of the influence coefficients over the ith circular arcdescribed in parametric form in terms of the polar angle by the equations in (3.1.4).The evaluation point x0 lies on the arc at a location corresponding to the polar angle0, which is intermediate between the end-values i and i+1, as illustrated in Figure3.2.2(b).

Using expressions (3.2.14) and (3.2.15) and observing that

jx x0j = 2Ri sinj 0j

2; (3.2.29)

we find

i(x0) "Ri

2

Z i+1

i

ln[2Ri sinj 0j

2] d

#

= "Ri

2

Z i+1

i

ln2 sin j0j

2

j 0jd 1

2

Z i+1

i

ln(Rij 0j) d(Ri )

#;

(3.2.30)

and

PVFSi (x0) 1

8

Z i+1

i

cos (cos cos 0) + sin (sin sin 0)

sin2 j0j2

d

=1

8

Z i+1

i

1 cos( 0)

sin2 j0j2

d =1

4(i+1 i): (3.2.31)

The first integral in the second line of (3.2.30) is non-singular, and may be computedwith high accuracy using the Gauss-Legendre quadrature. The second integral inthe second line of (3.2.30) may be computed by elementary methods, as shown in(3.2.28).

Cubic-splines elements

Because the integrand of the principal-value, double-layer integral is non-singular,the corresponding influence coefficient may be computed using a standard numericalmethod based, for example, on the Gauss-Legendre quadrature.

To compute the influence coefficient associated with the single-layer potential, weuse the parametric forms shown in (3.1.7) and expression (3.2.20) for the differentialarc length. Assuming that the position of the evaluation point corresponds to theparameter value s0, which is intermediate between the end-point values si and si+1,

Page 87: Boundary Element Methods

72 A Practical Guide to Boundary-Element Methods

of the ith boundary element,

i(x0) 1

2

ZEi

ln jx(s) x(s0)j dl(s)

= 1

2[

Z si+1

si

lnjx(s) x(s0)jjs s0j

hi(s) ds+

Z si+1

si

ln js s0j hi(s) ds];(3.2.32)

where hi(s) is the metric coefficient defined in (3.2.21).

The integrand of the first integral in the last expression of (3.2.32) is non-singular,and the corresponding integral may be computed accurately by the Gauss-Legendrequadrature. The integrand of the second integral exhibits a logarithmic singularitythat may be integrated by two methods.

In the first method, the singular behavior is removed by writingZ si+1

si

ln js s0j hi(s) ds

=

Z si+1

si

ln js s0j [hi(s) hi(s0)] ds+ hi(s0)

Z si+1

si

ln js s0j ds: (3.2.33)

The first integral on the right-hand side may be computed by a standard numericalmethod, such as the Gauss-Legendre quadrature. The second integral may be com-puted by elementary analytical methods.

In a preferred method, the improper integral is broken up into two parts,Z si+1

si

ln js s0j hi(s) ds

=

Z s0

si

ln js s0j hi(s) ds+Z si+1

s0

ln js s0j hi(s) ds

=

Z s0si

0

ln() hi(s0 ) d +

Z si+1s0

0

ln() hi(s0 + ) d; (3.2.34)

where is an auxiliary integration variable.

Concentrating on the first integral in the last expression of (3.2.34), we write

Z s0si

0

ln() hi(s0 ) d = s1Z 1

0

ln(s1) hi(s0 s1) d

= s1Z 1

0

ln() hi(s0 s1) d s1 ln(s1)

Z 1

0

hi(s0 s1) d;

(3.2.35)

Page 88: Boundary Element Methods

Boundary-element methods in two dimensions 73

wheres1 s0si, and is a new auxiliary variable. The second integral in the lastexpression may be computed by the Gauss-Legendre quadrature. The first integralmay be computed using a quadrature that is specifically designed for integrands witha logarithmic singularity.

Quadrature for logarithmic singularities

The integration quadrature for an integral with a logarithmic singularity takes thestandard form

Z 1

0

ln() v() d 'NQXk=1

v(k) wk; (3.2.36)

where:

The function v() is non-singular over the integration domain [0, 1].

NQ is a specified number of integration base points.

k is the location of the kth base point ranging in the interval (0; 1).

wk is the corresponding weight. The sum of the integration weights is equalto 1 for any value of NQ, so that, when v is a constant function, quadrature(3.2.36) produces the exact answer.

Applying the quadrature to the last integral in (3.2.35), we obtain

Z 1

0

ln() hi(s0 s1) d 'NQXk=1

hi(s0 ks1) wk ; (3.2.37)

Mathematical handbooks and decent texts on numerical methods provide us withtables of the pairs (k; wk) parametrized by the number of base points NQ (e.g.,[60]). Subroutine gauss log in subdirectory 07 integration of directorynum meth of BEMLIB contains tabulated pairs for NQ = 2, 3, 4, and 5. Pro-gram integral log in the same directory uses the quadrature to evaluate integralswhose integrand exhibits a logarithmic singularity.

It may appear that the first method of subtracting the singularity culminating in equa-tion (3.2.33) is comparable to the second method based on the Gaussian quadrature,but this is impression is false. Performing a Taylor series expansion of the functionhi(s) around the singular point s0, we find that, in general, the first integral in thesecond line of (3.2.33) behaves like (s s0) ln js s0j. As s tends to s0, the in-tegrand tends to zero and a singularity does not appear. However, the derivatives ofthe integrand tend to become infinite in this limit, and this makes the method lessaccurate than its competitor.

Page 89: Boundary Element Methods

74 A Practical Guide to Boundary-Element Methods

Problems

P.3.2.1 Gauss-Legendre quadrature

Use the Gauss-Legendre quadrature with NQ = 1, 2, 3, and 4 base points to integratea sixth-degree polynomial of your choice over the interval (1; 1), and discuss theaccuracy of your results.

P.3.2.2 Integrand with a log singularity

The integrand of the integral

Z 1

0

ex2

ln jx 0:5j dx (1)

exhibits a logarithmic singularity at x = 0:5. Compute the integral by (a) subtractingthe singularity as discussed in the text, and (b) using the Gaussian quadrature forlogarithmic kernels with NQ = 2, 3, 4, and 5 base points, and then compare theresults of the two methods.

3.3 The boundary-element collocation method

The boundary-element discretization has provided us with the discretized integralequation (3.2.4), repeated here for convenience:

f(x0) = 2NXi=1

i(x0) (@f

@n)i + 2

NXi=1

PVi (x0) fi: (3.3.1)

In practice, Dirichlet boundary conditions provide us with a set of element valuesfi, and Neumann boundary conditions provide us with another set of element val-ues (@f=@n)i, a total of N values. To compute the N element values that are notspecified, we apply the method of point collocation.

The objective is to generate a number of equations equal to the number of unknownsN . With this goal in mind, we identify the arbitrary point x0 with the mid-point ofeach boundary element denoted by xMj , where j = 1; : : : ; N , and thereby obtain thealgebraic equations

f(xMj ) fj = 2NXi=1

i(xMj ) (

@f

@n)i + 2

NXi=1

PVi (xMj ) fi: (3.3.2)

Page 90: Boundary Element Methods

Boundary-element methods in two dimensions 75

To simplify the notation, we introduce the single- and double-layer influence coeffi-cients

Aji i(xMj ); Bji PVi (xMj ); (3.3.3)

and recast (3.3.2) into the form

1

2fj = Aji f 0i +Bji fi; (3.3.4)

where we have defined f 0i ( @f@n

)i. Summation over the repeated index i is impliedon the right-hand side of (3.3.4). Moving the element values fj from the left- to theright-hand side, rearranging, and writing fj = Æijfi, where Æij is Kronecker’s delta,we obtain

Aji f0

i = (Bji 1

2Æji) fi: (3.3.5)

The corresponding vector form is

A f 0 = (B 1

2I) f ; (3.3.6)

where I is the identity matrix. Three cases may now be recognized:

If all element values fi are specified, equation (3.3.6) provides us with a sys-tem of linear equations for the unknown vector of normal derivatives f 0.

If all element values f 0i are specified, equation (3.3.6) provides us with a sys-tem of linear equations for the unknown vector f .

If some element values fi and a complementary set of values f 0i are speci-fied, equation (3.3.6) provides us with a system of linear equations for theunknowns.

Setting up the linear algebraic system (3.3.6) is the main task of the boundary-element implementation. Once this has been accomplished, the solution can be foundusing a linear solver based, for example, on the method of Gauss elimination or oneof its alternatives discussed in Appendix A.

An important feature of the linear system arising from the boundary-element colloca-tion method is that the coefficient matrices A and B are dense, that is, they are fullypopulated with non-zero elements. In contrast, linear systems arising from finite-difference, finite-element, and spectral-element methods are banded, that is, theycontain diagonal arrays or blocks of non-zero elements, while all other elements arezero (e.g., [60]).

Page 91: Boundary Element Methods

76 A Practical Guide to Boundary-Element Methods

3.3.1 BEMLIB directory laplace

BEMLIB directory laplace contains codes that solve Laplace’s equation in twodimensions using the constant-element collocation method discussed in this section,including the following:

flow 1dUnidirectional viscous flow through a tube with arbitrary cross-section.

flow 1d 1pUnidirectional shear flow past (a) a periodic array of cylinders with arbitrarycross-section, and (b) a periodic wall with arbitrary profile.

flow 2dTwo-dimensional potential flow in an arbitrary domain.

body 2dPotential flow past, or due to the motion of, a two-dimensional body.

tank 2dDynamical simulation of liquid sloshing in a rectangular tank.

The problem formulation and particulars of the numerical method are discussed inthe corresponding sections of the BEMLIB user guide (Chapter 10).

Problems

P.3.3.1 Gauss elimination

Subdirectory 03 lin eq of directory num meth of FDLIB includes the programgel that solves a system of linear equations by the method of Gauss eliminationwith row pivoting (Appendix A). Use the program to solve a system of your choice,and verify that the solution satisfies the equations.

P.3.3.2 BEMLIB codes for Laplace’s equation in two dimensions

(a) Code flow 2d in directory laplace of BEMLIB computes two-dimensionalpotential flow in an arbitrary domain. Study the mathematical formulation and nu-merical method discussed in the corresponding section of the BEMLIB user guide(Chapter 10), run the code for a configuration of your choice, prepare graphs of thestreamline pattern, and discuss the results of your computation.

(b) Repeat (a) for code flow 2d 1p. (c) Repeat (a) for code body 2d. (d) Repeat(a) for code tank 2d.

Page 92: Boundary Element Methods

Boundary-element methods in two dimensions 77

P.3.3.3 BEMLIB code for Helmholtz’s equation in two dimensions

Directory helmholtz of BEMLIB contains the code flow 2d osc that solvesthe equations of oscillatory unidirectional viscous flow inside or outside a cylindricaltube with arbitrary cross-section using the boundary-element collocation method.

Study the mathematical formulation and the numerical method discussed in the cor-responding section of the BEMLIB user guide (Chapter 11), run the code for a tubegeometry of your choice and for several oscillation frequencies, prepare graphs, anddiscuss the results of your computation.

3.4 Isoparametric cubic-splines discretization

The uniform-element discretization described in Sections 3.2 and 3.3 represents thesimplest implementation of the boundary-element method. If a continuous boundarydistribution for the function f or its normal derivative is desired, then a higher-orderdiscretization must be applied.

In the isoparametric cubic-splines representation, the boundary elements are de-scribed by cubic splines interpolation, as shown in the equations displayed in (3.1.7),and the boundary distribution of f and its normal derivative over the ith element areapproximated with the corresponding forms

f(s) ' Ri(s) pi (s si)3 + qi (s si)

2 + ri (s si) + fi; (3.4.1)

Wand

@f

@n(s) ' R0i(s) p0i (s si)

3 + q0i (s si)2 + r0i (s si) + (

@f

@n)i; (3.4.2)

where si s si+1. The 3N coefficients pi; qi, and ri, where i = 1; : : : ; N ,and the corresponding 3N coefficient p0i; q

0

i, and r0i, either are specified or must becomputed using the boundary-integral equation.

3.4.1 Cardinal cubic-splines functions

Reviewing the steps involved in the computation of the cubic splines discussed inSection 3.1, we observe that the coefficients pi; qi, and ri, where i = 1; : : : ; N , arelinear functions of the nodal values fj , where j = 1; : : : ; N + 1. Accordingly, weintroduce the expressions

pi = Pij fj ; qi = Qij fj ; ri = Rij fj ; (3.4.3)

Page 93: Boundary Element Methods

78 A Practical Guide to Boundary-Element Methods

where summation over the repeated index j is implied in the N + 1 nodes definingthe boundary elements. The constant matrices Pij , Qij , and Rij depend exclusivelyon the arc-length parametrization and on the element node distribution.

Substituting (3.4.3) into (3.4.1), we find

f(s) ' Ri(s) = [Pij (s si)3 +Qij (s si)

2 +Rij (s si) + Æij ] fj ;(3.4.4)

where si s si+1. This expression illustrates that all nodal values contribute tothe cubic polynomial expansion over the ith boundary element.

The union of the individual cubics,Ri(s), provides us with the global approximation

f(s) ' R(s) =

N+1Xj=1

Zj(s) fj ; (3.4.5)

where Zj(s) are cardinal cubic-splines interpolation functions with the followingproperties:

Zj(sj) = 1, and Zj(sk) = 0 for k 6= j.

Zj(s) is composed of piecewise cubic polynomials whose union forms a con-tinuous function with continuous first and second derivatives.

Zj(s) is identical to the cubic-splines approximation of a function that is equalto unity at the jth node, and zero at all other nodes.

The last property suggests a practical method of computing the cubic-splines cardinalfunctions. Results for a typical case are shown in Figure 3.4.1.

3.4.2 Boundary element discretization

Expressions similar to those shown in (3.4.3) can be written down for the normalderivative,

p0i = Pij (@f

@n)j ; q0i = Qij (

@f

@n)j ; r0i = Rij (

@f

@n)j : (3.4.6)

Substituting (3.4.5) and its counterpart for the normal derivative into the boundary-integral representation (2.10.3) and into the boundary-integral equation (2.12.2), andextracting the nodal values from the single- and double-layer potential, we find

f(x0) = N+1Xi=1

(@f

@n)i

ZC

Zi(s)G(x;x0) dl(s)

+

N+1Xi=1

fi

ZC

Zi(s) [n(x) rG(x;x0)] dl(s); (3.4.7)

and

Page 94: Boundary Element Methods

Boundary-element methods in two dimensions 79

0 0.2 0.4 0.6 0.8 1s

−0.5

0

0.5

1

1.5

Car

dina

l fun

ctio

ns

Figure 3.4.1 Periodic cubic-splines cardinal functions for N = 6 intervals definedby seven nodes. The ith cardinal function takes the value of unity at the ithnode, and the value of zero at all other nodes.

f(x0) = 2N+1Xi=1

(@f

@n)i

ZC

Zi(s)G(x;x0) dl(s)

+2N+1Xi=1

fi

Z PV

C

Zi(s) [n(x) rG(x;x0)] dl(s): (3.4.8)

The influence coefficients represented by the integrals on the right-hand sides arecomputed over the union of all boundary elements. The individual integrals over theelements may be computed using the numerical methods discussed in Section 3.2.

Consider, for example, the computation of the single-layer integral with the free-space Green’s function over the ith singular element, expressed in the formZ si+1

si

Zi(s)G(x;x0)dl

dsds = 1

2

Z si+1

si

Zi(s) ln jx xijdl

dsds: (3.4.9)

The singular integral on the right-hand side may be computed by subtracting the sin-gularity or by using a quadrature for improper integrals with logarithmic singularity,as discussed in Section 3.3. The kernel of the principal-value, double-layer integralis non-singular, and the corresponding influence coefficient may be computed by theGauss-Legendre quadrature.

Page 95: Boundary Element Methods

80 A Practical Guide to Boundary-Element Methods

The discretized integral equation (3.4.8) provides us with a basis for the boundary-element collocation method discussed in Section 3.3. The procedure involves apply-ing this equation at the element end-points to generate and then solve a system oflinear equations for the unknown node values of the function f or its normal deriva-tive.

Problem

P.3.4.1 Lagrange interpolating polynomials

TheN th-degree Lagrange interpolating polynomials are defined with respect to a setof N + 1 nodes corresponding to parameter values si, i = 1; : : : ; N + 1, as

Li(s) =(s s1)(s s2) : : : (s si1)(s si+1) : : : (s sN )(s sN+1)

(si s1)(si s2) : : : (si si1)(si si+1) : : : (si sN )(s sN+1):

(a) Show that these polynomials constitute a family of cardinal functions specific tothe nodes.

(b) Prepare graphs of the Lagrange polynomials for a set of seven nodes of yourchoice, and discuss your results with reference to the cubic-splines cardinal func-tions.

3.5 High-order collocation methods

We have seen that two types of approximation are involved in the boundary-elementmethod: a geometrical approximation related to the boundary discretization, and afunction approximation related to the distribution of the unknown function and itsnormal derivative over the individual boundary elements. In the isoparametric repre-sentation discussed in Section 3.4, the two approximations were chosen to be of thesame order. In practice, a high-order function approximation may be necessary overboundary elements with low-order shapes to capture rapid variations in the solution.

To implement high-order expansions, it is convenient to map the ith straight orcurved element onto the interval [1; 1] of the dimensionless axis, as shown inFigure 3.5.1, and introduce Mi + 1 native element nodes at positions i;j , wherej = 1; : : : ;Mi +1. In the case of straight segments, circular arcs, and cubic splines,the mapping is mediated, respectively, by equations (3.1.2), (3.1.4) combined with(3.1.6), and (3.1.7) combined with (3.2.23).

Page 96: Boundary Element Methods

Boundary-element methods in two dimensions 81

−1 1

n

i

ξ

i+1

Figure 3.5.1 Mapping of the ith boundary element to the interval [1; 1] of the di-mensionless axis. The native element nodes are marked as filled circles.

Next, we use the native element nodes as a basis for approximating the distributionof the function f and its normal derivative with Mi-degree polynomials with respectto . To simplify the logistics, we introduce the Mi-degree Lagrange interpolatingpolynomials

Li;j() =( i;1) ( i;j1)( i;j+1)( i;Mi+1)

(i;j i;1) (i;j i;j1)(i;j i;j+1)(i;j i;Mi+1); (3.5.1)

where j = 1; : : : ;Mi + 1, and write

f() ' Ri() =

Mi+1Xj=1

fi;j Li;j();

(3.5.2)@f

@n

f() ' R0i() =

Mi+1Xj=1

@f

@n

i;j

Li;j();

where fi;j and@f@n

i;j

are the node values of the function and its normal derivative.

When Mi = 0, the element distribution is uniform, and we recover the constant-element formulation developed in Section 3.3.

The Lagrange polynomials are cardinal functions similar to the cubic-splines cardi-nal functions displayed in Figure 3.4.1. By construction, the Lagrange polynomialstake the value of unity at a chosen node and the value of zero at all other nodes. Interms of Kronecker’s delta,

Li;j(i;k) = Æjk ; (3.5.3)

Page 97: Boundary Element Methods

82 A Practical Guide to Boundary-Element Methods

where summation over i is not implied on the left-hand side.

Substituting the expansions shown in (3.5.2) into the boundary-integral representa-tion (2.3.3) and into the boundary-integral equation (2.4.2), and extracting the nodevalues from the single- and double-layer potential, we find

f(x0) = NXi=1

Mi+1Xj=1

(@f

@n)i;j

ZEi

Li;j()G(x;x0) dl()

+

NXi=1

Mi+1Xj=1

fi;j

ZEi

Li;j() [n(x) rG(x;x0)] dl(); (3.5.4)

and

f(x0) = 2N+1Xi=1

Mi+1Xj=1

(@f

@n)i;j

ZEi

Li;j()G(x;x0) dl()

+2

N+1Xi=1

Mi+1Xj=1

fi;j

Z PV

Ei

Li;j() [n(x) rG(x;x0)] dl(): (3.5.5)

The influence coefficients on the right-hand sides are defined in terms of integrals ex-pressing single- and double-layer potentials with polynomial strength distributions.

The discrete integral equation (3.5.5) provides us with a basis for the boundary-element collocation method discussed in Section 3.3. The procedure involves apply-ing this equation at the element nodes, thereby generating a system of linear equa-tions for the unknown node values of the function f or its normal derivative. Theinfluence coefficients are computed by numerical methods similar to those discussedin Section 3.3.

3.5.1 Spectral node distribution

Analysis shows that the most accurate results are obtained when the element nodesare located at positions corresponding to the roots of orthogonal polynomials definedover the standard interval [1; 1]. Examples include the Legendre, Chebyshev, Ja-cobi, Radau, and Lobatto polynomials. The roots of these polynomials are listed inmathematical handbooks and texts on numerical methods (e.g., [60]).

Of particular interest is the family of Lobatto polynomials defined over the interval[1; 1]. The first few members of this family are

Lo0() = 1; Lo1() = 3 ;

(3.5.6)

Lo2() =3

2(5 2 1); Lo3() =

1

2(35 2 15) :

Page 98: Boundary Element Methods

Boundary-element methods in two dimensions 83

Having selected a member of the Lobatto family, we set i;1 = 1 and i;Mi+1 = 1,that is, we place two nodes at the end-points of each element, and identify the inter-mediate Mi 1 nodes i;j , where j = 2; : : : ;Mi, with the roots of the (Mi 1)-degree Lobatto polynomial. The shared element nodes ensure the continuity of theboundary distribution f and its normal derivative @f=@n along the discretized con-tour and across the boundary elements. In the boundary-element literature, this prop-erty is described by the terminology “continuous element discretization.”

For example, when Mi = 2, we place three nodes at i;1 = 1, i;1 = 0, andi;2 = 1; the second node corresponds to the root of Lo1(). Substituting thesevalues into (3.5.1), we find that the corresponding Lagrange polynomials are givenby

Li;1() =1

2 ( 1); Li;2() = (1 ) (1 + );

(3.5.7)

Li;3() =1

2 ( + 1):

Reference to (3.5.4) and (3.5.5) shows that evaluating the influence coefficients re-quires computing single- and double-layer potentials over the individual boundaryelements with constant, linear, and quadratic strength density distributions.

3.5.2 Corner elements

When a boundary element is adjacent to a true boundary corner (but not an artificialcorner due to the discretization), the boundary distribution of the function f andits normal derivative are likely to exhibit discontinuous or singular behavior, and aboundary-element distribution involving a shared corner node is not appropriate.

If the corner is the result of physical idealization, the singular behavior may be sup-pressed by smoothing out the geometrical discontinuity. This can be done by replac-ing a portion of the corner with a transverse segment, an inscribed circular arc ofsmall radius, or another properly defined curved element.

A less invasive approach involves distributing the near-corner nodes at positions cor-responding to the roots of the Radau polynomials defined over the interval [1; 1].The first few members of this family are

R0() = 1; R1() =1

2(3 1); R2() =

1

2(5 2 2 1);

(3.5.8)

R3() =1

8(35 3 15 2 15 + 3):

If a corner occurs at the second end-point of the ith element, we set i;1 = 1, thatis, we place the first node at the first end-point, and identify the rest of the Mi nodes

Page 99: Boundary Element Methods

84 A Practical Guide to Boundary-Element Methods

1 2

4

5

3

3

1321

Element 1

Element 2

2

Figure 3.5.2 A two-element system illustrating the global (italic) and element (bold)node labels.

i;j , where j = 2; : : : ;Mi + 1, with the roots of the Mi-degree Radau polynomial.For example, when Mi = 1, we place two nodes at i;1 = 1 and i;2 = 1=3; thesecond node corresponds to the root of R1() shown in (3.5.8). If the corner occursat the first end-point, we replace by 1 , thereby reflecting the nodes with respectto the mid-point.

3.5.3 Assembly

When the final system of linear equations corresponding to the element nodes isbeing generated, the coefficient matrix and right-hand side must be defined and as-sembled properly to ensure that shared nodes are not counted twice.

Consider, for example, the two-element system depicted in Figure 3.5.2, where eachelement has three nodes, and the third node is shared by the two elements. The globalnode labels, printed in italic, are related to the element node labels, printed in bold,by

f1;1 = fG1 ; f1;2 = fG2 ; f1;3 = fG3 ;

(3.5.9)

f2;1 = fG3 ; f2;2 = fG4 ; f2;3 = fG5 ;

where the superscriptG denotes the global array. Accordingly, the double-layer sumshown in the second line of equation (3.5.5) takes the form of the inner vector product

[M1;M2;M3;M4;M5]

266664fG1fG2fG3fG4fG5

377775 ; (3.5.10)

Page 100: Boundary Element Methods

Boundary-element methods in two dimensions 85

where

M1 Z PV

E1

L1;1() [n(x) rG(x;x0)] dl();

M2 Z PV

E1

L1;2() [n(x) rG(x;x0)] dl();

M3 Z PV

E1

L1;3() [n(x) rG(x;x0)] dl() (3.5.11)

+

Z PV

E2

L2;1() [n(x) rG(x;x0)] dl();

M4 Z PV

E2

L2;2() [n(x) rG(x;x0)] dl();

M5 Z PV

E2

L2;3() [n(x) rG(x;x0)] dl():

The algorithm involves double-looping over the elements and element nodes, whilemaking appropriate contributions to the global influence coefficients expressed byMi. The method is implemented by introducing a connectivity table that associatesthe element node labels with the global node labels. The row-vector Mi in (3.5.10)is evaluated at sequential nodes, yielding successive rows of the influence matrixcorresponding to the double-layer potential. A similar computation is performedsimultaneously for the influence coefficients corresponding to the single-layer po-tential.

3.5.4 Grid refinement

The accuracy of a boundary-element computation may be improved in two ways:(a) by increasing the number of boundary elements while keeping the order of thepolynomial expansion over each element constant – this is an h-type refinement – or(b) by increasing the order of the polynomial expansion while keeping the numberof elements fixed – this is a p-type refinement.

In practice, it may be desirable to keep the number of boundary elements constantand the order of the expansion fixed, and perform optimization with respect to thelocation of the element nodes in the spirit of r-adaptation. A drawback of this methodis that, when a small or moderate number of elements is used, the optimal elementdistribution may be highly skewed, causing local inaccuracies or irregularities.

Grid optimization for the boundary-element method was pioneered by Ingber andMitra [29]. The optimization process involves introducing a norm for the numerical

Page 101: Boundary Element Methods

86 A Practical Guide to Boundary-Element Methods

error, and then minimizing the error with respect to the number or position of thenodes. Error estimation and adaptive boundary-element methods have been devel-oped by numerous subsequent authors, as reviewed in References [1, 41, 44, 46].

Problems

P.3.5.1 Lobatto polynomials

(a) Confirm that the four Lobatto polynomials listed in (3.5.6) satisfy the orthogo-nality condition

Z 1

1

Loi() Loj() (1 2) d =2(i+ 1)(i+ 2)

2i+ 3Æij : (1)

(b) Write out the Lagrange interpolating polynomials corresponding to the Lobattonodes forMi = 1 and 3; the Lagrange polynomials forMi = 2 are shown in (3.5.7).

P.3.5.2 Radau polynomials

(a) Confirm that the four Radau polynomials listed in (3.5.8) satisfy the orthogonalityproperty

Z 1

1

Ri() Rj() (1 + ) d =2

i+ 1Æij : (1)

(b) Write out the Lagrange interpolating polynomials corresponding to the Radaunodes for Mi = 1 and 2.

3.6 Galerkin and global expansion methods

The collocation method discussed previously in this chapter is the most popular im-plementation of the boundary-element method. For completeness, two alternativemethods are discussed in this section.

3.6.1 Galerkin boundary-element method

Consider the uniform-element discretization of the boundary-integral equation, shownin equation (3.2.6), and introduce a set of N basis functions i(l) distinguished by

Page 102: Boundary Element Methods

Boundary-element methods in two dimensions 87

the property that i(l) is equal to unity over the ith element, and zero over all otherelements; l is the arc length along the discretized contour.

By construction, the constant-element discretization of the function f and its normalderivative can be expressed in the forms

f(l) 'NXi=1

i(l) fi;@f

@n(l) '

NXi=1

i(l)

@f

@n

i

: (3.6.1)

Accordingly, the boundary-integral equation (3.2.6) can be expressed in the form

NXi=1

fi i(l0) = 2NXi=1

@f

@n

i

NXj=1

ZEj

i(l)G(x;x0) dl(x)

+2

NXi=1

fi

NXj=1

Z PV

Ej

i(l) [n(x) rG(x;x0)] dl(x): (3.6.2)

In the Galerkin projection method, the unknown element values are computed byprojecting equation (3.6.2) onto the set of basis functions i. The projection is im-plemented by multiplying both sides of (3.6.2) by i(l0), where i = 1; : : : ; N , andintegrating the product with respect to arc length l0 around the discretized contourCdefined by the union of the boundary elements.

The kth projection produces the equation

NXi=1

ki fi = 2NXi=1

@f

@n

i

NXj=1

kji + 2

NXi=1

fi

NXj=1

PVkji ; (3.6.3)

where

kji ZC

ZEj

k(l0) i(l)G(x;x0) dl(x) dl0;

kji ZC

ZEj

k(l0) i(l) [n(x) rG(x;x0)] dl(x) dl0;

ki ZC

k(l0) i(l0) dl0: (3.6.4)

The superscript PV in the last sum on the right-hand side of (3.6.3) denotes theprincipal value of the integral with respect to l.

Taking advantage of the finite support of the uniform-element basis functions, wewrite

kji = Æij Akj ; kji = Æij Bkj ; ki = Æki lk; (3.6.5)

Page 103: Boundary Element Methods

88 A Practical Guide to Boundary-Element Methods

where Ælm is Kronecker’s delta, lk is the arc length of the kth element, and we havedefined

Akj ZEk

ZEj

G(x;x0) dl(x) dl0;

Bkj ZEk

ZEj

[n(x) rG(x;x0)] dl(x) dl0: (3.6.6)

Substituting these expressions into (3.6.3) and simplifying, we derive the final form

lk fk = 2NXi=1

@f

@n

i

Aki + 2

NXi=1

fi BPVki ; (3.6.7)

where summation over k is not implied on the left-hand side. Applying equation(3.6.7) for k = 1; : : : ; N , we obtain a system of linear equations for the unknownelement values.

Now, because of the symmetry of the Green’s function, G(x;x0) = G(x0;x), thematrix Akj defined in the first equation of (3.6.6) is symmetric, and so is the coef-ficient of the linear system for the element values of the normal derivative originat-ing from (3.6.7). Consequently, when Dirichlet conditions are specified (Neumannproblem), the Galerkin boundary-element method produces a linear system with asymmetric coefficient matrix multiplying the unknown vector of normal derivativesat the nodes. Solving this system requires a reduced amount of computational effort(e.g., [60]).

The boundary-element Galerkin method just described can be generalized by replac-ing the piecewise constant element basis functions i(l) with cardinal interpolationfunctions Zi(l) defined with respect to a set of N + 1 boundary-element nodes. Anexample is the set of cubic-splines cardinal functions discussed in Section 3.4. Thecounterpart of the linear system (3.6.7) is

N+1Xi=1

Cki fi = 2N+1Xi=1

@f

@n

i

Aki + 2N+1Xi=1

fi BPVki ; (3.6.8)

where

Aki ZC

ZC

Zk(l0) Zi(l)G(x;x0) dl(x) dl0;

Bki ZC

ZC

Zk(l0) Zi(l) [n(x) rG(x;x0)] dl(x) dl0; (3.6.9)

Cki ZC

ZC

Zk(l0) Zi(l) dl0;

are Galerkin influence coefficients defined in terms of double integrals. Note that thematrix Aki remains symmetric in this generalized framework.

Page 104: Boundary Element Methods

Boundary-element methods in two dimensions 89

The implementation of the Galerkin boundary-element method for the hypersingularintegral equations discussed in Section 2.5 follows the basic steps outlined in thissection. When Neumann boundary conditions are specified (Dirichlet problem), themethod produces a linear system of algebraic equations with a symmetric coefficientmatrix multiplying the vector of unknown function values at the nodes.

In spite of the additional computational effort necessary for evaluating the doubleintegrals that arise from the Galerkin projection, the approach described in this sec-tion has certain advantages over the collocation method including ability to evaluatewithout ambiguity hypersingular integrals, and better accuracy for the same numberof unknowns (e.g., [23]).

3.6.2 Global expansion method

In the global expansion method, the boundary distribution of the function f and itsnormal derivative are expressed as linear combinations of a complete set of basisfunctions defined over the whole of the boundary of the solution domain. The un-known coefficients of the expansions are then found by solving linear systems ofequations generated by the Galerkin projection. The implementation and perfor-mance of the method are discussed in References [3, 4].

Problems

P.3.6.1 Constant-element basis functions

Express the constant-element basis functionsBi(l) in terms of the Heaviside functionH(x), which is equal to unity when x is positive, and zero when x is negative.

P.3.6.2 Influence coefficients

Investigate whether it is possible to compute the influence coefficient Akj defined in(3.6.6) by analytical methods for straight boundary elements when (a) k = j, and (b)k 6= j.

Page 105: Boundary Element Methods
Page 106: Boundary Element Methods

Chapter 4

Laplace’s equation in three dimensions

Generalizing the theoretical framework developed in Chapter 2 for Laplace’s equa-tion in two dimensions, in this chapter, we discuss the boundary-integral formulationof Laplace’s equation in three dimensions

r2f(x; y; z) = 0; (4.1)

where r2 is the Laplacian operator

r2 @2

@x2+

@2

@y2+

@2

@z2: (4.2)

A function that satisfies equation (4.1) is called harmonic.

The fundamental concepts underlying the development of boundary-integral andboundary-element methods in three dimensions are straightforward extensions ofcorresponding concepts in two dimensions. To avoid extensive duplication, we con-fine our attention to presenting the basic ideas, discussing the most important deriva-tions, and developing formulations for axisymmetric domains.

4.1 Green’s first and second identities and the reciprocal relation

Green’s first identity states that any two twice-differentiable functions f(x; y; z) and(x; y; z) satisfy the relation

r2f = r (rf)r rf: (4.1.1)

In index notation, equation (4.1.1) takes the form of equation (2.1.2), where summa-tion over the repeated index i is implied in the range i = 1, 2, and 3, correspondingto x; y, and z.

Interchanging the roles of f and , we obtain

f r2 = r (f r)rf r: (4.1.2)

91

Page 107: Boundary Element Methods

92 A Practical Guide to Boundary-Element Methods

(a) (b)

n

n

n n

n

V

V

c

c

DD

Figure 4.1.1 A control volume enclosed by (a) a closed surface, and (b) a collectionof closed surfaces. The unit normal vector n points into the control volume.

Subtracting (4.1.2) from (4.1.1), we derive Green’s second identity

r2f f r2 = r (rf f r): (4.1.3)

If both functions f and satisfy Laplace’s equation (4.1), the left-hand side of (4.1.3)vanishes, yielding the reciprocal relation for nonsingular harmonic functions

r (rf f r) = 0; (4.1.4)

which is the three-dimensional counterpart of (1.1.4) and (2.1.5).

4.1.1 Integral form of the reciprocal relation

The integral form of the reciprocal relation arises by integrating both sides of equa-tion (4.1.4) over an arbitrary control volume Vc that is bounded by a closed surfaceor a collection of closed surfaces denoted by D, as illustrated in Figure 4.1.1.

Using the divergence theorem (Appendix A), we convert the volume integral to asurface integral, and thereby obtain the integral statementZ Z

Vc

(rf f r) n dV = 0; (4.1.5)

where n is the unit vector normal to D pointing into the control volume, and dV =dx dy dz is a differential volume.

Page 108: Boundary Element Methods

Laplace’s equation in three dimensions 93

Relation (4.1.5) imposes an integral constraint on the boundary values and boundarydistribution of the normal derivatives of any pair of non-singular harmonic functionsf and . The boundary-integral representation for the function f arises by identify-ing with a Green’s function.

4.2 Green’s functions

The Green’s functions constitute a special class of harmonic functions that are sin-gular at an arbitrary point x0 = (x0; y0; z0). By definition, a Green’s function ofLaplace’s equation in three dimensions satisfies the singularly forced Laplace’s equa-tion

r2G(x;x0) + Æ3(x x0) = 0; (4.2.1)

where:

x = (x; y; z) is the variable “field point.”

x0 = (x0; y0; z0) is the fixed location of the “singular point” or “pole.”

Æ3(x x0), written more explicitly as Æ3(x x0; y y0; z z0), is Dirac’sdelta function in three dimensions.

By construction, Dirac’s delta function in three dimensions is distinguished by thefollowing properties:

1. Æ3(x x0; y y0; z z0) vanishes everywhere except at the point x = x0,y = y0, z = z0, where it becomes infinite.

2. The integral of the delta function over a volume that contains the singularpoint (x0; y0; z0) is equal to unity,Z

Æ3(x x0; y y0; z z0) dx dy dz = 1: (4.2.2)

This property illustrates that the delta function in three dimensions has unitsof inverse cubed length.

3. The integral of the product of an arbitrary function f(x; y; z) and the deltafunction over a volume that contains the singular point (x0; y0; z0) is equalto the value of the function at the singular point,Z

Æ3(x x0; y y0; z z0) f(x; y; z) dx dy dz = f(x0; y0; z0): (4.2.3)

Page 109: Boundary Element Methods

94 A Practical Guide to Boundary-Element Methods

The integral of the product of an arbitrary function f(x; y; z) and the deltafunction over a volume that does not contain the singular point (x0; y0; z0)is equal to zero.

4. In formal mathematics, Æ3(x x0; y y0; z z0) arises from the family oftest functions

h(r) = (

L2)3=2 exp( r2

L2); (4.2.4)

in the limit as the dimensionless parameter tends to infinity, where

r jx x0j =p(x x0)2 + (y y0)2 + (z z0)2;

and L is an arbitrary length,

Figure 4.2.1 shows graphs of the dimensionless test functions H hL3 plottedagainst the dimensionless distance X (x x0)=L for y = y0, z = z0, and =1 (dashed line), 2, 5, 10, 20, 50, 100, and 500 (dotted line). The maximum heightof each graph is inversely proportional to the cubic power of its width, so that thevolume underneath each graph in three-dimensional space is equal to unity,Z Z Z

h(r) dx dy dz =

Z

0

Z 2

0

Z1

0

h(r) sin r2 dr d' d

= 4

Z 1

0

h(r) r2 dr = 4 (

L2)3=2

Z 1

0

exp( r2

L2) r2 dr = 1; (4.2.5)

where (r; ; ') are spherical polar coordinates centered at the singular point. Toprove this identity, we observe that

q(r) = g(x x0) g(y y0) g(z z0); (4.2.6)

where the function g is defined in equation (1.2.4), writeZ Z Zh(r) dx dy dz = [

Z1

1

g(x x0) dx] [

Z1

1

g(y y0) dy]

[Z 1

1

g(z z0) dz]; (4.2.7)

and use property (1.2.5).

4.2.1 Green’s and Neumann functions

In addition to satisfying equation (4.2.1), a Green’s function of the first kind is re-quired to take the reference value of zero over a surfaceSG representing the boundaryof a solution domain, as shown in (2.2.8), where the point x lies on SG.

Page 110: Boundary Element Methods

Laplace’s equation in three dimensions 95

-1 -0.5 0 0.5 1X

0

1

2

3

4

5

H

Figure 4.2.1 A family of dimensionless test functions H hL3 described by(4.2.4) plotted against the dimensionless distanceX (xx0)=L for y = y0,z = z0, and = 1 (dashed line), 2, 5, 10, 20, 50, 100, and 500 (dotted line). Inthe limit as the dimensionless parameter tends to infinity, we recover Dirac’sdelta function in three dimensions.

A Green’s function of the second kind, also called a Neumann function, is distin-guished by the property that its normal derivative vanishes over the surface SG, asshown in (2.2.9), where the point x lies on SG.

The physical interpretation of Green’s and Neumann functions is discussed in Sec-tion 2.2.1.

4.2.2 The free-space Green’s function

The free-space Green’s function corresponds to an infinite solution domain in theabsence of interior boundaries. Solving equation (4.2.1) by inspection or using theFourier transform, we obtain

G(x;x0) =1

4r; (4.2.8)

where r = jx x0j is the distance of the field point x from the singular point x0.

4.2.3 Green’s functions in bounded domains

As the observation point x approaches the singular point x0, all Green’s and Neu-mann functions exhibit a common singular behavior. Specifically, any Green’s or

Page 111: Boundary Element Methods

96 A Practical Guide to Boundary-Element Methods

Neumann function is composed of a singular part that is identical to the free-spaceGreen’s function given in (4.2.8), and a complementary part expressed by a harmonicfunction H that is non-singular throughout the domain of solution,

G(x;x0) =1

4r+H(x;x0): (4.2.9)

In the case of the free-space Green’s function, the complementary component Hvanishes. More generally, the particular form of H depends on the geometry of theboundary SG. For certain simple boundaries geometries involving planar and spher-ical shapes, the complementary function H may be found by the method of images,that is, by placing free-space Green’s functions and their derivatives at strategicallyselected positions outside the solution domain.

For example, the Green’s function for a semi-infinite domain bounded by a planewall located at x = w is given by

G(x;x0) =1

4r 1

4rIm; (4.2.10)

where r = jx x0j, rIm = jx xIm0 j, and xIm0 = (2wx0; y0; z0) is the image of

the singular point x0 with respect to the wall. The plus and minus sign correspond,respectively, to the Green’s function of the first kind and to the Neumann function.

4.2.4 BEMLIB directory lgf 3d

Subdirectory lgf 3d of directory laplace of BEMLIB contains subroutines thatevaluate a family of Green’s and Neumann functions in three dimensions, includingthe following:

Green’s function in free space.

Green’s and Neumann functions in a semi-infinite domain bounded by a planewall.

Neumann function in the exterior of a sphere.

Doubly periodic Green’s function.

Illustration of iso-scalar contours are presented in Chapter 10.

4.2.5 Integral properties of Green’s functions

Consider a singly or multiply connected control volume, denoted by Vc, bounded bya closed surface or a collection of closed surfaces, denoted by D. The boundary SGassociated with the Green’s function may be one of these surfaces. For the moment,

Page 112: Boundary Element Methods

Laplace’s equation in three dimensions 97

we shall assume that all surfaces are smooth, that is, they do not exhibit conical,edge-like or cusp-like corners.

Integrating (4.2.1) over the control volume Vc, and using the divergence theorem andthe distinctive properties of the delta function in three dimensions, we find that theGreen’s functions satisfy the integral identity

ZD

n(x) rG(x;x0) dS(x) =

8<:

1 when x0 is inside Vc12

when x0 is on D0 when x0 is outside Vc

; (4.2.11)

where the unit normal vector n points into the control volume Vc. When the point x0is located on the boundaryD, the improper integral on the left-hand side of (4.2.11)is a principal-value integral.

Using the three relations shown in (4.2.11), we derive the important identityZD

n(x) rG(x;x0) dS(x) =Z PV

D

n(x) rG(x;x0) dS(x)1

2;

(4.2.12)

where PV denotes the principal-value integral computed by placing the evaluationpoint x0 precisely on the surface D. The plus and minus sign on the right-hand sideof (4.2.12) apply, respectively, when the point x0 on the left-hand side lies inside oroutside the control volume Vc.

4.2.6 Green’s function dipole

Differentiating a Green’s function with respect to the coordinates of the pole weobtain a vectorial singularity called the Green’s function dipole, given by

GD r0G(x;x0) = [

@G(x;x0)

@x0;@G(x;x0)

@y0;@G(x;x0)

@z0]; (4.2.13)

where the subscript “0” denotes differentiation with respect to the Cartesian compo-nents of x0. Physically, the scalar field

(x;x0) = d r0G(x;x0) (4.2.14)

represents the temperature or species concentration field due to a point source dipoleof heat or species located at the point x0. The direction and strength of the dipoleare determined, respectively, by the orientation and magnitude of the vector d.

Differentiating, for example, the right-hand side of (4.2.8), we derive the three-dimensional free-space point source dipole

GDi =

1

4

xi

r3; (4.2.15)

Page 113: Boundary Element Methods

98 A Practical Guide to Boundary-Element Methods

where i = 1, 2, 3 corresponds to x; y, z, x = x x0, and r = jx x0j. Thetemperature field due to a point source dipole of heat in free space is thus given by

T (x) =1

4

dxx+ dy y + dz z

r3; (4.2.16)

where the scalar coefficients dx, dy, and dz determine the orientation and strength ofthe dipole.

4.2.7 Green’s function quadruple

Higher derivatives of the Green’s function with respect to the coordinates of the poleyield higher-order tensorial singularities that are multi-poles of the point source. Thefirst three members of this family are the quadruple GQ, the octuple GO , and thesextuple GS .

The free-space quadruple is given by

GQij(x;x0) =

@GDj (x;x0)

@x0j=@2G(x;x0)

@x0i@x0j= 1

4(Æij

r3 3

xixj

r5);

(4.2.17)

where x = x x0 and r = jx x0j.

Problems

P.4.2.1 Delta function in three dimensions

Given the equality shown in the third line of (4.2.5), show thatZ1

0

eu2

u2 du =

p

4: (1)

P.4.2.2 Helmholtz’s equation

(a) Show that any two non-singular solutions of Helmholtz’s equation in three di-mensions

r2f(x; y; z) c f(x; y; z) = 0; (1)

satisfy the reciprocal relation (4.1.4); c is a real or complex constant.

(b) The Green’s functions of Helmholtz’s equation in three dimensions satisfy theequation

r2G(x;x0) c G(x;x0) + Æ3(x x0) = 0: (2)

Page 114: Boundary Element Methods

Laplace’s equation in three dimensions 99

Confirm that the free-space Green’s function is given by

G(x;x0) =1

4rexp(pc r); (3)

and discuss the behavior as r tends to zero or to infinity in relation to the free-spaceGreen’s function of Laplace’s equation.

P.4.2.3 Convection-diffusion in uniform flow

The steady-state temperature or species concentration field f(x; y; z) in a uniform(streaming) flow with constant velocity U = (Ux; Uy; Uz) is governed by the linearconvection – diffusion equation

Ux@f

@x+ Uy

@f

@y+ Uz

@f

@z= r2f; (1)

where is the thermal or species diffusivity. In vector notation, equation (1) takesthe compact form U rf = r2f . The corresponding Green’s function satisfiesthe equation

Ux@G(x;x0)

@x+ Uy

@G(x;x0)

@y+ Uz

@G(x;x0)

@z

= r2G(x;x0) + Æ3(x x0): (2)

Show that the free-space Green’s function is given by

G(x;x0) =1

H(x;x0) exp[

1

2U (x x0)]; (3)

where H(x;x0) is the Green’s function of Helmholtz’s equation given by the right-hand side of equation (3) of P.4.2.2 with c = jUj=(2). Thus,

G(x;x0) =1

4rexp[ 1

2[ jUj r U (x x0) ]: (4)

P.4.2.4 The biharmonic equation in three dimensions

The biharmonic equation in three dimensions reads

r4f(x; y; z) = 0; (1)

where r4 r2 r2 is the biharmonic operator, and r2 is the Laplacian operator.The corresponding Green’s function satisfies the equation

r4G(x;x0) + Æ3(x x0) = 0: (2)

Page 115: Boundary Element Methods

100 A Practical Guide to Boundary-Element Methods

Verify that the free-space Green’s function is given by

G(x;x0) =r

8; (3)

where r = jx x0j.

4.3 Integral representation

Applying Green’s second identity (4.1.3) for a non-singular harmonic function f(x)and a Green’s function G(x;x0) in place of (x), and using the definition (4.2.1),we obtain

f(x) Æ3(x x0) = r [G(x;x0)rf(x) f(x)rG(x;x0) ]; (4.3.1)

which is the three-dimensional counterpart of the one- and two-dimensional forms(1.3.1) and (2.3.1).

Next, we select a control volume Vc that is bounded by a closed surface or a collec-tion of closed surfaces denoted by D, as illustrated in Figure 4.1.1.

When the pole of the Green’s function x0 is placed outside Vc, the left-hand side of(4.3.1) is non-singular throughout Vc. Integrating both sides over Vc, and using thedivergence theorem (Appendix A), we findZ

D

[G(x;x0)rf(x) f(x)rG(x;x0) ] n(x) dS(x) = 0; (4.3.2)

where dS is the differential surface area of D.

On the other hand, when the pole x0 is placed inside Vc, the left-hand side of (4.3.1)is singular at the point x0. Using the distinctive properties of the delta function inthree dimensions to perform the integration, we find

f(x0) = ZD

G(x;x0) [n(x) rf(x)] dS(x)

+

ZD

f(x) [n(x) rG(x;x0)] dS(x); (4.3.3)

where the unit normal vector n points into the control volume enclosed by D, asshown in Figure 4.1.1.

Equation (4.3.3) provides us with a boundary-integral representation of a harmonicfunction in terms of the boundary values and the boundary distribution of the normal

Page 116: Boundary Element Methods

Laplace’s equation in three dimensions 101

derivative. To compute the value of f at a particular point x0 located inside a selectedcontrol volume, we simply evaluate the two surface integrals on the right-hand sideof (4.3.3).

A symmetry property allows us to switch the order of the arguments of the Green’sfunction in (4.3.3), writing G(x;x0) = G(x0;x) (see P.2.3.1). Using this property,we recast (4.3.3) into the form

f(x0) = ZD

G(x0;x) [n(x) rf(x)] dS(x)

+

ZD

f(x) [n(x) rG(x0;x)] dS(x): (4.3.4)

The two integrals on the right-hand side of (4.3.4) represent boundary distributions ofGreen’s functions and Green’s function dipoles oriented perpendicular to the bound-aries of the control volume, expressing boundary distributions of point sources andpoint source dipoles. Making an analogy with the corresponding boundary distribu-tions of electric charges and charge dipoles in electrostatics, we refer to the two inte-grals as the single-layer and double-layer harmonic potential. The densities (strengthper unit of surface area) of these potentials are equal, respectively, to the boundarydistribution of the normal derivative and to the boundary values of the harmonicpotential.

4.3.1 Green’s third identity

Applying the integral representation (4.3.3) with the free-space Green’s functiongiven in (4.2.8), we derive Green’s third identity in three dimensions,

f(x0) =1

4

ZD

[1

rrf(x) + f(x)

x0 x

r3] n(x) dS(x); (4.3.5)

where r = jx x0j, and the unit normal vector n points into the control volumeenclosed by the surface D.

4.3.2 Integral representation of the gradient

An integral representation for the gradientrf may be derived by repeating the anal-ysis of Section 2.3.3 in three dimensions. The result is

@f(x0)

@x0i=

ZD

@G(x0;x)

@x0i[n(x) rf(x)] dS(x)

+

ZD

f(x)@2G(x0;x)

@x0i@xjnj(x) dS(x); (4.3.6)

Page 117: Boundary Element Methods

102 A Practical Guide to Boundary-Element Methods

where summation over the repeated index j is implied on the right-hand side.

In the case of the free-space Green’s function, we depart from Green’s third identity(4.3.5) and derive the more specific form

@f(x0)

@x0i=

1

4

ZD

~xir3

[ n(x) rf(x)] dS(x)

+1

4

ZC

f(x) (Æij

r3 3

~xi ~xjr5

) nj(x) dS(x); (4.3.7)

where Æij is Kronecker’s delta, and ~x = x0x. Comparing the two integrands on theright-hand side with expressions (4.2.15) and (4.2.17), we find that the correspondingintegrals, and by extension the integrals in (4.3.6), represent boundary distributionsof point source dipoles and quadruples.

Problems

P.4.3.1 Mean-value theorem

Consider a harmonic function f(x; y; z) satisfying Laplace’s equation (4.1), and in-troduce a control volume enclosed by a spherical surface D of radius a centered atthe point x0. Apply Green’s third identity (4.3.5) to derive the mean-value theorem

f(x0) =1

4a2

ZD

f(x) dS(x): (1)

The right-hand side is the average value of f over the surface of the sphere.

P.4.3.2 Helmholtz’s equation

Show that a solution of Helmholtz’s equation in three dimensions, equation (1) ofP.4.2.2, admits the integral representation (4.3.4), where G(x;x0) is the correspond-ing Green’s function.

4.4 Integral equations

To derive integral equations for the boundary distribution of the harmonic function fand its normal derivative, we return to the integral representation (4.3.4), and take thelimit as the evaluation point x0 approaches a locally smooth boundary D. Carefulexamination shows that the single-layer potential varies continuously as the point x0

Page 118: Boundary Element Methods

Laplace’s equation in three dimensions 103

approaches and then crosses D. Concentrating on the double-layer potential, we useproperty (4.2.12) and find

limx0!D

ZD

f(x) [n(x) rG(x0;x)] dS(x)

=

Z PV

D

f(x) [n(x) rG(x0;x)] dS(x) +1

2f(x0); (4.4.1)

where PV denotes the principal-value integral.

Substituting (4.4.1) into (4.3.4) and rearranging, we find

f(x0) = 2ZD

G(x;x0) [n(x) rf(x)] dS(x)

+2

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x); (4.4.2)

where the point x0 lies precisely on the surface D, and the unit normal vector npoints into the control volume enclosed by D.

Written with the free-space Green’s function, the integral equation (4.4.2) takes theform

f(x0) =1

2

ZD

1

r[n(x) rf(x)] dS(x)

+1

2

Z PV

D

f(x)n(x) (x0 x)

r3dS(x); (4.4.3)

where r = jx x0j.

The boundary-element method is based on the following observations:

Specifying the boundary distribution of the function f , reduces equation (4.4.2)to a Fredholm integral equation of the first kind for the normal derivativen rf .

Specifying the boundary distribution of the normal derivative n rf , reducesequation (4.4.2) to a Fredholm integral equation of the second kind for theboundary distribution of f .

The free-space Green’s function exhibits a 1=r singularity, where r is the distance ofthe evaluation point from the singular point. Because the order of this singularity islower than the quadratic dimension of the variable of integration, the integral equa-tion is weakly singular. Consequently, the Fredholm-Riesz theory of compact oper-ators may be used to study the properties of the solution (e.g., [4]), and the improper

Page 119: Boundary Element Methods

104 A Practical Guide to Boundary-Element Methods

integral may be computed accurately by numerical methods, as will be discussed inChapter 5.

When D is a smooth surface with a continuously varying normal vector, as the in-tegration point x approaches the evaluation point x0, the normal vector n tends tobecome orthogonal to the nearly tangential vector (x x0). Consequently, the nu-merator of the integrand of the double-layer potential on the right-hand side of (4.4.3)behaves quadratically with respect to the scalar distance r = jx x0j, and the orderof the singularity is reduced from the nominal value of 1=r2 to the actual value of1=r. Because of the weak nature of the singularity, the Fredholm-Riesz theory ofcompact operators may be used to study the properties of the solution. The compu-tation of the principal value of the double-layer potential, however, requires carefulattention, as will be discussed in Chapter 5.

4.4.1 Boundary corners

Relation (4.2.12) and subsequent relations (4.4.1) and (4.4.2) are valid only when thesurface D is smooth in the neighborhood of the evaluation point x0, that is, D has acontinuously varying normal vector.

To derive an integral representation equation at a corner point, we note that the inte-gral of the three-dimensional Dirac delta function over the conical volume depictedin Figure 4.4.1(a) is equal to =(4). The solid angle is defined as the surface areaof the sector of the unit sphere that is centered at the point x0 and is enclosed by thecone. Using this property, we find that, when the point x0 lies at a boundary corner,as depicted in Figure 4.4.1(b), the boundary-integral representation takes the form

f(x0) = 4

ZD

G(x;x0) [n(x) rf(x)] dS(x)

+4

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x): (4.4.4)

When = 2, the boundary is locally smooth, and (4.4.4) reduces to the standardrepresentation (4.4.2).

4.4.2 Hypersingular equations

Integral equations for the boundary distribution of the gradient and normal derivativecan be derived from the integral representation (4.3.6) or (4.3.7), as discussed inSection 2.5.

Taking, for example, the limit as the point x0 approaches the boundary D, and pro-jecting the resulting expression onto the normal vector, we obtain the “hypersingular

Page 120: Boundary Element Methods

Laplace’s equation in three dimensions 105

0

α

α

(b)(a)

n

x

0x

Figure 4.4.1 Illustration of (a) a conical domain with apex at the point x0, and (b) acontrol volume whose boundary contains a corner.

integral equation”

1

2ni(x0)

@f(x0)

@x0i=

Z PV

D

ni(x0)@G(x0;x)

@x0i[n(x) rf(x)] dS(x)

+

Z FP

D

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dS(x); (4.4.5)

whereZ FP

D

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dS(x)

lim!0

ZD

f(x) ni(x0)@2G(x0;x)

@x0i@xjnj(x) dS(x)

1

2f(x0)

PV(4.4.6)

is the finite part of the integral; is the radius of a small disk centered at the pointx0 and excluded from the integration domain, and PV denotes the principal value ofthe integral enclosed by the curly brackets. Equation (4.4.5) is a Fredholm integralequation of the second kind for the boundary distribution of the normal derivative.

Problems

P.4.4.1 Conical boundaries

With reference to Figure 4.4.1(b), show that the solid angle can be evaluated as

= 4

Z PV

D

n(x) rG(x;x0) dS(x): (1)

Page 121: Boundary Element Methods

106 A Practical Guide to Boundary-Element Methods

x

C

ϕ

y

z

Figure 4.5.1 Illustration of an axisymmetric surface whose trace on the xy merid-ional plane is the contour C.

P.4.4.2 Shrinking spherical sectors

The integral representation (4.4.2) may be derived in an alternative fashion that cir-cumvents the unusual properties of the delta function. A key observation is thatthe integral identity (4.3.2) is valid so long as the evaluation point lies outside thesolution domain, however close the point is to the boundaries. Working as in Sec-tion 2.4.2 for the corresponding problem in two dimensions, but using a shrinkingspherical sector instead of a circular arc, reproduce the representation (4.4.4).

4.5 Axisymmetric fields in axisymmetric domains

Consider Green’s third identity (4.3.5), and assume that the solution domain andthe solution itself are both rotationally symmetric about the x axis, as illustratedin Figure 4.5.1. Because of the axial symmetry, the meridional component of thenormal vector over the boundaryD vanishes, n' = 0, the meridional component ofthe gradient rf is zero, and the function f and the axial and radial components ofrf depend on x and but not on '.

Taking advantage of these simplifications, and expressing the differential surface

Page 122: Boundary Element Methods

Laplace’s equation in three dimensions 107

area dS in the form d' dl, where dl is the differential arc length along the contourC of the surface in a meridional plane, we recast (4.3.5) into the form

f(x0; 0) = Z 2

0

ZC

G(x;x0)[ nx@f

@x+ n

@f

@](x) (x) dl(x) d'

+

Z 2

0

ZC

f(x)[ nx(x)@G(x;x0)

@x+ n(x)

@G(x;x0)

@] (x) dl(x) d':

(4.5.1)

An equivalent form is

f(x0; 0) = ZC

GAX (x; ; x0; 0)[ nx@f

@x+ n

@f

@](x) (x) dl(x)

+

ZC

f(x)[ nx(x)@GAX(x; ; x0; 0)

@x+ n(x)

@GAX(x; ; x0; 0)

@] (x) dl(x);

(4.5.2)

where GAX is the free-space axisymmetric Green’s function defined as

GAX(x; ; x0; 0) 1

4

Z 2

0

d'

jx x0j: (4.5.3)

Physically, the axisymmetric Green’s function represents the field at the point (x0; 0)due to a ring distribution of point-source singularities of radius positioned at x.

In vector notation, the integral representation (4.5.2) takes the form

f(x0; 0) = ZC

GAX(x; ; x0; 0) [n(x) rf(x)] (x) dl(x)

+

ZC

f(x) [n(x) rGAX(x; ; x0; 0)] (x) dl(x); (4.5.4)

where the unit normal vector n on the right-hand side points into the control areaenclosed by the contour C.

The corresponding integral equation is

f(x0; 0) = 2ZC

GAX(x; ; x0; 0) [n(x) rf(x)] (x) dl(x)

+2

Z PV

C

f(x) [n(x) rGAX(x; ; x0; 0)] (x) dl(x); (4.5.5)

where PV denotes the principal-value integral.

Page 123: Boundary Element Methods

108 A Practical Guide to Boundary-Element Methods

4.5.1 Computation of the free-space axisymmetric Green’s function

Expressing the position vector on the right-hand side of (4.5.3) in cylindrical polarcoordinates as y = cos', z = sin', y0 = 0 cos'0, and z0 = 0 sin'0, wefind

GAX (x; ; x0; 0)

=1

4

Z 2

0

d'p(x x0)2 + (y y0)2 + (z z0)2

=1

4

Z 2

0

d'

[(x x0)2 + ( cos 0 cos0)2 + ( sin 0 sin0)2]1=2

=1

4

Z 2

0

d(' '0)

[(x x0)2 + 2 + 20 20 cos(' '0)]1=2

=

4

Z 2

0

du

[(x x0)2 + 2 + 20 20 cosu]1=2

=1

4

Z 2

0

du

[(x x0)2 + ( + 0)2 4 0 cos2 u2]1=2

=1

p(x x0)2 + ( + 0)2

Z 2

0

dup1 k2 cos2 u

2

=F (k)

p(x x0)2 + ( + 0)2

;(4.5.6)

where u = ' '0, and

k2 4 0(x x0)2 + ( + 0)2

: (4.5.7)

We have introduced the complete elliptic integral of the first kind

F (k) Z =2

0

dp1 k2 cos2

; (4.5.8)

where is a dummy variable of integration.

In the limit as x tends to x0 and tends to 0, the dimensionless variable k tends tounity, and F (k) behaves like

F (k) ' ln4

k1+O(k21 ln k1); (4.5.9)

Page 124: Boundary Element Methods

Laplace’s equation in three dimensions 109

where

k21 1 k2 =(x x0)

2 + ( 0)2

(x x0)2 + ( + 0)2: (4.5.10)

Substituting (4.5.10) into (4.5.9) and the result into the last expression of (4.5.6), wefind that, in the limit as x tends to x0 and tends to 0,

GAX(x; ; x0; 0) ' 1

20ln[(x x0)

2 + ( 0)2]1=2: (4.5.11)

In this limit, the integrands of the single- and double-layer potential on the right-handsides of (4.5.4) and (4.5.5) reduce to the corresponding integrands of the boundary-integral representation for Laplace’s equation in two dimensions defined over a merid-ional plane.

4.5.2 BEMLIB directory lgf ax

Subdirectory lgf ax of directory laplace of BEMLIB contains subroutines thatevaluate (a) the free-space axisymmetric Green’s function, and (b) the axisymmetricGreen’s and Neumann functions for a semi-infinite domain bounded by a plane wallthat is perpendicular to the x axis.

4.5.3 Boundary-element methods

Boundary-element methods for solving Laplace’s equation in axisymmetric domainsare straightforward extensions of those for two-dimensional domains, as discussedin Chapter 3.

Subdirectory body ax in directory laplace of BEMLIB contains a code thatcomputes potential flow past, or due to the motion of, an axisymmetric body. Theproblem formulation and particulars of the numerical method are discussed in thecorresponding section of the BEMLIB user guide (Chapter 10).

Problem

P.4.5.1 BEMLIB code body ax

Study the mathematical formulation and the numerical method, and run the code insubdirectory body ax of directory laplace of BEMLIB for a configuration ofyour choice. Prepare graphs and discuss the results of your computation.

Page 125: Boundary Element Methods
Page 126: Boundary Element Methods

Chapter 5

Boundary-element methods for Laplace’sequation in three dimensions

In Chapter 3, we discussed the implementation of the boundary-element method forLaplace’s equation in two dimensions. The general methodology involves discretiz-ing the boundary of a selected control area into line elements with straight or curvedshapes, introducing approximations for the unknown function over the individualelements, and deriving systems of linear equations for the coefficients of the localexpansions by demanding the discrete satisfaction of the integral equation.

The approach can be extended in a straightforward fashion to encompass problemsin three-dimensional domains where the boundary-integral formulation provides uswith integral representations and integral equations defined over three-dimensionalsurfaces. The implementation of the boundary-element method involves discretizingthe surfaces enclosing a selected control volume into three-dimensional elementswith flat or curved shapes, introducing local approximations for the unknown func-tions in local surface coordinates, and, finally, generating and solving systems oflinear equations for the coefficients of the local expansions.

In this chapter, we illustrate the implementation of these steps for the most popularclass of three-dimensional elements with flat or curved triangular shapes. We shallsee that an important consideration in the development of numerical methods is theaccurate evaluation of the singular single- and double-layer integrals over the indi-vidual boundary elements. This concern makes the implementation of the boundary-element method in three dimensions significantly more challenging than that of itstwo-dimensional and axisymmetric counterparts.

5.1 Discretization

Consider the integral representation of a harmonic function in terms of the single-and double-layer potential defined over a surface D that encloses a selected controlvolume, as shown in equation (4.3.3). The boundary-element method involves dis-cretizing the surface D into a collection of N boundary elements, denoted by Ei,

111

Page 127: Boundary Element Methods

112 A Practical Guide to Boundary-Element Methods

where i = 1; : : : ; N , and replacing the integrals over D with sums of integrals overthe boundary elements to obtain the discrete representation

f(x0) = NXi=1

ZEi

G(x;x0) [n(x) rf(x)] dS(x)

+

NXi=1

ZEi

f(x) [n(x) rG(x;x0)] dS(x); (5.1.1)

where the unit normal vector n points into the control area enclosed by D.

5.1.1 Triangulation

Any open or closed three-dimensional surface may be triangulated, that is, dividedinto flat or curved triangular elements, each defined by a group of element nodes.The collection of the elements defines an unstructured surface grid defined by theglobal grid nodes.

Compared to a structured grid defined in global curvilinear coordinates over thewhole surface, the unstructured grid has two significant advantages: the local curvi-linear coordinates over each element are nonsingular, whereas the structured gridmay have singular points; and the element shape and size may be readily controlledto improve the spatial resolution at selected regions. Moreover, the unstructured dis-cretization is readily amenable to the finite-volume and finite-element formulationsfor solving partial differential equations in fixed or evolving domains.

As an example, we consider the triangulation of a three-dimensional surface intoflat triangles, as illustrated in Figure 5.1.1. Each triangle is defined by three nodesnumbered in the counterclockwise direction with respect to the normal vector, aswill be discussed in Section 5.2. The surface grid is described by the followingscalar labels and connectivity tables generated in the process of triangulation:

Element labels, printed in bold in Figure 5.1.1.

Global node labels, printed in italic in Figure 5.1.1.

Local node labels, printed in roman for one element in Figure 5.1.1. In thecase of flat triangles presently considered, the local node labels range over 1,2, and 3. In the case of the curved triangles to be discussed in Section 5.3, thelocal node labels range over 1; 2; : : : ; 6.

A two-dimensional array ne defined such that ne(i; 1) is the number of ele-ments sharing the ith global node. Subsequent entries,

ne(i; 2); : : : ; ne(i; ne(i; 1) + 1);

are the labels of the elements sharing the ith node.

Page 128: Boundary Element Methods

Boundary-element methods in three dimensions 113

1

23

4 56

n1

2

31

2

3

4

56 7

8

9

10

11

12

Figure 5.1.1 Triangulation of a three-dimensional surface into a grid of flat trianglesdefined by three nodes. The bold-faced numbers are the element labels, andthe italic numbers are the global node labels. The three roman numbers 1, 2,3, are the local node labels of the element on the right top corner.

A two-dimensional array n defined such that n(i; j) is the global label of thej local node of the ith element, where j = 1; 2; 3.

These records are useful for computing node from element values of surface func-tions and vice versa, and for performing various ancillary computations involved inthe boundary-element implementation.

Suppose, for example, that a surface function has been approximated with a piece-wise constant function over each element. The value of the function at the ith globalnode, denoted by fi, can be approximated with the average of the values of the func-tion on the elements that share that node, denoted by fEj , using the formula

fi =1

ne(i; 1)

ne(i;1)+1Xj=2

fEj : (5.1.2)

Several algorithms are available for triangulating planar and three-dimensional, openand closed surfaces, as reviewed in Reference [38]. The advancing-front method, inparticular, can be used to perform adaptive triangulation in physical or parameterspace, according to the local mean or directional curvature. The simplest discretiza-tion algorithm is based on element subdivision beginning with a hard-coded coarsepattern.

Page 129: Boundary Element Methods

114 A Practical Guide to Boundary-Element Methods

5.1.2 Successive subdivision

A closed three-dimensional surface with a compact shape can be triangulated in arecursive fashion by the process of successive element subdivision. To triangulate thesurface of a sphere, we introduce a regular tetrahedron, octahedron, or icosahedroninscribed within the sphere (these are the lowest-order polyhedra whose faces areequilateral triangles), and recursively subdivide the faces of the polyhedra into fourdescendant faces by connecting the edge mid-points, as illustrated in Figure 5.1.2.At the end, or in the meanwhile, the new vertices and mid-points are projected ontothe surface of the sphere. The final grid may then be deformed to yield a triangulatedthree-dimensional surface that is topologically similar to the sphere.

Program trgl in directory grids of BEMLIB triangulates a sphere based on thesuccessive subdivision of an octahedron or icosahedron, and then deforms the surfacegrid to produce an ellipsoidal shape with specified axes ratios. Typical triangulationsare shown in Figure 5.1.3.

5.1.3 Local element approximation

Having defined the boundary elements, we introduce local approximations for thedistribution of the harmonic function f and its normal derivative n rf .

In the simplest implementation, we approximate both distributions with constant

functions over each element, denoted respectively by fi and@f@n

i, where i =

1; : : : ; N , yielding the discrete boundary-element representation

f(x0) = NXi=1

@f

@n

i

ZEi

G(x;x0) dS(x)

+

NXi=1

fi

ZEi

[n(x) rG(x;x0)] dS(x): (5.1.3)

The integrals over the boundary elements on the right-hand side are the influencecoefficients associated with the single- and double-layer potential.

The counterpart of the representation (5.1.3) for a point x0 that lies on one of theboundary elements is

f(x0) = 2NXi=1

@f

@n

i

ZEi

G(x;x0) dS(x)

+2

NXi=1

fi

Z PV

Ei

[n(x) rG(x;x0)] dS(x): (5.1.4)

Page 130: Boundary Element Methods

Boundary-element methods in three dimensions 115

1

2

3

4

1

2

1

23

4

5

46

2

1

(b)

(a)3

3

Figure 5.1.2 Subdivision of (a) a flat, and (b) a six-node curved triangle into fourdescendant triangles.

Figure 5.1.3 Triangulation of the surface of a sphere based on the successive subdi-vision of an octahedron (left) or icosahedron (right).

Page 131: Boundary Element Methods

116 A Practical Guide to Boundary-Element Methods

The qualified PV , denoting the principal-value integral, applies only to those ele-ments that share the evaluation point x0.

5.1.4 Point collocation

To compute the unknown element values of the function f or its normal derivative,we apply the discretized integral equation (5.1.4) at the mid-point of each boundaryelement, denoted by xMj , where j = 1; : : : ; N , and obtain

f(xMj ) = 2NXi=1

@f

@n

i

ZEi

G(x;xMj ) dS(x)

+2

NXi=1

fi

Z PV

Ei

[n(x) rG(x;xMj )] dS(x): (5.1.5)

Setting f(xMj ) = fj , writing fi = Æij fj , and rearranging, we derive the algebraicrelation

(Aij 1

2Æij) fi = Bji

@f

@n

i

; (5.1.6)

where Æij is Kronecker’s delta; summation over the repeated index i is implied onboth sides of (5.1.6). We have introduced the coefficient matrices

Aij ZEi

G(x;xMj ) dS(x);

(5.1.7)

Bij Z PV

Ei

[n(x) rG(x;xMj )] dS(x): (5.1.8)

If the element values fi are specified, equation (5.1.6) provides us with a system of

linear algebraic equations for the normal derivatives@f@n

i, and vice versa.

5.1.5 High-order methods

The constant-element approximation underlying expression (5.1.4) is the simplestimplementation of the boundary-element method. Higher-order methods involve lin-ear, quadratic, or high-order polynomial expansions of the surface functions over theindividual boundary elements. The implementation of these methods will be dis-cussed in Section 5.4.

Page 132: Boundary Element Methods

Boundary-element methods in three dimensions 117

Problem

P.5.1.1 Boundary-element discretization

(a) Use program trgl in directory grids of BEMLIB to triangulate the surface ofa spheroid of your choice, and prepare a three-dimensional illustration of the trian-gulated surface.

(b) Write a subroutine called trgl tetra that triangulates the surface of the unitsphere based on the successive subdivisions of a tetrahedron, and prepare three-dimensional illustrations of a triangulated surface for three levels of discretization.

5.2 Three-node flat triangles

In the simplest implementation of the boundary-element method, the boundary el-ements of a triangulated surface have flat shapes defined by three vertex nodes, asillustrated on the left of Figure 5.2.1.

To describe the surface of an element in parametric form, we map the triangle in thephysical three-dimensional space to a right isosceles triangle in the parametricplane, as shown in Figure 5.2.1. The first element node is mapped to the origin, thesecond is mapped to the point = 1; = 0 on the axis, and the third is mapped tothe point = 0; = 1 on the axis.

The mapping from physical to parametric space is mediated by the function

x = x1 + x2 + x3 ; (5.2.1)

where = 1. The trio of surface variables (; ; ) constitutes the barycentrictriangle coordinates.

The tangential vectors in the directions of the or axes over the triangle are givenby

e =@x

@= x2 x1; e =

@x

@= x3 x1; (5.2.2)

the corresponding metric coefficients are given by

h j@x@j = jx2 x1j; h j@x

@j = jx3 x1j; (5.2.3)

and the unit normal vector is given by

n =1

hSe e; (5.2.4)

Page 133: Boundary Element Methods

118 A Practical Guide to Boundary-Element Methods

x 2

x 3

x 1

n

1

1

0

z

y

η

ξ

x

Figure 5.2.1 A flat triangle in three-dimensional space is mapped to a right isoscelestriangle in the plane.

where

hS = je ej = Det

24x1 x2 x3y1 y2 y3z1 z2 z3

35 (5.2.5)

is the surface metric, and Det denotes the determinant. The surface area of the trian-gle is equal to A = 1

2hS . Note that all metrics and the normal vector are constant,

independent of position over the surface of the triangle.

The integral of a function f(x) over the surface of the triangle in physical space isgiven by Z

Triangle

f(x) dS = hS

Z 1

0

Z 1

0

f [x(; )] d d: (5.2.6)

Setting f = 1 and performing the integration confirms our earlier statement that thesurface area of the triangle is equal to 1

2hS .

5.2.1 Non-singular triangles

If the surface function f(x) is non-singular over the surface of the triangle, the in-tegral (5.2.6) may be computed accurately using a quadrature that is specifically

Page 134: Boundary Element Methods

Boundary-element methods in three dimensions 119

designed for integrating over the surface of a triangle, according to the formula

ZTriangle

f(x) dS ' 1

2hS

NQXk=1

f [x(k; k)] wk; (5.2.7)

where:

NQ is a specified number of quadrature base points.

(k; k) are the coordinates of the kth base point located inside or along theedges of the right isosceles triangle in parametric space.

wk is the integration weight corresponding to the kth base point. The sum ofthe integration weights is equal to unity for any value of NQ, so that, when fis a constant function, quadrature (5.2.7) produces the exact answer.

Quadratures for integrating over triangles have been developed by several authors[12, 16]. Mathematical handbooks and texts on numerical methods provide us withtables of the triplets (k ; k; wk) parametrized by NQ. Subroutine gauss trglin subdirectory 07 integration of directory mum meth of BEMLIB containstabulated triplets for NQ = 1, 3, 4, 6, 7, 9, 12, and 13.

5.2.2 Single-layer integral over singular triangles

When the single-layer potential is evaluated at a vertex point of a flat triangle, theintegrand f(x) exhibits a 1=r singularity characteristic of the Green’s function ofLaplace’s equation in three dimensions.

Suppose, for example, that the singular point is the first vertex; if it is another vertex,the nodes are temporarily relabeled. The single-layer integral over the triangle takesthe form

I =

ZTriangle

q(x)

jx x1jdS

= hS

Z 1

0

Z 1

0

q[(x(; )]

j(x2 x1) + (x3 x1) jd d

=hS

jx2 x1j

Z 1

0

Z 1

0

q[(x(; )]p2 + 2B + C 2

d d; (5.2.8)

where q(x) is a non-singular surface function, and we have defined the constants

B =(x3 x1) (x2 x1)

jx2 x1j2; C =

jx3 x1j2jx2 x1j2

: (5.2.9)

Three methods of computing the improper single-layer integral are the following:

Page 135: Boundary Element Methods

120 A Practical Guide to Boundary-Element Methods

Introduce plane polar coordinates in the plane, denoted by (; ) and de-fined such that = cos and = sin, express the differential area inthe parametric plane as d d, and recast the last expression in (5.2.8) intothe form

I =hS

jx2 x1j

Z =2

0

R R()0

q(; ) dpcos2 +B sin 2+ C sin2

d; (5.2.10)

where

R() =1

cos+ sin: (5.2.11)

The change of variables has caused the singularity to disappear. The inner andouter integrals in (5.2.11) may be computed accurately by the Gauss-Legendrequadrature.

Express the integral in the form

I =hS

jx2 x1j

Z 1

0

Z 1

0

g[(x(; )]p2 + 2

d d; (5.2.12)

where

g[(x(; )] q[(x(; )]

2 + 2

2 + 2B + C 2

1=2

; (5.2.13)

and compute the integral on the right-hand side of (5.2.12) using a specializedintegration quadrature (e.g., [52]).

Approximate the surface function q[x(; )] with a constant or linear func-tion with respect to and over the triangle, and perform the integration byanalytical methods (e.g., [13]).

The first method is superior in terms of accuracy and ease of implementation.

5.2.3 Double-layer integral over singular triangles

When the single-layer potential is evaluated at a point x0 that lies on a flat triangle,the integrand of the principal value of the double-layer potential associated with thefree-space Green’s function is identically equal to zero,

n(x) rG(x;x0) = n(x) (x x0)1

4r3= 0; (5.2.14)

where r = jx x0j. This is because the vector (x x0) lies in the plane of thetriangle, and is thus perpendicular to the normal vector at any position.

Page 136: Boundary Element Methods

Boundary-element methods in three dimensions 121

0 ϕα

y

z

x

a

θx

n

Figure 5.2.2 The double-layer potential with constant density can be evaluated an-alytically over a spherical cap.

The vanishing of the double-layer potential over a flat triangle is a mixed blessing.On the one hand, we do not need to evaluate the corresponding influence coefficient,and we can simply set the diagonal elements of the matrix Bij introduced in (5.1.7)equal to zero. On the other hand, the associated discretization error is on the orderof Æ m=(4), where Æ is the perimeter of the triangle and m is the mean curvatureof the undiscretized surface. Unless the element size is sufficiently small, this errorcan be substantial.

To illustrate the issue of accuracy, we consider the principal value of the double-layerintegral over a spherical cap of radius a and aperture, evaluated at the cap axis, =0, as depicted in Figure 5.2.2. We note that n(x)(xx0) = a(1cos) = 2a sin2

2

and r = 2a sin 2

, and perform the integration in spherical polar coordinates to find

Z PV

Cap

n(x) rG(x;x0) dS(x)

=1

4

Z

0

2a sin2 2

(2a sin 2)3

2 a2 sin d =1

2sin

2: (5.2.15)

This formula shows that replacing a spherical cap with aperture angle = =2 witha flat triangle anchored at three points along the circumference introduces an erroron the order of 0.3, which is substantial.

Page 137: Boundary Element Methods

122 A Practical Guide to Boundary-Element Methods

Problems

P.5.2.1 Quadrature for integrating over a triangle

Use subroutine gauss trgl in subdirectory 07 integration of directorymum meth of BEMLIB to compute the integral of a surface function over a triangleof your choice, and discuss the accuracy of your results.

P.5.2.2 Double-layer integral

Evaluate (5.2.15) for = , and explain why the result is consistent with the integralidentity (4.2.11).

5.3 Six-node curved triangles

To account for the curvature of a surface, we use boundary elements with curvedsides and surfaces defined by six nodes, including three vertex nodes and three edgenodes, as illustrated on the left of Figure 5.3.1.

To describe the surface of an element in parametric form, we map each curved tri-angle in physical three-dimensional space to the familiar right isosceles triangle inthe plane, as illustrated in figure 5.3.1. The first element node is mapped to theorigin, the second is mapped to the point = 1; = 0 on the axis, the third ismapped to the point = 0; = 1 on the axis, the fourth is mapped to the point = ; = 0, the fifth is mapped to the point = ; = 1 , and the sixth ismapped to the point = 0; = .

The mapping from physical to parameter space is mediated by the function

x =

6Xi=1

xi i(; ); (5.3.1)

where (; ) are element-node cardinal interpolation functions defined as

2 =1

1

+

1

;

3 =1

1

+

+ 1

;

Page 138: Boundary Element Methods

Boundary-element methods in three dimensions 123

x 2

x 3

x

x4

6

x5

1

1

0α γ

β

1−γ

y

z

ξ

η

x 1 x

n

Figure 5.3.1 A curved six-node triangle in three-dimensional space is mapped to aright isosceles triangle in the plane.

4 =1

(1 ) (1 );

5 =1

(1 ) ;

6 =1

(1 ) (1 );

1 = 1 2 3 4 5 6; (5.3.2)

and

=1

1 + jx4x2j

jx4x1j

; =1

1 + jx6x3j

jx6x1j

; =1

1 + jx5x2j

jx5x3j

(5.3.3)

are geometrical parameters. If the edge nodes are located at the mid-points, = 1=2, = 1=2, and = 1=2, thus yielding the simplified forms

Page 139: Boundary Element Methods

124 A Practical Guide to Boundary-Element Methods

1 = (2 1); 2 = (2 1); 3 = (2 1);

4 = 4 ; 5 = 4 ; 6 = 4 ; (5.3.4)

where = 1 .

The tangential vectors in the directions of the or axes in physical space are givenby

e =@x

@=

6Xi=1

xi@i

@; e =

@x

@=

6Xi=1

xi@i

@; (5.3.5)

and the corresponding metric coefficients are given by

h(; ) j@x@j; h(; ) j@x

@j: (5.3.6)

The derivatives on the right-hand side of (5.3.5) may be computed by straightforwarddifferentiation of the expressions given in (5.3.2). The unit normal vector is given by

n(; ) =1

hSe e; (5.3.7)

where

hS(; ) = je ej (5.3.8)

is the surface metric. In contrast to the case of the three-node flat triangle, neitherthe metric coefficients nor the unit normal vector are constant over the surface of thesix-node curved triangle.

The integral of a function f(x) over the surface of the triangle is given byZTriangle

f(x) dS =

Z 1

0

Z 1

0

f [x(; )] hS(; ) d d: (5.3.9)

5.3.1 Non-singular triangles

If the function f(x) is non-singular over the surface of the triangle, the integral(5.3.9) may be computed accurately using a Gauss quadrature specifically designedfor the triangle, according to the formula

ZTriangle

f(x) dS ' 1

2

NQXk=1

f [x(k ; k)] hS(k ; k) wk ; (5.3.10)

as discussed in Section 5.2.

Page 140: Boundary Element Methods

Boundary-element methods in three dimensions 125

1

23

4 5

43 2

1

6

Figure 5.3.2 To evaluate the single-layer integral at a vertex node or edge node ofa curved triangle, we replace the triangle with four flat triangles and performthe integration over the individual subelements.

5.3.2 Single-layer integral over singular triangles

When the single-layer potential is evaluated at a vertex or edge node, the integrandf(x) exhibits a 1=r singularity characteristic of Green’s function. Suppose that thesingular point is the first vertex; if it is another vertex, the nodes are temporarilyrelabeled. Using expressions (5.3.1) and (5.3.2), we find

x x1 =

6Xi=1

xi [i(; ) Æi1]: (5.3.11)

The single-layer integral over the triangle takes the form

I =

ZTriangle

q(x)

jx x1jdS

=

Z 1

0

Z 1

0

q[(x(; )]

j P6

i=1 xi[i(; ) Æi1 ] jhS(; ) d d; (5.3.12)

where q(x) is a non-singular surface function. The last integral may be evaluatedaccurately by integrating in local polar coordinates, as shown in (5.2.10).

A more efficient method of evaluating the single-layer integral at vertex and edgenodes involves breaking up the curved triangle into four flat triangles, as illustratedin figure 5.3.2, and performing the integration over the individual subtriangles usingthe methods discussed in Section 5.2. For the non-singular subelements we use aGaussian quadrature, whereas for the singular subelements we perform the integra-tion in local plane polar coordinates whose origin lies at the singular point.

Page 141: Boundary Element Methods

126 A Practical Guide to Boundary-Element Methods

5.3.3 Double-layer integral over singular triangles

The evaluation of the double-layer integral over a curved triangle is more challeng-ing. Breaking up the curved triangle into four flat triangles yields vanishing sub-element contributions and incurs substantial numerical error, as discussed in Section5.2. When the integral is evaluated at a vertex node, the 1=r singularity of the double-layer potential may be eliminated by performing the integration in local plane polarcoordinates in the plane. The implementation of this method for the edge nodesis less straightforward.

When D is a closed surface, the double-layer integral is computed most accuratelyby removing the singularity at the outset using the integral identity (4.2.11). Themethod is implemented by recasting the principal-value integral of the double-layerpotential into the regularized form

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x) =ZD

[f(x) f(x0)] [n(x) rG(x;x0)] dS(x) +1

2f(x0): (5.3.13)

Using Taylor series expansions, we find that, as the integration point x approachesthe evaluation point x0, the modified integrand on the right-hand side is non-singular.The limiting value of the integrand, however, depends on the orientation of the nearlytangential vector (x x0), and the integral is not entirely regular (see P.5.3.2). Inpractice, the integral may be computed with high accuracy using a Gauss integrationquadrature for the triangle.

Problems

P.5.3.1 Cardinal interpolation functions

Verify that the ith interpolation function defined in (5.3.2) takes the value of unity atthe ith node and the value of zero at all other nodes.

P.5.3.2 Regularized double-layer

Consider the regularized double-layer integral shown on the right-hand side of equa-tion (5.3.13), computed over the spherical cap shown in Figure 5.2.2, for f(x) =c0 + c1 y = c0 + c1 sin cos', where c0 and c1 are constant coefficients. (a)Demonstrate the discontinuous behavior of the integrand at the evaluation point x0,and (b) compute the integral by analytical methods.

Page 142: Boundary Element Methods

Boundary-element methods in three dimensions 127

5.4 High-order expansions

Equations (5.1.3) and (5.1.4) have emerged by approximating the continuous sur-face function f and its normal derivative @f=@n with constant functions over theindividual boundary elements.

To improve the accuracy of the solution, the surface distributions may be approx-imated with bivariate or high-order polynomials with respect to the local trianglecoordinates , . The polynomial coefficients may then be found by applying theintegral representation at an appropriate number of nodes in the spirit of the spectral-element method discussed in Section 3.5.

Isoparametric representations arise when the order of the polynomial expansion overa triangular element matches the order of the geometrical interpolation that definesthe element.

5.4.1 Isoparametric linear expansion

When a surface has been discretized into flat triangles, as discussed in Section 5.2,we may assume that the surface function f and its normal derivative @f=@n varylinearly with respect to the local triangle coordinates and , and express them informs analogous to that shown in (5.2.1):

f(; ) = f1 + f2 + f3 ; (5.4.1)

and

@f

@n(; ) =

@f

@n

1

+

@f

@n

2

+

@f

@n

3

; (5.4.2)

where = 1 , and the subscripts are the local element node labels.

Substituting these expansions into the integral equation associated with the integralrepresentation (5.1.1), and requiring the satisfaction of the integral equation at theglobal nodes, we obtain a system of linear equation involving the element node val-ues of the harmonic function and its normal derivative. Because elements sharenodes, the linear system must be concatenated so that coincident element nodes arecompiled into sums multiplying unique global nodes. The coefficient matrix of thelinear system for the global nodes and associated right-hand side may be constructedby the following two methods:

Substitute the linear expansions (5.4.1) and (5.4.2) into the single- and double-layer potential, extract the element nodal values from the integrals, evaluate theintegrals using numerical methods, and make contributions to the appropriate

Page 143: Boundary Element Methods

128 A Practical Guide to Boundary-Element Methods

entries of the linear system for the global nodes, as dictated by the connectivitytable relating local element to global grid nodes. This method is commonplacein finite element implementations.

Generate the linear system by the method of impulses. The algorithm involvessetting the value of the harmonic function and its normal derivative to unity atone cardinal node, and to zero at all other nodes, computing the single- anddouble-layer potential by integrating over the elements that share the cardinalnode, and making appropriate entries to the coefficient matrix and to the right-hand side.

5.4.2 Isoparametric quadratic expansion

When a surface has been discretized into six-node curved triangles, as discussed inSection 5.3, we may assume that the surface function f and its normal derivative@f=@n vary quadratically with respect to the local triangle coordinates and , andexpress them in forms analogous to that shown in (5.3.1):

f(; ) =

6Xi=1

fi i(; ); (5.4.3)

and

@f

@n(; ) =

6Xi=1

@f

@n

i

i(; ): (5.4.4)

The implementation of the collocation method follows the steps outlined in Section5.4.1 for flat triangles.

Subdirectories ldr 3d and lnm 3d of directory laplace or BEMLIB containboundary-element codes that solve Laplace’s equation in the interior or exterior of aclosed surface subject to Dirichlet or Neumann boundary conditions.

5.4.3 Spectral-element methods

The isoparametric-expansion method can be generalized in the spirit of the spectral-element-collocation method in two dimensions discussed in Section 3.5. Orthogonalpolynomial expansions for triangular domains have been developed in References[15, 32]. The difficulty in computing the singular single- and double-layer inte-grals with sufficient accuracy has been an impediment to the implementation of thesemethods.

Page 144: Boundary Element Methods

Boundary-element methods in three dimensions 129

Problem

P.5.4.1 BEMLIB codes

(a) Use program ldr 3d in directory laplace of BEMLIB to solve Laplace’sequation in the interior of a sphere subject to Dirichlet boundary conditions of yourchoice, and discuss the accuracy of the numerical method.

(b) Repeat (a) for the exterior of a sphere.

(c) Use program lnm 3d in directory laplace of BEMLIB to solve Laplace’sequation in the exterior of a sphere subject to Neumann boundary conditions of yourchoice, and discuss the accuracy of the numerical method.

(d) Repeat (c) for the interior of a sphere.

Page 145: Boundary Element Methods
Page 146: Boundary Element Methods

Chapter 6

Inhomogeneous, nonlinear, andtime-dependent problems

In previous chapters, we have discussed integral representations, integral equations,and boundary-element methods for Laplace’s equation in two and three dimensions,with occasional reference to Helmholtz’s equation and the steady-state convection –diffusion equation. Prerequisites for applying the theoretical formulation and numer-ical methods to other differential equations of the general form

L[f(x)] = 0; (6.1)

where L[] is a differential operator, are the following:

The differential operator L[] is elliptic, that is, the solution of (6.1) is deter-mined exclusively by data specified around the boundaries of the solution do-main.

The differential equation is homogeneous, that is, if the boundary data are zero,then the solution is also zero.

The differential equation is linear, that is, if two functions satisfy the dif-ferential equation, then any linear combination of them will also satisfy thedifferential equation.

A Green’s function of the differential equation is available in analytical orreadily computable form.

In real life, we encounter problems involving inhomogeneous, nonlinear, and time-dependent (parabolic or hyperbolic) equations expressing evolution from an initialstate or wave propagation. Examples include the convection – diffusion equation inthe presence of a distributed source, the unsteady heat conduction equation, Burgers’equation, the Navier-Stokes equation, and the wave equation. To take advantage ofthe benefits of the boundary-integral formulation, we must extend the theoreticalfoundation and numerical implementation so that we can tackle this broader class ofequations.

In this chapter, we discuss the generalization of the boundary-integral formulationwith emphasis on practical implementation. In Sections 6.1-6.3 we discuss the so-lution of linear inhomogeneous equations and the computation of domain integrals

131

Page 147: Boundary Element Methods

132 A Practical Guide to Boundary-Element Methods

involving Green’s functions. In Section 6.4 we discuss nonlinear equations, and inSection 6.5 we review strategies for computing time-dependent solutions.

6.1 Distributed source and domain integrals

Consider the solution of a linear, elliptic, and inhomogeneous differential equationsubject to an appropriate set of boundary conditions. A standard method of removingthe source term that is responsible for the inhomogeneity involves three steps:

Split the solution into a particular solution and a homogeneous solution.

Find a particular solution by inspection or by elementary analytical methodswithout regard to the specified boundary conditions.

Compute the homogeneous solution by boundary-element methods subject tomodified boundary conditions that depend on the chosen particular solution.

For example, the mathematical formulation of the problem of pressure-driven uni-directional viscous flow through a tube with arbitrary cross-section is governed byPoisson’s equation for the axial velocity with a constant source term that is pro-portional to the pressure gradient in the streamwise direction. In this case, a par-ticular solution can be found by inspection, and the homogeneous solution satis-fying Laplace’s equation can be computed accurately and efficiently by boundary-element methods, as discussed in subdirectory flow 1d of directory laplace ofthe BEMLIB user guide (see Chapter 10).

More generally, the particular solution can be expressed in the form of a Newtonianpotential, that is, as a domain integral of the product of (a) the source term of thedifferential equation, and (b) a Green’s function of the corresponding homogeneousdifferential equation. For example, in two dimensions, a particular solution of thelinear, elliptic, and inhomogeneous differential equation

L[f(x)] + s(x) = 0; (6.1.1)

involving the source term s(x), is given by the Newtonian potential

N(x0) =

Z Zs(x)G(x0;x) dx dy; (6.1.2)

where the integral is computed over the solution domain, andG(x0;x0) is the Green’sfunction satisfying L[G(x;x0)]+Æ2(xx0) = 0. Operating on both sides of (6.1.2)by L[] acting with respect to x0, transferring the operation inside the integral, and

Page 148: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 133

using the definition of the Green’s function, we confirm that the particular solutionsatisfies (6.1.1).

When an exact particular solution is not available in a convenient analytical or nu-merical form, an approximation may be constructed by expressing the source terms(x) as a linear combination of M interpolation or influence functions i, conciselycalled basis functions, in the form

s(x) 'MXi

ci i(x); (6.1.3)

where ci are known coefficients. The basis functions are selected so that the equationL[i(x)] + i(x) = 0 may be readily solved for the parental function i. Recasting(6.1.3) into the form

s(x) ' L[MXi

ci i(x)] (6.1.4)

shows that an approximate particular solution of (6.1.1) is given by

fP (x0) 'MXi

ci i(x0): (6.1.5)

The particular solution (6.1.5) also arises by substituting (6.1.3) into the Newtonianpotential (6.1.2), and then using the reciprocal relation for the operatorL[] to convertthe areal integral to a boundary integral, as will be discussed in Sections 6.2 and6.3. This indirect approach is the preferred venue in the dual reciprocity methodintroduced by Nardini and Brebbia [47].

Domain integrals also arise when the Green’s function of a particular homogeneousdifferential equation is not available in readily computable form, and the Green’sfunction of a simpler differential equation is used in its place.

Consider, for example, Green’s second identity in two dimensions, equation (2.1.4).Assume that the function f satisfies Helmholtz’s equationr2f = 2 f , and identifythe arbitrary function with a Green’s function of Laplace’s equation, denoted byGL(x;x0). Working in the familiar way, we derive the boundary-integral represen-tation (2.3.3), except that the right-hand side also contains the Newtonian potential

N(x0) 2Z Z

f(x)GL(x0;x) dx dy: (6.1.6)

The domain integral has emerged by regarding the Helmholtz equation as a Poissonequation with a source term that involves the unknown function on the right-handside.

Taking the Laplacian of both sides of (6.1.6) with respect to x0, we find that theNewtonian potential N(x0) satisfies Poisson’s equation r2N = 2 f with an a

Page 149: Boundary Element Methods

134 A Practical Guide to Boundary-Element Methods

priori unknown right-hand side. We may now apply the method of approximateparticular solutions or the dual reciprocity method to derive an approximation tothe Newtonian potential similar to that shown in (6.1.4). In this case, however, thecoefficients ci must be computed as part of the solution.

Problem

P.6.1.1 Transforming the domain integral to a boundary integral

Show that the domain integral (6.1.6) may be expressed as a boundary integral in theform

2ZAc

f(x)GL(x;x0) dA(x)

=

ZC

[GL(x0;xGH(x0;x)] [n(x) rf(x)] dl(x)

ZC

f(x) fn(x) r[GL(x0;xGH(x0;x)]g dl(x); (1)

where GH(x;x0) is a Green’s function of Helmholtz’s equation.

6.2 Particular solutions and dual reciprocity in one dimension

It is convenient to introduce the method of approximate particular solution (MAPS)and the dual reciprocity method (DRM) with reference to Poisson’s equation in onedimension for an unknown function f(x),

d2f

dx2+ s(x) = 0; (6.2.1)

where s(x) is a given source term. When s(x) = 0, we obtain Laplace’s equation inone dimension discussed in Chapter 1. The solution of (6.2.1) is to be found over aspecified interval of the x axis, a x b, subject to two boundary conditions forthe function f(x) or its first derivative df(x)=dx at one or both ends x = a; b.

The general solution of (6.2.1) may be expressed as the sum of a homogeneous solu-tion fH satisfying Laplace’s equation d2fH=dx2 = 0, and a particular solution fP

satisfying (6.2.1),

f(x) = fH(x) + fP (x): (6.2.2)

Page 150: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 135

6.2.1 The Newtonian potential

A particular solution is given by the Newtonian potential

N(x0) Z b

a

s(x)G(x0; x) dx; (6.2.3)

where G(x; x0) is a Green’s function of Laplace’s equation in one dimension sat-isfying d2G(x; x0)=dx2 + Æ1(x x0) = 0, and Æ1 is Dirac’s delta function in onedimension; the free-space Green’s function is given by G(x; x0) = 1

2jx x0j.

Taking the second derivative of of (6.2.3) with respect to x0, transposing the orderof differentiation and integration on the right-hand side, and invoking the definitionof the Green’s function and the properties of the delta function, we confirm that thisparticular solution satisfies (6.2.1).

Consider now Green’s second identity in one dimension (1.1.3), and identify thefunction f(x) with the Newtonian potential and the function (x) with the Green’sfunction of Laplace’s equation, where the singular point x0 is placed inside the solu-tion domain, a < x0 < b. Using the definition of Green’s function, we find

G(x; x0) s(x) +N(x) Æ1(x x0)

=d

dx[G(x; x0)

dN(x)

dxN(x)

dG(x; x0)

dx]: (6.2.4)

Integrating (6.2.4) with respect to x over the solution domain [a; b] and using thedistinctive properties of the delta function, the definition (6.2.3), and the fundamentaltheorem of calculus, we obtain

G(x; x0)dN(x)

dxN(x)

dG(x; x0)

dx

x=bx=a

= 0; (6.2.5)

where the square brackets denote the difference of the enclosed expression evaluatedat x = b and a.

6.2.2 Integral representation involving a domain integral

Next, we recall the boundary-value representation of the homogeneous solution as-sociated with the Newtonian potential, denoted by fHN , and substitute the particularsolution (6.2.3) into (6.2.2) to obtain

f(x0) =

G(x; x0)

dfHN (x)

dx fHN (x)

dG(x; x0)

dx

x=bx=a

+N(x0): (6.2.6)

Adding the left-hand side of (6.2.5) to the right-hand side of (6.2.6) and recalling thedecomposition (6.2.2), we derive the alternative representation

Page 151: Boundary Element Methods

136 A Practical Guide to Boundary-Element Methods

f(x0) =

G(x; x0)

df(x)

dx f(x)

dG(x; x0)

dx

x=bx=a

+N(x0); (6.2.7)

which is preferable in view of the specified boundary conditions for f or df=dx.

Expression (6.2.7) can be derived directly by identifying the function(x) in Green’ssecond identity (1.1.3) with a Green’s function whose singular point x0 is placedinside the solution domain, a < x0 < b. Assuming that f(x) satisfies (6.2.1), wefind

G(x; x0) s(x) + f(x) Æ1(x x0)

=d

dx[G(x; x0)

df(x)

dx f(x)

dG(x; x0)

dx]: (6.2.8)

Integrating (6.2.8) with respect to x over the solution domain [a; b] and using thedistinctive properties of the delta function and the fundamental theorem of calculus,we recover (6.2.7).

The presence of the inhomogeneous source term s(x) in (6.2.1) has resulted in anintegral over the domain of solution complementing the boundary-value representa-tion expressed by the terms enclosed by the square brackets on the right-hand sidesof (6.2.6) and (6.2.7).

6.2.3 MAPS with cardinal interpolation functions

To compute an approximation to the particular solution, we distribute M data pointsover the solution domain, xi, i = 1; : : : ;M , where a xi b, introduce a corre-sponding set of cardinal interpolation functions Zi(x), and express the source termon the right-hand side of the Poisson equation (6.2.1) in the approximate form

s(x) 'MXi=1

s(xi) Zi(x): (6.2.9)

The cardinal interpolation functions are distinguished by the property Zi(xi) = 1and Zi(xj) = 0 if i 6= j, where summation over i is not implied over the repeatedindex i. For example, Zi(x) may be identified with the cubic-splines cardinal func-tions discussed in Section 3.2.

Moreover, we introduce parental functions Zi(x) associated with the cardinal inter-polation functions defined over the whole of the solution domain [a; b] by the relation

d2Zi(x)

dx2+ Zi(x) = 0: (6.2.10)

Page 152: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 137

Substituting (6.2.10) into (6.2.9), we find

s(x) ' MXi=1

s(xi)d2Zi(x)

dx2; (6.2.11)

which shows that an approximate particular solution of (6.2.1) is given by

fP (x) 'MXi=1

s(xi) Zi(x): (6.2.12)

The emerging solution procedure involves the following steps:

1. Specify the cardinal functionsZi(x) and compute the associated parental func-tions Zi using (6.2.10).

2. Compute the boundary values of the homogeneous solution fH or dfH=dxusing the specified boundary values of f or df=dx, the decomposition (6.2.2),and the approximation (6.2.12).

3. Compute the unknown boundary values of fH or dfH=dx using the boundary-value representation

fH(x) =

G(x; x0)

dfH(x)

dx fH

dG(x; x0)

dx

ba

; (6.2.13)

as discussed in Section 1.4.

4. Recover the unknown boundary values of f or df=dx based on (6.2.2) and(6.2.12).

The important benefit of this seemingly cumbersome method is that, because of thesmoothness of the parental functions Zi, the sum on the right-hand side of (6.2.12)converges much faster with respect to M than other sums approximating the domainintegrals on the left-hand side of (6.2.6) or (6.2.7).

6.2.4 DRM with cardinal interpolation functions

Alternatively, we substitute (6.2.11) into the domain integral defining the Newtonianpotential (6.2.3) to obtain

N(x0) ' MXi=1

Z b

a

d2Zi(x)

dx2G(x0; x) dx: (6.2.14)

Page 153: Boundary Element Methods

138 A Practical Guide to Boundary-Element Methods

Using Green’s second identity in one dimension, we recast the individual integralson the right-hand side of (6.2.14) into the formZ b

a

d2Zi(x)

dx2G(x0; x) dx

= Zi(x0) +"G(x0; x)

dZi(x)

dx Zi(x)

dG(x0; x)

dx

#x=bx=a

: (6.2.15)

Substituting the right-hand side of (6.2.15) into (6.2.14) and rearranging, we obtain

N(x0) ' fP (x0)G(x; x0)

dfP (x)

dx fP (x)

dG(x; x0)

dx

x=bx=a

; (6.2.16)

where the approximate particular solution fP is defined in (6.2.12). Finally, wesubstitute the right-hand side of (6.2.16) in place of the domain integral on the right-hand side of (6.2.7), use the decomposition (6.2.2), and recover the boundary-valuerepresentation (6.2.13).

As an example, we confirm the representation (6.2.16) by considering the solution of(6.2.1) over the interval [0, 1] for a uniform source term s(x) = 1. For illustration,we chooseM = 2, x1 = 0, and x2 = 1, and use the linear finite-element orB-splinecardinal interpolation functions (e.g., [60])

Z1(x) = 1 x; Z2(x) = x: (6.2.17)

The corresponding parental functions are found by integrating (6.2.10) using ele-mentary methods, and are given by

Z1(x) = c1 + c2 x1

2x2 +

1

6x3; Z2(x) = c3 + c4 x

1

6x3; (6.2.18)

where c1; c2; c3; and c4 are four arbitrary constants. Setting s(x1) = 1 and s(x2) =1, we find that the particular solution fP (x) defined in (6.2.12) is given by

fP (x) ' Z1(x) + Z2(x) = c1 + c3 + (c2 + c4) x1

2x2: (6.2.19)

For these specific choices, equation (6.2.16) with G(x; x0) = 12jx x0j yields

N(x0) 1

2

Z 1

0

jx x0j dx

' fP (x0)1

2[(1 x0) (

dfP

dx)x=1 + fP (x = 1)]

+1

2[x0 (

dfP

dx)x=0 fP (x = 0)] = 1

2(x20 x0 +

1

2); (6.2.20)

which is exact because of the absence of error in the interpolation of the source terms(x). The last expression in (6.2.20) is clearly a particular solution of (6.2.1) withunit source term.

Page 154: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 139

6.2.5 MAPS and DRM with influence functions

In practice, the cardinal interpolation functions introduced in (6.2.9) and their parentalfunctions may not be readily available. As a compromise, we introduce the approxi-mate expansion

s(x) 'MXi=1

i Hi(x); (6.2.21)

where Hi(x) are specified influence functions, and i are scalar coefficients com-puted by requiring the interpolation condition

s(xi) =

MXj=1

j Hi(xi); (6.2.22)

for j = 1; : : : ;M .

For convenience, we express the linear system (6.2.22) in the form

A = g; (6.2.23)

where Aij = Hi(xj), the vector contains the unknown coefficients i, and thevector g contains the known values s(xi). If the influence functions Hi(x) are car-dinal interpolation functions associated with the data points, then A reduces to theidentity matrix and the solution of (6.2.23) is simply = g.

Working as previously with the cardinal interpolation functions, we introduce theparental functions Hi(x) defined by the relation

d2Hi(x)

dx2+Hi(x) = 0 (6.2.24)

and build the particular solution

fP (x) 'MXi=1

i Hi(x); (6.2.25)

which is related to the Newtonian potential (6.2.3) by (6.2.16) (P.6.2.3).

The solution procedure involves the following steps:

1. Specify the influence functions Hi(x) and compute their parental functionsHi, or vice versa, using (6.2.24).

2. Compute the boundary values of the homogeneous solution fH or dfH=dx us-ing the specified boundary values of f or df=dx and the decomposition (6.2.2).

3. Compute the unknown boundary values of fH or dfH=dx based on the boundary-value representation (6.2.13).

4. Recover the unknown boundary values of f or df=dx based on (6.2.2).

Page 155: Boundary Element Methods

140 A Practical Guide to Boundary-Element Methods

6.2.6 Cardinal functions from influence functions

It is illuminating to solve equation (6.2.23) for the unknown vector in terms of theinverse matrix A1 and then substitute the result into (6.2.21) to obtain

s(x) = Hi(x) A1ij g(xj); (6.2.26)

where summation is implied over the repeated indices i and j in the range 1; : : : ;M .Comparing equation (6.2.26) with (6.2.9), we deduce that

Zj(x) = Hi(x) A1ij (6.2.27)

is a set of cardinal interpolation functions associated with the influence functionsHi.Thus, unless the matrix A is singular, to each set of influence functions correspondsa set of cardinal interpolation functions whose explicit construction appears to beredundant.

In practice, however, the basis functions must be selected with care so that the condi-tion number of the inverse matrixA1 is not excessively large. Otherwise, round-offerror may erode the accuracy of the solution.

Problems

P.6.2.1 Linear B-spline cardinal functions

(a) Verify that the Newtonian potential shown in (6.2.20) satisfies identity (6.2.5)with a = 0 and b = 1.

(b) Repeat the example discussed in the text involving equations (6.2.17) to (6.2.20)for the linear source term s(x) = x, and discuss the accuracy of the boundary-valuerepresentation (6.2.16).

P.6.2.2 Parental cubic-splines cardinal functions

Write a program that computes the parental functions of the cardinal cubic-splinesinterpolation functions associated with a specified set of nodes. Prepare graphs ofthese functions for a set of nodes of your choice.

P.6.2.3 Particular solution and Newtonian potential

Prove that the particular solution given in (6.2.25) is related to the Newtonian poten-tial (6.2.3) by (6.2.16).

Page 156: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 141

6.3 Particular solutions and dual reciprocity in two and threedimensions

Generalizing the analysis of Section 6.2, we consider Poisson’s equation in two di-mensions for an unknown function f(x; y),

r2f + s(x; y) = 0; (6.3.1)

where r2 is the Laplacian operator in the xy plane, and s(x; y) is a specified dis-tributed source. Dirichlet or Neumann boundary conditions are provided around theboundary C of a selected control area Ac. When s(x; y) = 0, we obtain Laplace’sequation in two dimensions discussed in Chapters 2 and 3.

The general solution of (6.3.1) may be expressed as the sum of a homogeneous so-lution fH satisfying Laplace’s equation r2fH = 0, and a particular solution fP

satisfying (6.3.1),

f(x; y) = fH(x; y) + fP (x; y): (6.3.2)

6.3.1 The Newtonian potential

A particular solution of (6.3.1) is given by the Newtonian potential

N(x0; y0) Z Z

Ac

s(x; y)G(x0;x) dx dy; (6.3.3)

where G(x;x0) is a Green’s function of Laplace’s equation in two dimensions sat-isfying r2G(x;x0) + Æ2(x x0) = 0, and Æ2 is Dirac’s delta function in the xyplane; the free-space Green’s function is given by G(x;x0) = 1

2ln r, where

r = jx x0j.

Taking the Laplacian of (6.3.3) with respect to x0, transposing the order of differ-entiation and integration on the right-hand side, and invoking the definition of theGreen’s function and the properties of the delta function, we confirm that this partic-ular solution satisfies (6.3.1).

Next, we consider Green’s second identity in two dimensions (2.1.4), and identifythe function f with the Newtonian potential and the function (x; y) with a Green’sfunction whose singular point x0 is located inside the selected control areaAc. Usingthe definition of the Green’s function, we find

G(x;x0) s(x; y) +N(x; y) Æ2(x x0)

= r[G(x;x0)rN(x) N(x)rG(x;x0) ]: (6.3.4)

Page 157: Boundary Element Methods

142 A Practical Guide to Boundary-Element Methods

Integrating (6.3.4) over the control area and using the distinctive properties of thedelta function, the definition (6.3.3), and the divergence theorem, we derive the iden-tity Z

C

fG(x0;x) [n(x) rN(x)] N(x) [n(x) rG(x0;x)] g dl(x) = 0:

(6.3.5)

6.3.2 Integral representation

Now, we recall the boundary-integral representation of the homogeneous solution as-sociated with the Newtonian potential, denoted by fHN , and substitute the particularsolution (6.3.3) into (6.3.2) to obtain

f(x0) = ZC

G(x0;x) [n(x) rfHN (x)] dl(x)

+

ZC

fHN (x) [n(x) rG(x0;x)] dl(x) +N(x0; y0): (6.3.6)

Adding the left-hand side of (6.3.5) to the right-hand side of (6.3.6) and recalling thedecomposition (6.3.2), we derive the alternative form

f(x0) = ZC

G(x0;x) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rG(x0;x)] dl(x) +N(x0; y0); (6.3.7)

which is preferable in view of the specified boundary conditions for f or its normalderivative n rf . Expression (6.3.7) could have been derived directly by applyingGreen’s second identity in its integral form for the function f .

6.3.3 MAPS and DRM with cardinal interpolation functions

To obtain an approximate particular solution, we distribute M data points over thecontrol volume Ac enclosed by C, located at (xi; yi), i = 1; : : : ;M , introduce acorresponding set of cardinal interpolation functionsZi(x; y), and express the sourceterm in the approximate form

s(x; y) 'MXi=1

s(xi; yi) Zi(x; y): (6.3.8)

By definition, the cardinal interpolation functions are distinguished by the propertyZi(xi; yi) = 1 and Zi(xj ; yj) = 0 if i 6= j, where summation over the repeated

Page 158: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 143

index i in not implied. Examples of cardinal interpolation functions include thefinite element pyramid-like functions, the bivariate cardinal cubic-splines functions,the B-spline surface functions, and the regular or moving least-squares interpolationfunctions (e.g., [60]).

Moreover, we introduce parental functions Zi(x; y) associated with the cardinalfunctions defined over the whole of the solution domain by the relation

r2Zi(x; y) + Zi(x; y) = 0: (6.3.9)

Substituting (6.3.9) into (6.3.8), we find

s(x; y) ' MXi=1

s(xi; yi)r2Zi(x; y); (6.3.10)

which shows that an approximate particular solution of (6.3.1) is given by

fP (x; y) 'MXi=1

s(xi; yi) Zi(x; y): (6.3.11)

The solution procedure involves the following steps:

1. Specify the cardinal functions Zi(x; y) and compute the parental functionsZi(x; y) by solving the Poisson equation (6.3.9).

2. Compute the boundary distribution of the homogeneous solution fH or itsnormal derivative using the specified boundary distribution for f or its normalderivative, the decomposition (6.3.2), and the approximation (6.3.11).

3. Compute the unknown boundary distribution of fH or its normal derivative bysolving the boundary-integral equation

fH(x0) = 2ZC

G(x0;x) [n(x) rfH(x)] dl(x)

+2

Z PV

C

fH(x) [n(x) rG(x0;x)] dl(x): (6.3.12)

4. Recover the unknown boundary values of f or its normal derivative based on(6.3.2) and (6.3.11).

The particular solution (6.3.11) is related to the Newtonian potential (6.3.3) by thefollowing counterpart of expression (6.2.16)

N(x0; y0) ' fP (x0; y0) +

ZC

G(x0;x) [n(x) rfP (x)] dl(x)

ZC

fP (x) [n(x) rG(x0;x)] dl(x): (6.3.13)

Note that the right-hand side of (6.3.13) remains unchanged when a non-singularharmonic function is added to the particular solution fP .

Page 159: Boundary Element Methods

144 A Practical Guide to Boundary-Element Methods

6.3.4 MAPS and DRM with influence functions

In practice, the cardinal interpolation functions defined in (6.3.8) may not be avail-able. As an alternative, we introduce the approximation

s(x; y) 'MXi=1

i Hi(x; y); (6.3.14)

where Hi(x; y) are influence functions and i are scalar coefficients computed byrequiring the interpolation condition

s(xj ; yj) =MXi=1

i Hi(xj ; yj); (6.3.15)

for j = 1; : : : ;M . Note that, for the right-hand side of (6.3.14) to be finite, thefunctionsHi(x; y) must be non-singular at the data points. Thus, regularity preventsus from identifyingHi(x; y) with Green’s functions or any other singular functions.

For convenience, we express the linear system (6.3.15) in the form

A = g; (6.3.16)

where Aji = Hi(xj ; yj), the vector contains the unknown coefficients i, and thevector g contains the known values g(xi; yi). If the influence functionsHi(x; y) arecardinal interpolation functions associated with the data points, then A reduces tothe identity matrix and the solution of (6.3.16) is simply = g.

Next, we introduce parental functions Hi(x; y) associated with the interpolationfunctions defined by the relation

r2Hi(x; y) +Hi(x; y) = 0; (6.3.17)

and build the particular solution

fP (x; y) 'MXi=1

i Hi(x; y): (6.3.18)

The solution procedure involves the following steps:

1. Specify the interpolation functions Hi(x; y) and compute the parental func-tions Hi(x; y), or vice versa, using (6.3.17). Two successfully tested choicesare Hi(x; y) = r and 1 + r, where r = [(x xi)

2 + (y yi)2]1=2 [51]. The

corresponding parental functions are Hi(x; y) = 19r3 and 1

4r2 1

9r3.

2. Solve the linear system (6.3.16) for the coefficient vector . In practice, thesolution is found by Gauss elimination or singular-value decomposition (e.g.,[60]). The choice of interpolation functions plays an important role in theaccuracy of the solution.

Page 160: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 145

3. Compute the boundary distribution of fH or its normal derivative using thespecified boundary conditions for f and the approximate particular solution(6.3.18).

4. Compute the unknown boundary distribution of fH or its normal derivative bysolving the integral equation (6.3.12).

5. Recover the unknown boundary distribution of f or its normal derivative basedon (6.3.2) and (6.3.18).

6.3.5 Cardinal functions from influence functions

Solving system (6.3.16) for the unknown vector in terms of the inverse matrixA1

and substituting the result into (6.3.13), we obtain

s(x; y) = Hi(x; y) A1ij s(xj ; yj); (6.3.19)

where summation is implied over i and j in the range 1; : : : ;M . Comparing thisequation with (6.3.8), we deduce that a set of cardinal functions associated with theinfluence functionsHi is given by

Zj(x; y) = Hi(x; y) A1ij : (6.3.20)

Thus, unless the matrix A is singular, to every set of influence functions correspondsa set of cardinal interpolation functions whose explicit construction appears to beredundant.

In practice, however, the basis functions must be selected with care so that the condi-tion number of the inverse matrixA1 is not excessively large. Otherwise, round-offerror may erode the accuracy of the solution.

6.3.6 Radial basis functions (RBF)

Radial basis functions (RBF) are influence functions Hi(x; y) that depend only onthe scalar distance of the evaluation point (x; y) from the corresponding datum point(xi; yi). Equation (6.3.20) provides us with a way of constructing cardinal interpola-tion functions corresponding to a given set of data points from a chosen set of radialbasis functions.

The proper selection of radial basis functions has been the subject of extensive dis-cussion in the literature of boundary element and meshless methods [19-22]. Anal-ysis has shown that radial basis functions of the type Hi(x; y) = r or er

2

areappropriate, and the thin-plate spline (TPS) Hi(x; y) = r2 ln r, which is identical tothe fundamental solution of the biharmonic equation, minimizes a properly definedinterpolation error.

Page 161: Boundary Element Methods

146 A Practical Guide to Boundary-Element Methods

6.3.7 General implementation of the DRM

The implementation of the dual reciprocity method for other types of inhomogeneousdifferential equations follows the basic steps outlined in this section for Poisson’sequation.

Consider, for example, the inhomogeneous Helmholtz equation in two dimensions,

r2f 2 f + s(x; y) = 0; (6.3.21)

where is a constant and s(x; y) is a specified distributed source. The counterpartof (6.3.17) defining the parental influence functions is

r2Hi(x; y) 2 Hi(x; y) +Hi(x; y) = 0: (6.3.22)

The solution for the thin-plate spline, Hi(r) = r2 ln r, is [11]

Hi(r) =4

4(1 + ln r) +

r2

2ln r +

4

K0(r); (6.3.23)

where K0 is a modified Bessel function (e.g., [2], p. 374). An approximate particu-lar solution is given by (6.3.18); the complementary homogeneous solution may becomputed by boundary-element methods.

The method of approximate particular solutions and the dual reciprocity method canbe extended in a straightforward fashion to three dimensions. Suitable radial basisfunctions are discussed in the references cited in Section 6.3.6.

Problems

P.6.3.1 Particular solution of Poisson’s equationfor a radially symmetric source function

Consider Poisson’s equation (6.3.1) with a radially symmetric source term s(r),where r =

px2 + y2. Requiring that the solution respects the radial symmetry, we

write f(x; y) = f(r), and express the Laplacian operator in plane polar coordinatesto derive the ordinary differential equation

1

r

d

dr

rdf

dr

+ s(r) = 0: (1)

The Newtonian potential (6.3.3) integrated over a diskoidal area of radius a centeredat the origin and evaluated at the radial position r0, where r0 < a, provides us withthe particular solution

N(r0) = 1

4

Z 2

0

Z a

0

s(r) ln[(x0 x)2 + (y0 y)2] r dr d; (2)

Page 162: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 147

where is the polar angle. Writing x0 = r0 cos 0, y0 = r0 sin 0, x = r cos , andy = r sin , and using elementary trigonometry, we find (x0 x)2 + (y0 y)2 =r2+ r20 2rr0 cos( 0). Substituting this expression into (2) and simplifying, wefind

N(r0) = 1

2

Z a

0

s(r)

Z

0

ln[r2 + r20 2rr0 cosu] du

r dr; (3)

where u 0. Referring to standard mathematical tables (e.g., [6], p. 293), wefind that the integral with respect to u enclosed by the parentheses is equal to 2 ln rwhen r > r0, and 2 ln r0 when r < r0. Thus,

N(r0) = Z r0

0

s(r) (ln r0) r dr Z a

r0

s(r) (ln r) r dr

=

Z r0

0

s(r) lnr

r0r dr

Z a

0

s(r) (ln r) r dr: (4)

The last integral is independent of r0 and may be discarded. Setting r = wr0, wherew is a dimensionless parameter ranging between 0 and 1, we derive the particularsolution

fP (r0) = r20

Z 1

0

s(w r0) (lnw) w dw: (5)

(a) Evaluate the right-hand side of (5) for s(r) = 1 + r, and verify that the resultsatisfies equation (1).

(b) Another way to derive the particular solution (5) is by integrating equation (1)twice from r = 0 to r0, finding

fP (r0) = Z r0

0

1

r

Z r

0

r0 s(r0) dr0dr: (6)

Setting r0 = t0r and r = tr0, where t and t0 are dimensionless parameters rangingfrom 0 to 1, we find

fP (r0) = r20Z 1

0

Z 1

0

t t0 s(t t0 r0) dt dt0: (7)

To reduce the double integral to a single integral, we introduce the new variablesw tt0 and v = t0, and invert these relations to obtain t = w=v and t0 = v. TheJacobian matrix of the (t; t0) to (w; v) transformation is

J

24 @t@w

@t@v

@t0

@w@t0

@v

35 =

24 1v wv2

0 1

35 : (8)

Page 163: Boundary Element Methods

148 A Practical Guide to Boundary-Element Methods

Expressing the differential area in the tt0 plane as Det(J)dw dv, where “Det” standsfor the determinant, we find

fP (r0) = r20Z 1

0

w s(wr0)(

Z 1

w

1

vdv) dw: (9)

Justify the limits of integration with respect to v and, carrying out the integrationwith respect to v, derive the particular solution (5).

P.6.3.2 Parental function of the TPS for Helhmholtz’equation

Verify by direct substitution that (6.3.23) satisfies (6.3.22) for the TPS, Hi(r) =r2 ln r.

P.6.3.3 Moving least squares approximation (MLS)

Interpolation and approximation of a function from an unstructured set of data scat-tered in the xy plane is an important aspect of the method of particular solutions andthe dual reciprocity method.

In one version of the method of moving least-squares interpolation (MLS) [39], a setof N data points located at (xi; yi) is used to construct the approximating function

gN(x; y) a1(x; y) 1(x; y) + a2(x; y) 2(x; y) + a3(x; y) 3(y; y)

+a4(x; y) 4(x; y) + a5(x; y) 5(x; y) + a6(x; y) 6(x; y); (1)

where 1 = 1, 2 = x, 3 = y, 4 = x2, 5 = xy, and 6 = y2 constitute acomplete set of quadratic basis functions in the xy plane. The coefficient functionsaj(x; y) are computed by minimizing the functional

E NXi=1

wi(x; y) [gN (xi; yi) gi]2 (2)

with respect to aj(x; y), where wi(x; y) are specified influence functions associatedwith the data points, and gi = g(xi; yi) are prescribed function values at the datapoints.

In the standard implementation of the MLS method, the individual influence func-tions derive from a specified master influence function W (p; q), as wi(x; y) =W (x xi; y yi). An example is the radial influence function

W (p; q) = W (r) =er

2

r2 + ; (3)

where r =pp2 + q2, and , are specified parameters (e.g., [39], p. 229).

Page 164: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 149

Setting @E=@aj = 0 for j = 1; : : : ; 6, we derive the matrix equation

B W BT a = B W g; (4)

where

B =

266664 1(x1; y1) 1(x2; y2) : : : 1(xN ; yN) 2(x1; y1) : : : : : : 2(xN ; yN)

: : : : : : : : : : : : 5(x1; y1) : : : : : : 5(xN ; yN) 6(x1; y1) 6(x2; y2) : : : 6(xN ; yN)

377775 ; (5)

is a 6N matrix,

W =

2664w2(x; y) 0 : : : 0

0 w2(x; y) : : : 0: : : : : : : : : : : :0 0 : : : wN (x; y)

3775 ; (6)

is an N N diagonal matrix,

a =

2664a1a2: : :a6

3775 and g =

266664g1g2: : :gN1gN

377775 ; (7)

are six- and N-dimensional vectors, and the superscript T denotes the matrix trans-pose.

If the master influence function W (r) is singular at the origin, then the approximat-ing function gN interpolates through the data points.

(a) Prepare a graph of the function gN(x; y) over the square 1 < x < 1, 1 <y < 1, for N = 4, (x1; y1; g1) = (0:5;0:4; 0:1), (x2; y2; g2) = (0:4;0:6; 0:3),(x3; y3; g3) = (0:6; 0:7; 0:7), and (x4; y4; g4) = (0:7; 0:2; 1:1), using the masterinfluence function W (r) = 1.

(b) Repeat (a) for the master influence function given in equation (3) with = 0:10and = 0:001.

(c) Develop a method of computing the cardinal functions associated with the mov-ing least-squares approximation.

Page 165: Boundary Element Methods

150 A Practical Guide to Boundary-Element Methods

6.4 Convection – diffusion equation

In Section 6.3, we discussed the solution of Poisson’s equation (6.3.1) describingdiffusion in the presence of a known distributed source. A generalization of Pois-son’s equation is the steady-state convection – diffusion equation in the presence ofa distributed source,

ux(x; y; f)@f

@x+ uy(x; y; f)

@f

@y= r2f + r(x; y; f); (6.4.1)

where is a positive constant with dimensions of length squared divided by time,defined as the medium diffusivity; ux(x; y; f) and uy(x; y; f) are the x and y com-ponents of the velocity, and r(x; y; f) is the source or production field.

Comparing equation (6.4.1) with (6.3.1), we observe that, in the extended frameworkpresently considered, the source term depends on the a priori unknown solution f aswell as on the unknown first spatial derivatives, and is given by

s(x; y; f) 1

[ux(x; y; f)

@f

@x uy(x; y; f)

@f

@y+ r(x; y; f) ]: (6.4.2)

This point of view provides a basis for an iterative solution procedure according tothe following steps:

1. Initialize or guess the solution f .

2. Compute the right-hand side of (6.4.2).

3. Solve Poisson’s equation (6.4.1) to obtain a new solution.

4. Repeat until convergence.

6.4.1 Linear convection

The most amenable class of linear problems arises when (a) the velocity field (ux; uy)explicitly depends on the spatial position, that is, it is independent of the unknownfunction f , and (b) the production term r is a linear function of f , and may thus beexpressed in the form r = a(x; y) f + b(x; y), where a(x; y) and b(x; y) are givenfunctions. Under these conditions, the right-hand side of (6.4.2) simplifies to

s(x; y; f) 1

[ux(x; y)

@f

@x uy(x; y)

@f

@y+ a(x; y) f + b(x; y) ]: (6.4.3)

We begin formulating the solution by introducing a set of M data points distributedover the solution domain including the boundaries and an associated set of interpo-

Page 166: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 151

lation or influence functions i(x; y), and write

f(x; y) 'MXi=1

i i(x; y): (6.4.4)

The scalar coefficients i are computed by requiring the interpolation conditions

f(xj ; yj) =

MXi=1

i i(xj ; yj); (6.4.5)

for j = 1; : : : ;M . In vector notation, system (6.4.5) takes the compact form

B = f ; (6.4.6)

where Bij i(xi; yj). If the influence functions i are cardinal interpolationfunctions, then B is the unit matrix.

Inverting (6.4.6), we obtain i = B1il fl, where the superscript “-1” denotes thematrix inverse, and summation over the repeated index l is implied in the range1; : : : ;M . Substituting this expression into (6.4.4) and switching j to i, we find

f(x; y) ' fl B1jl j(x; y); (6.4.7)

where summation over both repeated indices j and l is implied on the right-handside.

The spatial derivatives of f may be approximated with linear combinations of corre-sponding derivatives of the interpolation functions j ,

@f(x; y)

@x' fl B

1jl

@j(x; y)

@x;

@f(x; y)

@y' fl B

1jl

@j(x; y)

@y: (6.4.8)

Substituting the approximations (6.4.4) and (6.4.8) into the right-hand side of (6.4.3),we express the source term in the form

s(x; y; f) ' 1

"MXl=1

l(x; y) fl + b(x; y)

#; (6.4.9)

where

l(x; y) ux(x; y) B1jl@j(x; y)

@x

uy(x; y) B1jl@j(x; y)

@y+ a(x; y) B1jl j(x; y) (6.4.10)

Page 167: Boundary Element Methods

152 A Practical Guide to Boundary-Element Methods

are auxiliary fields defined in terms of the influence functions.

We have succeeded in expressing the convection – diffusion – production term as alinear combination of the unknown values of the solution at the data points, as shownon the right-hand side of (6.4.9). This completes the first phase of the implementa-tion.

In the second phase, we introduce expansions similar to that shown in (6.3.14) forthe individual functionsl(x; y) and for the function b(x; y) shown on the right-handside of (6.4.9),

l(x; y) 'MXl=1

(l)i Hi(x; y); b(x; y) '

MXl=1

(0)

i Hi(x; y); (6.4.11)

for l = 1; : : : ;M . The sets of coefficients (l)i , l = 0; : : : ;M , are computed byrequiring the interpolation conditions

b(xj ; yj) =MXi=1

(0)

i Hi(xj ; yj);

l(xj ; yj) =

MXi=1

(l)i Hi(xj ; yj); (6.4.12)

for j = 1; : : : ;M .

An approximate particular solution of Poisson’s equation (6.3.1) with the linear dis-tributed source shown in (6.4.3) is given by

fP (x; y) ' 1

MXi=1

[(0)i +

MXl=1

(l)i fl] Hi(x; y)

=1

MXi=1

(0)

i Hi(x; y) +1

MXl=1

fl [

MXi=1

(l)i Hi(x; y)]: (6.4.13)

The last expression illustrates the linear dependence of (x; y) on the unknown datavalues fl. When only the last term is present on the right-hand side of (6.4.3), ex-pression (6.4.13) takes the simplified form of (6.3.18) with i =

(0)

i =.

The general solution of (6.4.1) is f = fH + fP , where the homogeneous solutionfH satisfies Laplace’s equation r2fH = 0. Introducing the boundary-integral rep-resentation of fH and evaluating the approximate particular solution (6.4.13) aroundthe boundary as well as at the data points (xj ; yj), i = 1; : : : ;M , we obtain a com-plete system of linear integral/algebraic equations for the boundary distribution of for its normal derivative, and for the field values fi.

Page 168: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 153

As an example, we regard Helmholtz’s equation r2f = 2 f as Poisson’s equationforced by the source term s(f) = 2 f . Comparing this expression with the stan-dard form (6.4.3), we find ux = 0, uy = 0, a(x; y) = 2, and b = 0. Theintermediate functions defined in (6.4.10) take the simple forms

l(x; y) = 2 B1jl j(x; y): (6.4.14)

Identifying the set of influence functions j with the set of dual reciprocity functionsHj , and comparing expression (6.4.14) with the second of expressions (6.4.12), we

find (l)i = 2 B1il . The particular solution is given by

fP (x; y) ' 2MXl=1

fl [

MXi=1

B1il Hi(x; y)]: (6.4.15)

In matrix-vector notation,

fP (x; y) ' 2 h B1 f ; (6.4.16)

where the ith entry of the vector h is occupied by the influence function Hi(x; y),and the ith entry of the vector f is the unknown field value fi. Combining expres-sion (6.4.16) with the boundary-integral representation for the homogeneous solutionfH , we obtain the set of equations necessary for the computation of the boundarydistribution of f or its normal derivative, and for the field values fi.

6.4.2 Nonlinear convection

Nonlinear problems arise when the right-hand side of the source term defined in(6.4.2) is a nonlinear function of the a priori unknown function f . The analysisprovides us with nonlinear algebraic equations relating the particular solution fP tothe vector data field f . Because of the nonlinearity, the solution must be found byiterative methods.

To illustrate the procedure, we consider the convection – diffusion equation with aBurgers convection term in the x direction,

r2f = f@f

@x; (6.4.17)

where is a constant. In this case, the Poisson source term is a quadratic function off given by

s(f) = f@f

@x: (6.4.18)

Substituting (6.4.7) and the first of (6.4.8) into the right-hand side of (6.4.18), weobtain

Page 169: Boundary Element Methods

154 A Practical Guide to Boundary-Element Methods

s(f) ' fl B

1jl j(x; y)

@q(x; y)

@xB1qp fp

1

fl l(x; y; f); (6.4.19)

where summation is implied over all repeated indices in the range 1; : : : ;M , and wehave introduced the linear functions of fp

l(x; y; f) B1jl j(x; y)@q(x; y)

@xB1qp fp: (6.4.20)

The solution may be found by iteration according to the following steps:

1. Initialize or guess the field values fp on the right-hand side of (6.4.20), andcompute the functions l.

2. Introduce the second expansion of (6.4.12), and solve the linear problem asdiscussed in Section 6.4.1.

3. Update the field values fp on the right-hand side of (6.4.20).

4. Repeat until convergence.

Problem

P.6.4.1 Nonlinear production

Develop an algorithm for computing the solution of the nonlinear diffusion-productionequation

r2f = fm; (1)

for values of the exponent (a) m = 2 and (b) 3/2, where is a positive constant.

6.5 Time-dependent problems

Laplace’s equation, Poisson’s equation, and the inclusive convection – diffusionequation (6.4.1) describe the steady-state or time-independent spatial distribution ofa physical variable such as temperature, species concentration, or fluid momentum.

Page 170: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 155

If the field changes in time, then the unknown function f depends on the spatialcoordinates (x; y; z) as well as time t.

In one class of problems, physical conservation laws provide us with evolution equa-tions involving the rate of change of a function f expressed by the first time deriva-tive @f=@t. In another class of problems, Newton’s second law of motion providesus with evolution equations involving particle acceleration expressed by the secondtime derivative @2f=@t2.

Consider, for example, unsteady convection – diffusion in the presence of productiongoverned by the equation

@f

@t+ ux

@f

@x+ uy

@f

@y+ uz

@f

@z= r2f + r; (6.5.1)

which is a generalization of (6.5.1). An initial condition and boundary conditions forthe unknown field f are assumed to be provided.

Three general methods are available for solving problems of this kind by boundary-integral methods:

1. Develop an integral formulation that involves the Green’s function of the un-steady equation representing the field due to an impulsive source.

2. Eliminate the time dependence by applying the Laplace transform.

3. Discretize the differential equation in time by approximating the time deriva-tive with finite differences, and apply the boundary-element method to thetime-discretized equation.

We shall demonstrate the implementation of these methods with reference to theunsteady diffusion equation

@f

@t= r2f; (6.5.2)

which is a simplified, but not contrived, version of (6.5.1).

6.5.1 Unsteady Green’s functions method

A Green’s function of the unsteady diffusion equation (6.5.2) satisfies the equation

@G(x;x0; t t0)

@t= r2G(x;x0; t t0) + Æn(x x0) Æ1(t t0);

(6.5.3)

where n = 1; 2; 3 is the dimension of the solution space determining the form of theLaplacian and the choice of the delta function on the right-hand side. Physically, the

Page 171: Boundary Element Methods

156 A Practical Guide to Boundary-Element Methods

Green’s function expresses the evolving temperature or species concentration fielddue to an impulsive point source of heat or species activated at time t0 at the positionx0 in a conducting or diffusive medium with uniform diffusivity .

The free-space Green’s function is equal to zero for negative elapsed times t tt0,and is given by

G(x;x0; t t0) =1

(4 t)n=2exp( r2

4 t) (6.5.4)

for positive elapsed times t t t0, where r = jx x0j is the distance of theevaluation point from the singular point. Green’s functions of the inclusive unsteadyconvection – diffusion equation are discussed in Reference [58].

It will be necessary to introduce the Green’s function of the adjoint of the unsteadydiffusion equation, denoted by G, satisfying

@G(x;x0; t t0)

@t= r2G(x;x0; t t0) + Æn(x x0) Æ1(t t0):

(6.5.5)

The adjoint free-space Green’s function is equal to zero for positive elapsed timest t t0, and is given by

G(x;x0; t t0) = G(x;x0; jt t0j) (6.5.6)

for negative elapsed times t t t0.

To develop the boundary-integral representation, we consider Green’s second iden-tity in one, two, or three dimensions, expressed by equation (1.1.3), (2.1.4), or(4.1.3), and recast it into the form

@f@t

+ r2f

+@(f )

@t f

@

@t+ r2

= r (rf f r): (6.5.7)

Next, we assume that f is a solution of (6.5.2), and thus eliminate the term enclosedby the first set of parentheses on the left-hand side of (6.5.7), and identify with theadjoint Green’s functionG to obtain

@(f G)

@t+ f Æn(x x0) Æ1(t t0) = r (G rf f rG); (6.5.8)

for t t0.

For clarity, we confine our attention to the two-dimensional case, n = 2, select a sta-tionary control areaAc enclosed by the contourC, and integrate (6.5.8) in space over

Page 172: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 157

the control area and in time from the initial instant t = ts up to the current instantt0+ (the plus sign denotes the upward limit). Using the distinguishing properties ofthe delta function Æ1(t t0), applying the divergence theorem to convert the areaintegral to a contour integral on the right-hand side, and invoking property (6.5.6),we find

Z ZAc

f(x; t)G(x;x0; t0 t) dx dy

t=t0+t=ts

+

Z ZAc

f(x; t0) Æ2(x x0) dx dy

= Z t0

ts

ZC

G(x;x0; t0 t) [n(x) rf(x; t)] dl(x) dt

+

Z t0

ts

ZC

f(x; t) [n(x) rG(x;x0; t0 t)] dl(x) dt; (6.5.9)

where the unit normal vector n points into the control areaAc. When evaluated at theupper limit t = t0+, the Green’s function vanishes, and so does the term enclosedby the first set of parentheses on the left-hand side of (6.5.9).

Placing the singular point x0 inside the control volume Ac, using the properties ofthe delta function to evaluate the second integral on the left-hand side of (6.5.9), andrearranging, we obtain the integral representation

f(x0; t0) = Z Z

Ac

f(x; ts)G(x;x0; t0 ts) dx dy

Z t0

ts

ZC

G(x;x0; t0 t) [n(x) rf(x; t)] dl(x) dt

+

Z t0

ts

ZC

f(x; t) [n(x) rG(x;x0; t0 t)] dl(x) dt; (6.5.10)

involving: (a) a domain integral whose integrand is defined in terms of the unsteadyGreen’s function, and (b) two boundary integrals. Physically, these integrals repre-sent the field due to diffusing point sources and point-source dipoles distributed overthe boundaries of the solution in the space-time domain.

If time-independent Dirichlet boundary conditions are specified, the solution willtend to a steady state at long times. Indeed, for long elapsed times t0ts, the Green’sfunction in the first integral on the right-hand side of (6.5.10) decays exponentially tozero, yielding the representation (2.3.3) with the steady Green’s function, as shownin equation (1) of P.6.5.1.

Page 173: Boundary Element Methods

158 A Practical Guide to Boundary-Element Methods

6.5.2 Laplace transform method

To develop this method, we introduce the Laplace transform of the unknown functionf defined as

f(x; s) Z1

0+

f(x; t) estdt; (6.5.11)

where s is a real or complex constant whose real part is sufficiently large so thatthe integral on the right-hand side of (6.5.11) is finite and 0+ denotes the upwardlimit. Thus, in the case of an impulsive field exhibiting a discontinuity at the initialinstant, the lower limit of integration in (6.5.11) corresponds to the nontrivial stateestablished immediately after the impulse.

Multiplying both sides of the governing equation (6.5.2) by est, integrating withrespect to time from 0+ to infinity, and writingZ

1

0+

@f(x; t)

@testdt =

f(x; t) est

10+Z1

0+f(x; t) dest

= f(x; t = 0+) + s

Z 1

0+f(x; t) est dt

= f(x; t = 0+) + s f(x; s); (6.5.12)

we derive the inhomogeneous Helmholtz equation

r2f(x; s) s f(x; s) + f(x; t = 0+) = 0: (6.5.13)

Having eliminated the time dependence, we may solve equation (6.5.13) for a se-quence of real or complex values for s using the methods discussed in previous sec-tions, and then recover the solution in terms of the inverse Laplace transform bynumerical methods (e.g., [14]).

Stehfest’s method [65] of inverting the Laplace transform is based on the weighted-sum formula

f(x; t) ' ln 2

t

2mXi=1

' ci f(x; si); (6.5.14)

where m is a specified truncation level, and

si =m ln 2

t;

(6.5.15)

ci = (1)i+mMin(i;m)Xj=[ i+1

2]

jm (2j)!

(m j)! j! (j 1)! (i j)! (2j i)!:

Page 174: Boundary Element Methods

Inhomogeneous, nonlinear, and time-dependent problems 159

The operator [ i+12] denotes the integral part of the enclosed variable and the operator

Min(i;m) denotes the minimum of i and m.

6.5.3 Time-discretization methods

Brebbia and Walker [10] proposed approximating the time derivative in (6.5.2) witha finite difference involving two or more time levels, evaluating the right-hand sideat an appropriate time instant, and then computing the solution at a new time levelusing the boundary-element method.

The general form of a two-time level discretization scheme is

fn+1 fn

t=

r2fn+1 + (1 )r2fn

; (6.5.16)

where is an arbitrary parameter ranging between zero and unity, and the super-scripts n and n+1 denote, respectively, evaluation at time t and t+t. The error ofthe temporal discretization underlying (6.5.16) is on the order of t2 when = 1=2,and t otherwise.

The explicit Euler discretization, arises when = 0, the implicit Crank-Nicolsondiscretization arises when = 1=2, and the implicit Euler discretization arises when = 1. Numerical analysis shows that, with the explicit discretization, an exces-sively small time step t is required for a stable simulation that is free of artificialoscillations (e.g. [60]). Partially implicit discretizations allow the use of larger timesteps and are the standard choice in practice.

Moving the terms containing the unknown solution fn+1 in (6.5.16) to the left-handside and rearranging, we obtain the inhomogeneous Helmholtz equation

r2fn+1 1

tfn+1 = 1

r2fn 1

tfn: (6.5.17)

The solution for fn+1 can be found for a succession of time levels by the methodsdiscussed in previous sections, yielding the time evolution.

Problems

P.6.5.1 Steady from unsteady Green’s functions

The steady field due to a permanent point source with constant strength is given by

(x;x0) =

Z t

1

G(x;x0; t t0) dt0: (1)

Page 175: Boundary Element Methods

160 A Practical Guide to Boundary-Element Methods

Substitute the Green’s function (6.5.4) into the integrand and carry out the integrationfor n =1, 2, and 3 to show that (x;x0) is, in fact, the Green’s function of Laplace’sequation in the corresponding dimension.

P.6.5.2 Green’s functions of the wave equation

A Green’s function of the wave equation satisfies the equation

@2G(x;x0; t t0)

@t2= c2 r2G(x;x0; t t0) + Æn(x x0) Æ1(t t0); (1)

where c is the wave speed, and n =1, 2, 3 is the dimension of the solution space de-termining the form of the Laplacian and the choice of the delta function on the right-hand side. The last term on the right-hand side of (1) has dimensions of LnT1,where L stands for length and T for time.

(a) Verify by direct substitution that the free-space Green’s function in one dimension(n = 1) is given by

G(x; x0; t) =1H(jx x0j c t)

2c; (2)

where t t t0 is the elapsed time; the Heaviside step function H(w) is equal tounity when w > 0, and zero when w < 0 ([45], p. 843). Prepare graphs of theGreen’s function at a sequence of times and discuss its behavior.

(b) Verify by direct substitution that the free-space Green’s function in two dimen-sions (n = 2) is given by

G(x;x0; t) =1H(r c t)

2c

1pr2 c2t2

; (3)

where r = x x0 is the scalar distance of the evaluation point from the singularpoint ([45], p. 842). Prepare graphs of the Green’s function at a sequence of times,and discuss its behavior.

(c) Verify by direct substitution that the free-space Green’s function in three dimen-sions (n = 3) is given by

G(x;x0; t) =1

4c2 rÆ1(

r

c t); (4)

where r = jx x0j is the scalar distance of the evaluation point from the singularpoint ([45], p. 838).Equation (4) describes a spherical shell expanding away from the origin with radialvelocity c.

(d) Develop an integral formulation similar to that discussed in Section 6.5.1 for theunsteady diffusion equation ([45], Ch. 7).

Page 176: Boundary Element Methods

Chapter 7

Viscous flow

In the preceding chapters, we have discussed boundary-integral formulations andboundary-element methods for scalar differential equations, including Laplace’s equa-tion, Helmholtz’s equation, and the convection – diffusion equation.

The theoretical formulation and numerical implementation can be extended in astraightforward fashion to encompass systems of coupled differential equations forvector unknowns. The boundary-integral formulation involves the familiar sequenceof six steps: establish a reciprocal relation; introduce the Green’s functions; developthe boundary-integral representation; derive boundary-integral equations; generateand solve linear systems of equations by collocation or Galerkin projection. Inhomo-geneous, nonlinear, and time-dependent equations can be solved by the generalizedboundary-integral methods discussed in Chapter 6.

In this chapter, we illustrate the procedure by discussing the boundary-integral for-mulation of viscous flow at low Reynolds numbers. In Appendix C, we summarizecorresponding results in elastostatics in a way that parallels this chapter’s discourse.The similarities in the treatment of viscous flow and elastostatics underscores thegenerality of the basic approach.

7.1 Governing equations

Referring to a frame of reference that is fixed in space, let us observe the flow of anincompressible fluid with velocity u = (ux; uy; uz).

Mass conservation expressed by the continuity equation requires that the divergenceof the velocity vanish (e.g., [59]),

r u @ux

@x+@uy

@y+@uz

@z= 0: (7.1.1)

Consider an infinitesimal surface drawn in the interior of a fluid or at the boundaries,lying in a plane that is perpendicular to the unit vector n. The force per unit areaacting on this surface, denoted by f , is called the traction. By definition, the traction

161

Page 177: Boundary Element Methods

162 A Practical Guide to Boundary-Element Methods

depends on position in the fluid, x, and on the orientation of the infinitesimal surfacedetermined by the unit vector n. To signify this dependence, we write f(x;n).

Analysis reveals that the traction vector depends linearly on the normal vector,

fj(x;n) = ni ij(x); (7.1.2)

where ij is the Cauchy stress tensor (e.g., [59]); summation over the repeated indexi in the spatial coordinates x, y, and z is implied on the right-hand side of (7.1.2).

Applying Newton’s second law to describe the motion of a small fluid parcel, wederive Cauchy’s equation of motion

@ui

@t+ uj

@ui

@xj

=@ji

@xj+ gi; (7.1.3)

where is the fluid density [59]; summation over the repeated index j is implied onboth sides. The last term, gi, expresses the effect of an external long-range bodyforce. In the case of the gravitational force, g is the acceleration of gravity.

In terms of the material derivativeD=Dt @=@t+uj@=@xj , the equation of motionreads (e.g., [59])

Dui

Dt=@ji

@xj+ gi: (7.1.4)

Physically, the material derivative expresses the rate of change of a quantity experi-enced by an observer who rides on a point particle convected by the fluid.

In vector notation, the equation of motion takes the form

Du

Dt

@u

@t+ u ru

= r + g: (7.1.5)

If the fluid is Newtonian, the stress tensor is related to the pressure p and to therate-of-deformation tensor by the linear constitutive equation (e.g., [59])

ij = Æij p+

@ui

@xj+@uj

@xi

; (7.1.6)

where is the fluid viscosity.

Substituting equation (7.1.6) into the equation of motion (7.1.3) and simplifying, weobtain the Navier-Stokes equation (e.g., [59])

@ui

@t+ uj

@ui

@xj

= @p

@xi+ r2ui + gi: (7.1.7)

Page 178: Boundary Element Methods

Viscous flow 163

In vector notation,

@u

@t+ u ru

= rp+ r2

u+ g: (7.1.8)

In summary, the motion of an incompressible Newtonian fluid is governed by equa-tions (7.1.1) and (7.1.8). In three dimensions, this system comprises four scalarequations for four scalar fields, including the pressure and the three components ofthe velocity.

7.1.1 Non-dimensionalization

To assess the relative importance of the various terms in the equation of motion, weidentify a characteristic length L related to the size of the boundaries, a character-istic velocity U expressing the intensity of the flow, and a characteristic external orintrinsic time T . Next, we scale the velocity by U , all lengths by L, time by T , andthe pressure by U=L, and introduce dimensionless variables and operators denotedby a caret, defined as

u u

U; x x

L; r Lr; t t

T; p pL

U: (7.1.9)

Solving for the physical variables in terms of the dimensionless ones and substitutingthe result into the equation of motion, we find

@u

@t+Re u ru = rp+ r2

u+Re

Fr2g

jgj ; (7.1.10)

where

= L2

T(7.1.11)

is a dimensionless acceleration or frequency parameter expressing the relative im-portance of inertial acceleration body forces and viscous surface forces,

Re = U L

(7.1.12)

is the Reynolds number expressing the relative importance of inertial convective bodyforces and viscous surface forces, and

Fr =Upjbj L

(7.1.13)

is the Froude number expressing the relative importance of inertial convective andexternal body forces. The ratio Re=Fr2 on the right-hand side of (7.1.10) expressesthe relative importance of external body forces and viscous surface forces.

In the absence of external forcing, T = L=U , and the acceleration parameter reduces to the Reynolds number.

Page 179: Boundary Element Methods

164 A Practical Guide to Boundary-Element Methods

7.1.2 Unsteady Stokes flow

When the Reynolds number Re is sufficiently less than unity, the second term onthe left-hand side of (7.1.10) is small compared to the rest of the terms and may beneglected. Reverting to physical variables, we find that the flow is governed by theunsteady Stokes equation

@u

@t= rp+ r2

u+ g (7.1.14)

or

@u

@t= r + g: (7.1.15)

Physically, the unsteady Stokes equation describes flows characterized by suddenacceleration or deceleration.

Taking the Laplacian of the unsteady Stokes equation and requiring the continuityequation (7.1.1), we find that the pressure is a harmonic function,

r2p = 0: (7.1.16)

7.1.3 Stokes flow

When both dimensionless numbers andRe are sufficiently less than unity, all termson the left-hand side of (7.1.10) are small compared to the terms on the right-handside and may be neglected. Reverting to physical variables, we find that the flow isgoverned by the Stokes equation

rp+ r2u+ g = 0; (7.1.17)

or

r + g = 0; (7.1.18)

describing Stokes or creeping flow. Even though time does not appear in the Stokesequation, the flow is not necessarily steady: quasi-steady time evolution may occurbecause of boundary motion or changing boundary conditions.

Taking the Laplacian of the Stokes equation and using the continuity equation (7.1.1),we find that the pressure is a harmonic function, as shown in (7.1.16).

7.1.4 Modified pressure

When the body force is uniform over the domain of flow, it is convenient to eliminatethe inhomogeneous term from the equation of motion by introducing the dynamic or

Page 180: Boundary Element Methods

Viscous flow 165

modified pressure

P p g x: (7.1.19)

In terms of the modified pressure, the Stokes equation (7.1.17) assumes the homoge-neous form

rP + r2u = 0; (7.1.20)

which is a convenient starting point for developing the boundary-integral formulation

Problem

P.7.1.1 Vorticity

The vorticity vector is defined as the curl of the velocity vector field (Appendix A)(e.g., [59]),

! = r u: (1)

When the vorticity vector vanishes throughout the domain of a flow, the flow is calledpotential or irrotational.

(a) Show that the vorticity field is solenoidal, that is, r ! = 0. (b) Prove theidentity r2

u = r !, and discuss its implication on the equation of motion forirrotational flow. (c) Show that the components of the vorticity vector field in Stokesflow are harmonic functions,r2! = 0.

7.2 Stokes flow

To develop the boundary-integral formulation of Stokes flow, we repeat the analysisof Chapters 2 and 4 for potential flow with appropriate substitutions. The sequence ofsteps includes: (a) establish the Lorentz reciprocal theorem, which is the counterpartof Green’s second identity, (b) introduce the Green’s functions, and (c) derive integralrepresentations and accompanying integral equations.

7.2.1 The Lorentz reciprocal relation

Consider two unrelated Newtonian flows with velocity fieldsu and u0, pressure fieldsp and p0, and Newtonian stress tensors and 0. Working as in Chapters 2 and 4

Page 181: Boundary Element Methods

166 A Practical Guide to Boundary-Element Methods

in deriving Green’s second identity for Laplace’s equation, we compute the scalarprojection

u0 (r ) u0j

@ij

@xi

=@(u0j ij)

@xi ij

@u0j

@xi=@(u0j ij)

@xip Æij + (

@ui

@xj+@uj

@xi)

@u0j

@xi

=@(u0j ij)

@xi+ p

@u0i@xi

(@ui

@xj+@uj

@xi)@u0j@xi

: (7.2.1)

Invoking the continuity equation, we set @u0i=@xi = 0 and find

u0j@ij

@xi=@(u0j ij)

@xi (

@ui

@xj+@uj

@xi)@u0j

@xi: (7.2.2)

Switching the order of the two flows, we obtain the converse identity

uj@0ij

@xi=@(uj

0

ij)

@xi (

@u0i@xj

+@u0j@xi

)@uj

@xi: (7.2.3)

Subtracting (7.2.3) from (7.2.2), we derive the counterpart of Green’s second identity

u0j@ij

@xi uj

@0ij@xi

=@

@xi

u0j ij uj

0

ij

: (7.2.4)

If the two flows satisfy the Stokes equation in the absence of a body force, the left-hand side of (7.2.4) vanishes, yielding the Lorentz reciprocal relation [42]

@

@xi

u0j ij uj

0

ij

= 0: (7.2.5)

7.2.2 Green’s functions

The Green’s functions of Stokes flow provide us with velocity and pressure fields thatsatisfy the continuity equation,r u = 0, and the singularly forced Stokes equation

rp+ r2u+ Æn(x x0) b = r + Æn(x x0) b = 0; (7.2.6)

where b is a constant vector, and Æn is the delta function in two or three dimensions,n = 2; 3.

Physically, the Green’s functions express the flow due to a point force applied atthe position x0, in the absence or presence of boundaries; the constant vector bdetermines the strength and orientation of the point force.

Page 182: Boundary Element Methods

Viscous flow 167

It is convenient to express the solution of (7.2.6) in the form

ui(x) =1

4Gij(x;x0) bj ; p(x) =

1

4pj(x;x0) bj ;

(7.2.7)

ik(x) =1

4Tijk(x;x0) bj ;

in the case of two-dimensional flow (n = 2), and

ui(x) =1

8Gij(x;x0) bj ; p(x) =

1

8pj(x;x0) bj ;

(7.2.8)

ik(x) =1

8Tijk(x;x0) bj ;

in the case of three-dimensional flow (n = 3).

The continuity equation requires that in both cases

@Gij

@xi(x;x0) = 0: (7.2.9)

The Stokes equation requires that the Green’s functions satisfy the equations

@pj(x;x0)@xi

+r2Gij(x;x0) + 4 Æij Æ2(x x0) = 0;

(7.2.10)@Tijk(x;x0)

@xk=@Tkji(x;x0)

@xk= 4 Æij Æ2(x x0);

in the case of two-dimensional flow (n = 2), and

@pj(x;x0)@xi

+r2Gij(x;x0) + 8 Æij Æ3(x x0) = 0;

(7.2.11)@Tijk(x;x0)

@xk=@Tkji(x;x0)

@xk= 8 Æij Æ3(x x0);

in the case of three-dimensional flow (n = 3).

Substituting expressions (7.2.7) or (7.2.8) into the Newtonian constitutive equation(7.1.6), we find that the stress Green’s function derives from the velocity and pressureGreen’s functions by the relation

Tijk = Æik pj +@Gij

@xk+@Gkj

@xi: (7.2.12)

Consistent with the symmetry of the stress tensor evident in (7.1.6), Tijk = Tkji.

Page 183: Boundary Element Methods

168 A Practical Guide to Boundary-Element Methods

7.2.3 Free-space Green’s functions

The free-space Green’s function is given by

Gij(x x0) = Æij ln r +xi xj

r2;

(7.2.13)

pj(x x0) = 2xj

r2; Tijk(x x0) = 4 xixj xk

r4;

in the case of two-dimensional flow (n = 2), and by

Gij(x x0) =Æij

r+xi xj

r3;

(7.2.14)

pj(x x0) = 2xj

r3; Tijk(x x0) = 6 xixj xk

r5;

in the case of three-dimensional flow (n = 3), where x x x0 and r = jxj. Thefree-space Green’s function for the velocity is known as the “Stokeslet.”

7.2.4 Green’s functions in bounded domains

If the domain of a flow is bounded by a solid surface, it is convenient to use a Green’sfunction whose velocity componentsGij vanish over that surface, so that the no-slipand no-penetration boundary conditions are automatically satisfied (e.g., [55]).

Subdirectory sgf 2d of directory stokes of BEMLIB contains a collection ofsubroutines that evaluate the following Green’s functions of two-dimensional Stokesflow:

Green’s function for flow in free space.

Green’s function for flow in a semi-infinite domain bounded by a plane wall.

Singly periodic Green’s function in free space.

Singly periodic Green’s function for flow in a semi-infinite domain boundedby a plane wall.

Singly periodic Green’s function for flow in a channel bounded by two parallelplane walls.

Doubly periodic Green’s function.

Subdirectory sgf 3d of directory stokes of BEMLIB contains a collection of sub-routines that evaluate the following Green’s functions of three-dimensional Stokesflow:

Page 184: Boundary Element Methods

Viscous flow 169

Green’s function for flow in free space.

Green’s function for flow in a semi-infinite domain bounded by a plane wall.

Green’s function for flow in the exterior of a sphere.

Doubly periodic Green’s function.

Triply periodic Green’s function.

7.2.5 Properties of the Green’s functions

The Green’s functions for the velocity satisfy the symmetry property

Gij(x;x0) = Gji(x0;x); (7.2.15)

which allows us to switch the location of the evaluation point and the singular point,provided that we also switch the order of the indices. To prove this property, we applyidentity (7.2.4) for the velocity fields induced by two point forces whose singularpoints are located at different positions, integrate the resulting expression over aselected control area or volume enclosed by the contour CG or surface SG, and usethe distinctive properties of the delta function [55].

Consider a two-dimensional flow, and integrate the continuity equation (7.2.9) overan arbitrary control area Ac enclosed by the contour C. Using the divergence theo-rem to convert the areal to a line integral, we find that the velocity Green’s functionssatisfy the integral identityZ

C

ni(x) Gij(x;x0) dl(x) = 0: (7.2.16)

Working similarly with the second equation in (7.2.10), we find that the stress Green’sfunctions satisfy the integral identity

1

4

ZC

Tijk(x;x0) nk(x) dl(x) =

8<:

Æij when x0 is inside Ac12Æij when x0 is on C0 when x0 is outside Ac

; (7.2.17)

where the unit normal vector n points into the control area enclosed by C. Whenthe point x0 lies on the boundaryC, the integral on the left-hand side of (7.2.17) is aprincipal-value integral.

Using the three relations shown in (7.2.19), we derive the important identity

ZC

Tijk(x;x0) nk(x) dl(x) =

Z PV

C

Tijk(x;x0) nk(x) dl(x)1

2Æij ;

(7.2.18)

Page 185: Boundary Element Methods

170 A Practical Guide to Boundary-Element Methods

where PV denotes the principal-value integral computed by placing the evaluationpoint x0 precisely on the contour C. The plus or minus sign on the right-hand sideof (7.2.18) applies, respectively, when the point x0 on the left-hand side lies insideor outside the control area Ac.

The counterpart of (7.2.16) for three-dimensional flow isZD

ni(x)Gij(x;x0) dS(x) = 0; (7.2.19)

whereD is the surface enclosing a control volume Vc, and the counterpart of (7.2.17)is

1

8

ZD

Tijk(x;x0) nk(x) dS(x) =

8<:

Æij when x0 is inside D12Æij when x0 is on D0 when x0 is outside D

; (7.2.20)

where the unit normal vector n points into the control volume enclosed byD. Whenthe point x0 is located on D, the improper integral on the left-hand side of (7.2.20)is a principal-value integral.

Using the three relations shown in (7.2.20), we derive the counterpart of (7.2.18),ZD

Tijk(x;x0) nk(x) dS(x) =

Z PV

D

Tijk(x;x0) nk(x) dS(x)1

2Æij ;

(7.2.21)

where PV denotes the principal-value integral computed by placing the evaluationpoint x0 precisely on the surface D. The plus or minus sign on the right-hand sideapplies, respectively, when the point x0 on the left-hand side lies inside or outsidethe control volume Vc.

Problem

P.7.2.1 Computation of the free-space Stokes Green’s function

To compute the free-space Green’s function in two dimensions, we express it in theform

Gij = 4 (Æij r2H @2H

@xi@xj); (1)

where H is a generating function. Expression (1) is motivated by the realization thatthe continuity equation is satisfied for any choice of H .

Moreover, we recall that the pressure is a harmonic function and set

pj = 4 @GL

@xj; (2)

Page 186: Boundary Element Methods

Viscous flow 171

where GL = 12

ln r is the free-space Green’s function of Laplace’s equation.Substituting (1) and (2) along with expression Æ2(x x0) = r2GL into the firstequation of equation (7.2.10) and rearranging, we obtain

Æij r2 @2

@xi@xj

(r2H GL) = 0: (3)

Setting r2H = GL and taking the Laplacian of both sides, we find that H isthe Green’s function of the biharmonic equation in two dimensions given by H = 1

8r2 (ln r 1). Finally substituting this expression into (1), we obtain the free-

space velocity Green’s function displayed in the first of expressions (7.2.13).

Working in a similar fashion, compute the free-space Green’s function of Stokes flowin three dimensions displayed in (7.2.14).

7.3 Boundary integral equations in two dimensions

To derive the boundary-integral representation of two-dimensional Stokes flow, weapply identity (7.2.4) for a particular Stokes flow of interest with velocity u andstress and for the flow due to a point force, setting

u0j(x) =1

4Gjm(x;x0) bm; 0ij(x) =

1

4Timj(x;x0) bm;

@0im@xi

= Æ2(x x0) bm; (7.3.1)

where b is an arbitrary constant, and thus obtain the scalar equation

Æ2(x x0) bm um(x)

=@

@xi

1

4Gjm(x;x0) bm ij(x) uj(x)

1

4Timj(x;x0) bm

: (7.3.2)

Discarding the arbitrary constants bm, we derive the vector equation

um(x) Æ2(x x0) =1

4

@

@xi[Gjm(x;x0) ij(x) uj(x) Timj(x;x0)] :

(7.3.3)

It is enlightening to note the similarity between (7.3.3) and (2.3.1) for Laplace’sequation in two dimensions.

Page 187: Boundary Element Methods

172 A Practical Guide to Boundary-Element Methods

Following the analysis of Section 2.3, we integrate (7.3.3) over a selected control areaAc that is enclosed by a closed contour or a collection of closed contours denoted byC. Using the divergence theorem to convert the areal integral to a surface integral onthe right-hand side, we obtainZ Z

Ac

um(x) Æ2(x x0) dx dy

= 1

4

ZC

Gjm(x;x0) ij(x) ni(x) dl(x)

+1

4

ZC

uj(x) Timj(x;x0) ni(x) dl(x); (7.3.4)

where the unit normal vector n points into the control area enclosed by C.

Recalling the properties of the delta function in two dimensions, we find that, whenthe point x0 lies outside Ac, the left-hand side of (7.3.4) is zero, whereas when thepoint x0 lies inside Ac, the left-hand side of (7.3.4) is equal to um(x0).

Next, we place the point x0 inside the control area, invoke the symmetry of thestress tensor to write Timj = Tjmi, relabel the indices, use the symmetry property(7.2.15), and thus arrive at the boundary-integral representation of two-dimensionalStokes flow,

uj(x0) = 1

4

ZC

Gji(x0;x) fi(x) dl(x)

+1

4

ZC

ui(x) Tijk(x;x0) nk(x) dl(x); (7.3.5)

where f n is the boundary traction.

The first term on the right-hand side of (7.3.5) is the single-layer potential of Stokesflow and the second term is the double-layer potential of Stokes flow. The former rep-resents a boundary distribution of point forces associated with the Green’s functionfor the velocity, while the latter represents a boundary distribution of point sourcesand point force dipoles.

The interpretation of the double-layer potential is explained by invoking the defini-tion (7.2.12) and observing that the Green’s function for the pressure is, in fact, thevelocity field due to a point source [55]. The kernel of the double-layer potential is afundamental singular solution of the equations of Stokes flow called the stresslet.

7.3.1 Integral equations

Taking the limit of the representation (7.3.5) as the point x0 approaches a locallysmooth contour C and using the property (7.2.18), we derive the boundary-integral

Page 188: Boundary Element Methods

Viscous flow 173

equation

uj(x0) = 1

2

ZC

Gji(x0;x) fi(x) dl(x)

+1

2

Z PV

C

ui(x) Tijk(x;x0) nk(x) dl(x); (7.3.6)

where PV denotes the principal value of the double-layer integral. The boundary-element method for Stokes flow is based on the following observations:

Specifying the boundary distribution of the velocity u reduces (7.3.6) to aFredholm integral equation of the first kind for the distribution of the boundarytraction f .

Specifying the distribution of the boundary traction f reduces (7.3.6) to a Fred-holm integral equation of the second kind for the boundary distribution of thevelocity u.

The Green’s function exhibits a logarithmic singularity with respect to the distanceof the evaluation point from the singular point. Because the order of this singularityis lower than the linear dimension of the variable of integration, the integral equationis weakly singular. The Fredholm-Riesz theory of compact operators may be thenapplied to study the properties of the solution, and the improper single-layer integralmay be computed accurately by numerical methods.

Consider the integral equation of the second kind originating from (7.3.6), writtenwith the free-space Green’s function. When C is a smooth contour with finite curva-ture and continuously varying normal vector, as the integration point x approachesthe evaluation pointx0, the normal vector n tends to become orthogonal to the nearlytangential vector (x x0), the numerator of the integrand of the double-layer po-tential behaves quadratically with respect to the scalar distance r = jx x0j, anda singularity does not appear. Consequently, the Fredholm-Riesz theory of compactoperators may be used to study the properties of the solution, and the principal valueof the double-integral integral may be computed accurately by numerical methods.

7.3.2 Integral representation for the pressure

The integral representation for the pressure corresponding to (7.3.5) is

p(x0) = 1

4

ZC

pj(x0;x) fj(x) dl(x)

+

4

ZC

ui(x) ik(x;x0) nk(x) dl(x); (7.3.7)

where pj is the pressure Green’s function, and ik is the pressure field associatedwith the stresslet.

Page 189: Boundary Element Methods

174 A Practical Guide to Boundary-Element Methods

The free-space Green’s function pj is given in the second of equations (7.2.13); thecorresponding tensor ik is given by [55]

ik(x x0) = 4

Æik

r2+ 2

xixk

r4

= 4 @2 ln r

@xi@xk; (7.3.8)

where x x x0 and r = jxj.

The vector pj represents the field due to a point source dipole, and the tensor ik

represents the field due to a point source quadruple. To illustrate this clearly, werecast the representation (7.3.7) into the form

p(x0) =

ZC

@GL(x0;x)

@xjfj(x) dl(x)

+ 2

ZC

ui(x)@2GL(x0;x)

@xi@xjnk(x) dl(x); (7.3.9)

where GL = 12

ln r is the Green’s function of Laplace’s equation in two dimen-sions.

7.3.3 Integral representation for the stress

The integral representation for the stress corresponding to (7.3.5) is

ik(x0) = 1

4

ZC

Tijk(x0;x) fj(x) dl(x)

+

4

ZC

uj(x) ijlk(x;x0) nl(x) dl(x); (7.3.10)

where Tijk is the stress Green’s function, and ijlk is the stress field associated withthe stresslet.

The free-space Green’s function Tijk is given in the third of equations (7.2.13); thecorresponding tensor ijlk is given by [55]

ijlk(x x0) =4

r2Æik Æjl +

4

r4(Æij xk xl + Æil xk xj + Ækj xi xl + Ækl xi xj)

32 xi xj xk xlr6

; (7.3.11)

where x x x0 and r = jxj.

7.3.4 Hypersingular integrals

Taking the limit of the representation (7.3.10) as the evaluation point x0 approachesthe contour C, and projecting the limit onto the unit normal vector n(x0), we de-

Page 190: Boundary Element Methods

Viscous flow 175

rive an integral equation of the second kind for the boundary traction f involvingprincipal-value and hypersingular integrals (Section 2.5). As in the case of Laplace’sequation, the order of the singularities may be reduced by regularization to facilitatethe numerical solution

Problems

P.7.3.1 Integral identities

Show that identity (7.2.17) arises by applying (7.3.4) for uniform (streaming) flowwith constant velocity and uniform pressure.

P.7.3.2 Corner points

Show that, when the evaluation point x0 lies at a boundary corner, the integral equa-tion (7.3.6) takes the form.

uj(x0) = 1

2

ZC

Gji(x0;x) fi(x) dl(x)

+1

2

Z PV

C

ui(x) Tijk(x;x0) nk(x) dl(x); (1)

where is the corner angle. Hint: Work as in Sections 2.4.1 and 2.4.2 with a shrink-ing circular arc.

P.7.3.3 Stresslet

Verify that the tensor ijlk defined in (7.3.11) satisfies the identity

@ijlk

@xi= 0; (1)

where summation is implied over the repeated index i.

7.4 Boundary-integral equations in three dimensions

The analysis of Section 7.3 can be repeated with obvious changes in notation toderive analogous identities, integral representations, and boundary-integral equationsfor three-dimensional Stokes flow.

Page 191: Boundary Element Methods

176 A Practical Guide to Boundary-Element Methods

The counterpart of the integral representation (7.3.5) is

uj(x0) = 1

8

ZD

Gji(x0;x) fi(x) dS(x)

+1

8

ZD

ui(x) Tijk(x;x0) nk(x) dS(x); (7.4.1)

where the point x0 lies inside a control volume bounded by the surface D, and theunit normal vector n points inward. The first term on the right-hand side of (7.4.1)is the single-layer potential of three-dimensional Stokes flow, and the second term isthe double-layer potential of three-dimensional Stokes flow.

The counterpart of the integral equation (7.3.6) for a point on a smooth surface is

uj(x0) = 1

4

ZD

Gji(x0;x) fi(x) dS(x)

+1

4

Z PV

D

ui(x) Tijk(x;x0) nk(x) dS(x); (7.4.2)

where PV denotes the principal value of the double-layer potential. Integral equa-tions of the first or second kind originating from (7.4.2) are weakly singular.

7.4.1 Integral representation for the pressure

The integral representation for the pressure corresponding to (7.4.1) is

p(x0) = 1

8

ZD

pj(x0;x) fj(x) dS(x)

+

8

ZD

ui(x) ik(x;x0) nk(x) dS(x); (7.4.3)

where pj is the pressure Green’s function, and ik is the pressure field associatedwith the stresslet.

The free-space Green’s function pj is given in the second of equations (7.2.14); thecorresponding tensor ik is given by [55, 59]

ik(x x0) = 4

Æik

r3+ 3

xixk

r5

= 4 @2

@xi@xk

1

r

; (7.4.4)

where x x x0, and r = jxj.

Page 192: Boundary Element Methods

Viscous flow 177

7.4.2 Integral representation for the stress

The integral representation for the stress field corresponding to (7.4.1) is

ik(x0) = 1

8

ZD

Tijk(x0;x) fj(x) dS(x)

+

8

ZD

uj(x) ijlk(x;x0) nl(x) dS(x); (7.4.5)

where Tijk is the stress Green’s function, and ijlk(x;x0) is the stress field associ-ated with the three-dimensional stresslet.

The free-space Green’s function Tijk is given in the second of equations (7.2.14);the corresponding tensor ijlk is given by [55]

inijlk(x x0) =4

r3Æik Æjl

+6

r5(Æij xk xl + Æil xk xj + Ækj xi xl + Ækl xi xj)

60 xi xj xk xlr7

; (7.4.6)

where x x x0 and r = jxj.

7.4.3 Hypersingular integrals

Taking the limit of the representation (7.4.5) as the evaluation point x0 approachesthe boundary D, and projecting the limit onto the unit normal vector n(x0), wederive an integral equation of the second kind for the boundary traction f involvingprincipal-value and hypersingular integrals. The computation of these integrals andthe solution of the integral equation are discussed in Reference [30].

7.4.4 Axisymmetric flows in axisymmetric domains

To develop an integral representation for axisymmetric flow, we work as in Section4.5 and convert the surface integrals supporting the single- and double-layer potentialto line integrals along the contours of the boundaries in a meridional plane [55].

Expressions for the axisymmetric Green’s functions and the reduced forms of theboundary-integral representation and boundary-integral equation are given in subdi-rectory sgf ax of directory stokes of the BEMLIB user guide (Chapter 12).

Page 193: Boundary Element Methods

178 A Practical Guide to Boundary-Element Methods

Problem

P.7.4.1 Corner points

Show that the counterpart of the integral equation (7.4.2) at a corner point is

uj(x0) = 1

2

ZD

Gji(x0;x) fi(x) dS(x)

+1

2

Z PV

D

ui(x) Tijk(x;x0) nk(x) dS(x); (1)

where is the solid angle subtended by the corner.

7.5 Boundary-element methods

The implementation of the boundary-element method follows the general guidelinesdiscussed in Chapters 3 and 5 for Laplace’s equation in two and three dimensions.The main difference is that, in the case of Stokes flow, the integral equation involvesvector surface functions that must be decomposed into their scalar constituents be-fore they produce the final system of linear equations.

In the case of two-dimensional or axisymmetric flow, the boundary is discretized intoplanar elements such as straight segments, circular arcs, and pieces of cubic splinesdefined by element nodes. In the case of three-dimensional flow, the boundary is dis-cretized into three-dimensional elements including flat and curved triangles definedby groups of surface nodes.

7.5.1 Computation of the single-layer potential

In the case of two-dimensional or axisymmetric flow, the kernel of the single-layerpotential exhibits a logarithmic singularity that may be integrated by several meth-ods, as discussed in Chapter 3.

In the case of three-dimensional flow, the kernel of the single-layer potential exhibitsa weak 1=r singularity that may be integrated by the methods discussed in Chapter 5.For example, to compute the single-layer potential over the surface of a curved tri-angle defined by six nodes, we break up the element into four flat triangles, and thenperform the integration analytically, use the polar integration rule for singular flattriangles, or apply an integration quadrature.

Page 194: Boundary Element Methods

Viscous flow 179

7.5.2 Computation of the double-layer potential

In the case of two-dimensional or axisymmetric flow, the integrand of the principal-value integral of the double-layer potential is non-singular or weakly singular, andthe integral may be computed by standard numerical methods.

In the case three-dimensional flow, the 1=r singularity of the principal-value integralover a closed surface can be removed using identity (7.2.20), writingZ PV

D

ui(x) Tijk(x;x0) nk(x) dS(x)

=

ZD

[ui(x) ui(x0)] Tijk(x;x0) nk(x) dS(x) + 4 uj(x0): (7.5.1)

As the integration point x approaches the evaluation point x0, the integrand on theright-hand side of (7.5.1) tends to a finite value that depends on the orientation of thenearly tangential vector (x x0). Since a singularity does not appear, the integralmay be computed with adequate accuracy using a Gaussian quadrature. A similarregularization can be performed when the point x0 lies close to, but not precisely on,the domain of integrationD.

When the domain of integration is not closed, the computation of the double-layerpotential is more challenging. Because the kernel Tijknk of the free-space Green’sfunction vanishes over a flat element hosting a singular point, neglecting the surfacecurvature introduces significant numerical error on the order of Æ m=(4), wherem is the mean curvature of the undiscretized surface, and Æ is the element size. Theimplementation of the polar integration rule over curved elements is cumbersomeand has not been attempted.

One way to bypass these difficulties is to introduce the closure of the open interface,apply (7.5.1), and compute the non-singular double-layer integral over the extendedboundary using a quadrature [71].

7.5.3 Corner singularities

When the boundary of a flow exhibits a corner or cusp, the solution of the inte-gral equation for the traction is likely to exhibit a local singularity. Experience hasshown that neglecting the singularity and solving the integral equation using standardboundary-element methods is not detrimental to the overall accuracy of the compu-tation.

To improve the accuracy, the functional form of the singularity may be identified bycarrying out a local analysis, and the boundary-element method may be designed toautomatically probe the intensity of the divergent part, and effectively produce theregular part of the solution [25, 34 – 36, 63].

Page 195: Boundary Element Methods

180 A Practical Guide to Boundary-Element Methods

Problem

P.7.5.1 BEMLIB codes for Stokes flow.

(a) Code flow 2d in directory stokes of BEMLIB computes two-dimensionalStokes flow in an arbitrary domain. Study the mathematical formulation and thenumerical method, run the code for a boundary configuration of your choice, preparegraphs of the streamline pattern, and discuss the results of your computation. (b)Repeat (a) for code prtcl 2d. (c) Repeat (a) for code prtcl ax. (d) Repeat (a)for code prtcl sw. (e) Repeat (a) for code prtcl 3d.

7.6 Interfacial dynamics

The boundary-element method for Stokes flow has found extensive applications inthe numerical simulation of multi-fluid flow, such as the flow of suspensions of liquiddrops, capsules, and cells, and the flow of liquid films over a horizontal plane or downan inclined wall (e.g., [62]).

Consider a Stokes flow with velocity U(x) past an interface separating two fluidswith different viscosities, as illustrated in Figure 7.6.1(a). The unit normal vector npoints into the ambient fluid labeled 1. Because the interface exhibits tangential andpossibly transverse tensions, the hydrodynamic traction undergoes a discontinuitydefined as

f f(1) f

(2); (7.6.1)

where

f(1) (1) n; f

(2) (2) n; (7.6.2)

and is the stress tensor for the respective fluid. An expression for f arises by per-forming interfacial force and torque balances [55, 62]. For a common fluid interfacebetween two fluids exhibiting uniform surface tension , we find f = 2m n,where m is the mean curvature.

Our goal is to develop an integral representation involving f , under the assumptionthat the velocity is continuous across the interface. To achieve this, we consider apoint in fluid 1, decompose the velocity into the incident componentU(x) and a dis-turbance component, write the boundary-integral representation for the disturbancecomponent in fluid 1 and the reciprocal relation for the disturbance component influid 2, and combine the two expressions to form the difference f [55].

Page 196: Boundary Element Methods

Viscous flow 181

D

Fluid 1

Fluid 2

D

1

2

Fluid 2

2

Fluid 1

µ

µ

µ

µ

n

nU

U

(a) (b)

1

Figure 7.6.1 Stokes flow past (a) an interface separating two different fluids, and (b)a suspended drop.

In the case of three-dimensional flow past an interfaceD, we find that the velocity atthe point x0 that lies in fluid 1 is given by the integral representation

uj(x0) = Uj(x0)1

81

ZD

Gji(x0;x) fi(x) dS(x)

+1

8

ZD

ui(x) Tijk(x;x0) nk(x) dS(x); (7.6.3)

where = 2=1 is the viscosity ratio. The velocity at a point x0 that lies in fluid2 is given by an identical representation, except that all terms on the right-hand sideare divided by the viscosity ratio .

Taking the limit as the point x0 approaches the interface from either side, we derivethe integral equation

uj(x0) =2

1 + Uj(x0)

1

41(1 + )

ZD

Gji(x0;x) fi(x) dS(x)

+1

4(1 + )

Z PV

D

ui(x) Tijk(x;x0) nk(x) dS(x); (7.6.4)

which is the cornerstone of the method of interfacial dynamics for Stokes flow.

When the viscosities of the two fluids are equal, = 1, the coefficient in front ofthe double-layer potential on the right-hand sides of (7.6.3) and (7.6.4) vanishes,yielding simplified representations in terms of the single-layer potential alone.

Page 197: Boundary Element Methods

182 A Practical Guide to Boundary-Element Methods

Problems

P.7.6.1 Integral equation

Work as described in the text to derive the integral equation (7.6.4).

P.7.6.2 Slip velocity

Derive the counterpart of the integral representation (7.6.3) for flow past an interfacewith f = 0 but a non-zero discontinuity in the tangential velocity.

P.7.6.3 Integral representation for two-dimensional flow

Derive the counterpart of the integral representation (7.6.3) and integral equation(7.6.4) for two-dimensional flow.

7.7 Unsteady, Navier-Stokes, and non-Newtonian flow

In Chapter 6, we discussed generalized boundary-integral methods for inhomoge-neous, nonlinear, and time-dependent equations, with particular reference to Pois-son’s equation, the convection – diffusion equation, and the unsteady diffusion equa-tion. Straightforward extensions of these methods allow us to develop algorithmsfor solving the linear equations of unsteady Stokes flow, the nonlinear equations ofNavier-Stokes flow, and the equations of non-Newtonian flow.

7.7.1 Time discretization of an unsteady flow

Consider first the evolution of an unsteady flow governed by the Navier-Stokes equa-tion (7.1.8), starting from a specified initial state. Approximating the time derivativeon the right-hand side with a finite difference and the rest of the terms with weightedaverages, we obtain the time-discretized equation

un+1 u

n

t+ [u ru]n+1 + (1 ) [u ru]n

= [ rpn+1 + (1 )rpn ] + [ r2un+1 + (1 )r2

un ] + g;

(7.7.1)

where t is the time step, and ; , and are weighting factors. The superscripts nand n + 1 denote that the underlying variable is evaluated, respectively, at time tnand tn+1 = tn +t.

Page 198: Boundary Element Methods

Viscous flow 183

Setting = 0, = 0, and = 0, we obtain a fully explicit method that produces thesolution at the new time level by direct advancement of the solution at the previoustime level, without requiring inverting systems of algebraic equations. Unfortunately,because fully explicit methods are susceptible to numerical instabilities, a successfulsimulation requires a prohibitively small time step [59, 60].

A semi-implicit method arises by setting = 0, = 1, and = 1, yielding

un+1 u

n

t+ [u ru]n

= rpn+1 + r2

un+1 + g: (7.7.2)

Rearranging, we derive the inhomogeneous Brinkman equation

tun+1 = rpn+1 + r2

un+1 +

1

tun [u ru]n + g

: (7.7.3)

The collection of the terms enclosed by the parentheses on the right-hand side areregarded as a known source field, available from the initial condition or from thesolution at the previous time step.

To make the derivations more specific, we restrict our attention to two-dimensionalflow and introduce the velocity and pressure Green’s functions of Brinkman’s equa-tion, denoted, respectively, by GB

ij and pBj . By definition, these Green’s functionssatisfy the continuity equation (7.2.9) and the singularly forced Brinkman’s equation

2 GBij(x;x0)

@pBj (x;x0)

@xi+r2GB

ij(x;x0) + 4 Æij Æ2(x x0) = 0;

(7.7.4)

where is a real positive constant with dimensions of inverse length. Equation(7.7.4) is a generalization of the first of equations (7.2.10) defining the two-dimensionalStokes flow Green’s functions.

The free-space Green’s function of Brinkman’s equation is given by

GBij(x x0) = Æij A(R) +

xi xj

r2B(R);

(7.7.5)

pBj (x x0) = 2xj

r2;

with

A(R) = 2

1

R2 K1(R)

RK0(R)

;

(7.7.6)

B(R) = 2

2

R2 2

K1(R)

RK0(R)

;

Page 199: Boundary Element Methods

184 A Practical Guide to Boundary-Element Methods

where x x x0, r = jxj, R = r, and K0;K1 are modified Bessel functions(e.g., [2], p. 374); the derivation is discussed in P.7.7.1.

The corresponding stress tensor is given by

TBijk(x x0) = Æijxj

r22 [B(R) 1] +

Æij xk + Ækj xi

r2C(R) 4

xi xj xk

r4D(R);

(7.7.7)

where

C(R) =8

R2 4K0(R) 2

R+

4

R

K1(R);

(7.7.8)

D(R) = C(R) +RK1(R):

In the limit as R tends to zero, the function A(R) tends to lnR, the functionsB(R)and D(R) tend to unity, and the function C(R) tends to vanish, yielding the free-space Green’s functions of Stokes flow.

Working as in Section 7.2, we find that the solution of equation (7.7.3) is given bythe integral representation

un+1j (x0) = 1

4

ZC

GBji(x0;x) f

n+1i (x) dl(x)

+1

4

ZC

un+1i (x) TBijk(x;x0) nk(x) dl(x)

+

4

Z ZFlow

GBji(x0;x) bi dx dy; (7.7.9)

where =p=(t), b stands for the quantity enclosed by the parentheses on

the right-hand side of (7.7.3), C is a closed contour enclosing a selected area offlow, n is the unit vector normal to C pointing into the flow, and f n is theboundary traction. The domain integral on the right-hand side of (7.7.9) may becomputed either directly by domain discretization followed by numerical integration,or indirectly by the method of approximate particular solutions or the dual reciprocitymethod discussed in Section 7.7.2.

Taking the limit as the point x0 approaches the boundary C, we derive an inte-gral equation involving the boundary traction fn+1

i and the boundary velocity un+1i .

Once this equation has been solved for the unknown boundary distribution, the ve-locity at the new time level can be computed by evaluating the right-hand side of(7.7.9). Details of the boundary-element implementation are discussed in Reference[49].

Page 200: Boundary Element Methods

Viscous flow 185

7.7.2 Particular solutions and dual reciprocity

The method of approximate particular solutions and the dual reciprocity methodfor Navier-Stokes flow are developed by working as in Chapter 6 for Poisson’s,Helmholtz’s, and the convection – diffusion equation.

In the case of steady flow, we set @u=@t = 0 and express the Navier-Stokes equation(7.1.8) in the symbolic form

r + b(u) = 0; (7.7.10)

where is the stress tensor, and the forcing term

b(u) uj@u

@xj+ g = @(uj u)

@xj+ g (7.7.11)

consists of the inertial convection volume force, regarded as an a priori unknownbody force, and the external body force; summation over the repeated index j isimplied in the spatial coordinates.

In the case of two-dimensional flow, a particular solution of (7.7.10) for the velocityis given by the Newtonian potential

vj(x0)

4

Z ZGji(x0;x) bi(x) dx dy; (7.7.12)

whereGij is a Green’s function of Stokes flow, and the integral is computed over thedomain of flow.

To implement the dual reciprocity method, we distribute M data points (xk; yk),k = 1; : : : ;M , over the domain of flow and along the boundaries, introduce the setof interpolation or influence functions (i)j (x; y), where i = 1; 2 and j = 1; : : : ;M ,and express the velocity in the approximate form

ui(x; y) 'MXj=1

(i)j

(i)j (x; y): (7.7.13)

The coefficients (j)j are found by requiring the interpolation condition

ui(xk ; yk) =

MXj=1

(i)j

(i)j (xk ; yk) (7.7.14)

at the boundary nodes (xk ; yk) where the velocity is specified, and by demandingthat the interpolated field (7.7.13) satisfy the continuity equation at the interior nodes.The choice of interpolation functions and further details on the interpolation proce-dure are discussed in Reference [17]. Substituting expansion (7.7.13) into the right-hand side of (7.7.11), we express the effective body force b as a quadratic functionof the interpolation coefficients (i)j .

Page 201: Boundary Element Methods

186 A Practical Guide to Boundary-Element Methods

Next, we express the effective body force itself as a linear combination of a new setof interpolation or influence functionsHj(x; y) in the form

bi(x; y) =MXj=1

(i)j Hj(x; y); (7.7.15)

where the coefficients (i)j are found by requiring appropriate interpolation condi-tions. A particular solution of (7.7.10) for the velocity is given by

uPk (x; y) =

MXj=1

2Xi=1

(i)j H

(k;i)j (x; y); (7.7.16)

where H(k;i)j (x; y) represents the kth component of a Stokes velocity field with cor-

responding pressure field p(i)j induced by a distributed body force acting in the ithdirection; the blob-like strength density of the body force is given by the interpo-lation functions Hj(x; y). This flow field is found by solving the inhomogeneousStokes flow equations

@H(k;i)j

@xk= 0;

(7.7.17)

@p

(i)j

@xk+ r2H

(k;i)j + Æik Hj(x; y) = 0:

The solution corresponding to the thin-plate spline, Hj(r) = r2 ln r, where r =jx xj j, is given in Reference [17].

The dual reciprocity method is motivated by the observation that the homogeneousvelocity field u

H u uP satisfies the equations of Stokes flow, and is thus

amenable to the boundary-integral formulation.

The problem has been reduced to computing the boundary velocity or traction bysolving an integral equation associated with the homogeneous solution, while si-multaneously computing the coefficients (i)j introduced in (7.7.14), as discussed inReference [17].

7.7.3 Alternative formulations

We have discussed methods for solving the Navier-Stokes equation in primitive vari-ables including the velocity and the pressure. Alternative formulations employ thevorticity and stream function for two-dimensional or axisymmetric flow. A recentimplementation is discussed in Reference [72].

Page 202: Boundary Element Methods

Viscous flow 187

7.7.4 Non-Newtonian flow

The stresses developing in a non-Newtonian fluid obey constitutive equations thatare nonlinear with respect to the components of the rate-of-deformation tensor, de-fined as the symmetric part of the velocity gradient tensor, 1

2(@ui=@xj + @uj=@xi).

Consequently, the right-hand side of the equation of motion contains the divergenceof a nonlinear extra stress tensor expressing the deviation from Newtonian behavior.

To compute a non-Newtonian flow using the boundary-element method, we regardthe non-Newtonian contribution to the equation of motion as an a priori unknownhydrodynamic volume force and obtain the solution using an iterative method, asdiscussed previously in this section for Navier-Stokes flow. A recent implementationis discussed in Reference [67].

Problems

P.7.7.1 Free-space Green’s function of Brinkman’s equation

To compute the free-space Green’s function of Brinkman’s equation in two dimen-sions, denoted by GB

ij , we introduce the generating function H defined by the ex-pression

GBij = 4 (Æij r2H @2H

@xi@xj): (1)

Substituting this definition into equation (7.7.4) and working as in P.7.2.1, we findthat the generating function satisfies the inhomogeneous Helmholtz equation

(r2 2)H = GL; (2)

where GL = 12

ln r is the free-space Green’s function of Laplace’s equation. Asolution of (2) is H = 1

2(GH GL), where

GH =1

2K0(r) (3)

is the free-space Green’s function of Helmholtz’s equation, and K0 is a modifiedBessel function (P.2.2.1). Thus, the generating function is given by

H =1

22[K0(r) + ln r]: (4)

Substituting this solution into expression (1), we obtain the velocity Green’s functiongiven in (7.7.5). The pressure vector is given by the second equation of (7.7.5).

Page 203: Boundary Element Methods

188 A Practical Guide to Boundary-Element Methods

(a) Working in a similar fashion, compute the generating function of the free-spaceGreen’s function of Brinkman’s equation in three dimensions.

P.7.7.2 Oscillatory Stokes flow

Small-amplitude oscillatory Stokes flow is governed by the unsteady Stokes equation(7.1.14). The velocity and pressure fields are given by the real or imaginary part ofthe complex functions

u(x; t) = v(x) exp(i t); p(x; t) = P (x) exp(i t); (1)

where i is the imaginary unit, and is the frequency of the oscillation. Substitutingthese expressions into equation (7.1.14) in the absence of a body force, we obtain thecomplex Brinkman equation

i v = rP + r2v; (2)

which is to be solved together with the continuity equationr v = 0.

To compute the free-space Green’s function of the complex Brinkman equation, wework as in P.7.7.1, and find that the generating function H satisfies the inhomoge-neous Helmholtz equation

(r2 2)H = GL; (3)

where 2 = i = is a complex constant, and GL is the free-space Green’sfunction of Laplace’s equation. A solution of (3) is given by H = 1

2(GH GL),

where

GH (x;x0) =1

2[ker0(r) i kei0(r)] (4)

is the free-space Green’s function of Helmholtz’s equation, r = jx x0j, =pjj =, and ker0, kei0 are Kelvin functions (P.2.2.2(b)).

Combining these results, we find that the generating function is given by

H =i

22[ ln r + ker0(r) i kei0(r) ]: (5)

Substituting this expression into the right-hand side of equation (1) of P.7.7.1, weobtain the velocity Green’s function as stated in the first equation of (7.7.5) with

A(R) = 2

ker0(R)

kei00(R)

R

2 i

kei0(R)

ker00(R)

R+

1

R2

;

(6)

B(R) = 2

ker0(R) + 2

kei00(R)

R

+ 2 i

kei0(R) + 2

ker00(R)

R+

2

R2

;

Page 204: Boundary Element Methods

Viscous flow 189

where R = r and a prime denotes a derivative with respect to R. The pressurevector is given by the second equation of (7.7.5).

Working in a similar fashion, compute the generating function of the free-spaceGreen’s function of the complex Brinkman equation in three dimensions.

Page 205: Boundary Element Methods
Page 206: Boundary Element Methods

Chapter 8

BEMLIB user guide

The software library BEMLIB contains a collection of FORTRAN 77 programs andsubroutines related to Green’s functions and boundary-element methods for Laplace’sequation, Helmholtz’s equation, and Stokes flow.

8.1 General information

At the time of printing, BEMLIB consists of five main directories, each containinga multitude of nested subdirectories. The contents of the subdirectories are listed inSection 8.3.

The source codes of BEMLIB can be downloaded from the internet site:http://bemlib.ucsd.edu

The library has been archived using the tar UNIX facility into the tar filebemlib.tar. To unravel the directories on a UNIX or LINUX platform,execute the UNIX command: tar xvf bemlib.tar

To unravel the directories on a Windows or Macintosh platform, double-clickon the tar file and follow the instructions of the invoked application.

The downloaded package does not contain object files or executables. An ap-plication can be built using the makefile provided in each subdirectory. Amakefile is a UNIX script that instructs the operating system how to compilethe main program and subroutines, and then links the object files into an exe-cutable using the linker of the f77 compiler.

To build the application named dehesa on a UNIX platform, proceed to thesubdirectory where the application resides and type: make dehesa

To compile the code using a FORTRAN 90 compiler on a UNIX platform,make appropriate compiler call substitutions in the makefiles, or establish asymbolic link that copies the FORTRAN 90 to the FORTRAN 77 compiler call.

191

Page 207: Boundary Element Methods

192 A Practical Guide to Boundary-Element Methods

To remove the object and output files of the application named dehesa on aUNIX platform, proceed to the subdirectory where the application resides andtype: make purge

To remove the object files, output files, and executable of the applicationnamed dehesa on a UNIX platform, proceed to the subdirectory where theapplication resides and type: make clean

To compile and link the codes on a Windows or Macintosh platform, followthe instructions of the FORTRAN 77 or FORTRAN 90 compiler.

BEMLIB is the distillation of the inclusive fluid dynamics software libraryFDLIB. The directories of BEMLIB have been mapped from appropriate di-rectories of FDLIB through the perspective of Green’s functions and boundary-element methods. The source code of FDLIB can be downloaded from theinternet site: http://stokes.ucsd.edu

A subset of FDLIB and BEMLIB has been combined with the X11 graphicslibrary vogle into an integrated application that visualizes the results of thesimulations. The source and binary files of the graphics library compiled forseveral UNIX platforms and the source code of CFDLAB can be downloadedfrom the internet site: http://stokes.ucsd.edu

8.2 Terms and conditions

BEMLIB, c 1999, is subject to the terms of the GNU lesser public license, as statedin the internet site: http://www.gnu.org/copyleft/lesser.html

The author assumes no responsibility or liability for any type of damage or men-tal strain that may be incurred by using any parts of this software. In no event shallthe author be liable for any incidental, direct, special, or consequential damages aris-ing out of the use of the program material. The author reserves the right to revisethe program material and make changes therein from time to time without obliga-tion to notify the user of the revision or changes. The author makes no warranties,expressed or implied, including without limitation the implied warranties of mer-chantability and fitness for a particular purpose, regarding the software. The authordoes not warrant, guarantee, or make any representations regarding the use of thesoftware in terms of its correctness, accuracy, reliability, currentness, or otherwise.The entire risk as to the results and performance of the software is assumed by theuser.

Page 208: Boundary Element Methods

BEMLIB user guide 193

8.3 Directory contents

Directory: num meth

Numerical methods in science and engineering.

Subdirectory Topic

01 num comp General aspects of numerical computation.

02 lin calc Linear algebra and linear calculus.

03 lin eq Systems of linear algebraic equations.

04 nl eq Nonlinear algebraic equations.

05 eigen Eigenvalues and eigenvectors of matrices.

06 interp diff Function interpolation and differentiation.

07 integration Function integration.

08 approximation Function approximation.

09 ode ivp Ordinary differential equations;initial-value problems.

10 ode bvp Ordinary differential equations;boundary-value problems.

11 pde Partial differential equations.

12 spec fnc Computation of special functions.

This directory accompanies Reference [60].

Page 209: Boundary Element Methods

194 A Practical Guide to Boundary-Element Methods

Directory: grids

Boundary element discretization of planar lines and three-dimensional surfaces.

Subdirectory Topic

grid 2d Discretization of a planar line consisting of straightand circular segments into a nonuniform mesh ofelements with corresponding shapes.

trgl Triangulation of a closed surface into an unstructured gridof quadratic elements generated by discretizingan octahedron or icosahedron.

Directory: laplace

Green’s functions of Laplace’s equation and boundary-element codes for problemsinvolving Laplace’s equation in two and three dimensions.

Subdirectory Topic

lgf 2d Green’s and Neumann functions of Laplace’sequation in two dimensions.

lgf 3d Green’s and Neumann functions of Laplace’sequation in three dimensions.

lgf ax Green’s and Neumann functions of Laplace’sequation in axisymmetric domains.

flow 1d Unidirectional viscous flow through a tubewith arbitrary cross-section.

flow 1d 1p Unidirectional periodic viscous flow pasta periodic array of cylinders or a periodic wallwith arbitrary cross-section.

Page 210: Boundary Element Methods

BEMLIB Directory Contents 195

Directory: laplace (continued)

Subdirectory Topic

flow 2d Two-dimensional potential flow in an arbitrary domain.

body 2d Potential flow past, or due to the motion of,a two-dimensional body.

body ax Potential flow past, or due to the motion of,an axisymmetric body.

tank 2d Dynamical simulation of liquid sloshing in atwo-dimensional rectangular tank.

ldr 3d Solution of Laplace’s equation in the interior or exteriorof a closed three-dimensional surface, subject to theDirichlet boundary condition. The solution is foundusing a boundary-element method based on Green’sthird identity.

lnm 3d Solution of Laplace’s equation in the interior or exteriorof a closed three-dimensional surface, subject to theNeumann boundary condition. The solution is foundusing a boundary-element method based on Green’sthird identity.

Directory: helmholtz

Boundary element codes for Helmholtz’s equation.

Subdirectory Topic

flow 1d osc Unidirectional oscillatory viscous flow inside or outsidea cylindrical tube with arbitrary cross-section.

Page 211: Boundary Element Methods

196 A Practical Guide to Boundary-Element Methods

Directory: stokes

Green’s functions of Stokes flow and boundary-element codes for Stokes flow intwo- and three-dimensional domains.

Subdirectory Topic

sgf 2d Green’s functions of two-dimensional Stokes flow.

sgf 3d Green’s functions of three-dimensional Stokes flow.

sgf ax Green’s functions of axisymmetric Stokes flow.

flow 2d Two-dimensional flow in a domain witharbitrary geometry.

prtcl sw Swirling flow due to the rotationof an axisymmetric particle.

prtcl 2d Flow past a fixed bed of two-dimensionalparticles with arbitrary shapes,for a variety of flow configurations.

prtcl ax Flow past, or due to the motion of,a collection of axisymmetric particlesfor several flow configurations.

prtcl 3d Flow past, or due to the motion of,a three-dimensional particle,for a variety of flow configurations.

Page 212: Boundary Element Methods

Chapter 9

Directory: grids

This directory contains programs that perform boundary-element discretization oftwo-dimensional lines and three-dimensional surfaces.

Directory contents:

Subdirectory Topic

grid 2d Discretization of a planar line consisting of straightand circular segments into a graded mesh ofboundary elements with corresponding shapes.

trgl Triangulation of a closed surface into an unstructured gridof six-node quadratic elements generated by thesuccessive subdivision of an octahedron or icosahedron.

197

Page 213: Boundary Element Methods

198 A Practical Guide to Boundary-Element Methods

Directory: grids/grid 2d

This directory contains programs that perform the boundary-element discretizationof a planar line consisting of a collection of straight and circular segments into agraded mesh of elements with corresponding shapes, as illustrated in Figure grid 2d.1.

The discretization is an integral part of boundary-element methods for two-dimensionaland axisymmetric domains.

Main program: grid 2d

The main program reads the properties of the boundary segments and calls the sub-routineselm line and elm arc that perform the boundary-element discretization.

The straight segments are defined by the end-points, whereas the circular segmentsare defined by their center, radii, and polar angles of the end-points.

Files to be linked:

1. elm lineDiscretization of a straight segment into straight (linear) elements.

2. elm arcDiscretization of a circular arc into circular-arc elements.

Input file: grid 2d.dat

Geometrical properties of the straight and circular segments.

Output file: grid 2d.out

Coordinates of the end-points of the linear elements, and geometrical properties ofthe arcs.

Subroutine: elm line

The discretization of a straight segment into a graded mesh of straight (linear) el-ements is illustrated in Figure grid 2d.2. This subroutine produces the coordinatesand the arc length at the position of the element end- and mid-points. The mid-pointsserve as collocation points in boundary-element methods. The call statement is:

Page 214: Boundary Element Methods

BEMLIB: grids/grid 2d 199

Figure grid 2d.1 Discretization of a planar line consisting of straight and circularsegments into a graded mesh of elements with corresponding shapes.

elm line

(N Input: Number of elements along the segment.; ratio Input: Element stretch ratio; see Note 1.; X1; Y 1 Input: Coordinates of the first end-point.; X2; Y 2 Input: Coordinates of the second end-point.; sinit Input: Arc length assigned to the first end-point.; Isym Input: Symmetry index; see Note 1.; xe; ye; se Output: See Note 2.; xm; ym; sm) Output: See Note 3.

Notes:

1. Isym is a symmetry index; when it is set equal to 1, the element distribution issymmetric with respect to the mid-point of the segment; when it is set equalto 0, the distribution is non-symmetric. When Isym = 1 and the number ofelements is odd, there is one mid-element; when Isym = 1 and the number ofelements is even, there are two mid-elements of equal length.

When Isym = 0, the parameter ratio is the specified ratio of the length of thelast element to the length of the first element. For example, when ratio = 0.5,the length of the last element is half the length of the first element.

When Isym = 1, the parameter ratio is the ratio of the length of the mid-elementto the length of the first element. For example, when ratio = 2, the length ofthe mid-element is twice the length of the first element.

2. xe, ye are one-dimensional arrays containing the coordinates of the elementend-nodes; se is a one-dimensional array containing the arc length at the posi-tion of the end-points measured along the segment from the first end-point.

Page 215: Boundary Element Methods

200 A Practical Guide to Boundary-Element Methods

Figure grid 2d.2 Discretization of a straight segment into a graded mesh of ele-ments. Solid line: non-symmetric distribution (Isym = 0); dotted line: sym-metric distribution with even number of elements (Isym = 1); dashed line:symmetric distribution with odd number of elements (Isym = 1).

3. xm, ym are one-dimensional arrays containing the coordinates of the elementmid-nodes located in the middle of each element. The array sm contains thearc length at the location of the mid-points measured from the first segmentpoint.

Subroutine: elm arc

The discretization of a circular arc into a graded mesh of circular arcs is illustratedin Figure grid 2d.3. This subroutine produces the coordinates and the arc length atthe position of the element end- and mid-points. The mid-points serve as collocationpoints in boundary-element methods. The call statement is:

elm arc

(N Input: Number of elements along the segment.; ratio Input: Element stretch ratio; see Note 1.; xcnt; ycnt Input: Coordinates of the arc center.; radius Input: Arc radius.; angle1; angle2 Input: See Note 2.; sinit Input: Specified arc length at the first end-point.; Isym Input: Symmetry index; see Note 1.; xe; ye; te; se Output: See Note 3.; xm; ym; tm; sm) Output: See Note 4.

Page 216: Boundary Element Methods

BEMLIB: grids/grid 2d 201

Figure grid 2d.3 Discretization of a circular segment into a graded mesh of ele-ments. Solid line: non-symmetric distribution (Isym = 0); dotted line: sym-metric distribution with even number of elements (Isym = 1); dashed line:symmetric distribution with odd number of elements (Isym = 1).

Notes:

1. Isym is a symmetry index; when it is set equal to 1, the element distribution issymmetric with respect to the mid-point of the segment; when it is set equalto 0, the distribution is non-symmetric. When Isym = 1 and the number ofelements is odd, there is one mid-element; when Isym = 1 and the number ofelements is even, there are two mid-elements of equal arc length.

When Isym = 0, the parameter ratio is the ratio of the arc length of the lastelement to the arc length of the first element. For example, when ratio = 0.5,the arc length of the last element is half the arc length of the first element.

When Isym = 1, the parameter ratio is the ratio of the arc length of the mid-element to the arc length of the first element. For example, when ratio = 2, thearc length of the mid-element is twice the arc length of the first element.

2. angle1 and angle2 are the polar angles measured around the center of the arcup to the first and last end-points of the arc.

3. xe and ye are one-dimensional arrays containing the coordinates of the elementend-nodes; te is an array containing polar angles of the end-nodes measuredfrom the arc center; se is an array containing the arc length at the position ofthe end-points, measured along the segment with origin at the first point.

Page 217: Boundary Element Methods

202 A Practical Guide to Boundary-Element Methods

4. xm and ym are one-dimensional arrays containing the coordinates of the ele-ment mid-points, which are located at the middle of each element. The arraytm contains the corresponding polar angles measured from the arc center. Thearray sm contains the arc length along the segment at the location of the mid-points, measured from the first segment point.

Page 218: Boundary Element Methods

203

Directory: grids/trgl

This directory contains programs that perform the triangulation of a closed surfaceinto an unstructured mesh of curved triangular quadratic defined by six nodes, asillustrated in Figure trgl.1.

The triangulation is carried out by successively subdividing the faces of a regularoctahedron or icosahedron inscribed within the unit sphere into four descendant ele-ments, thereby generating a sequence of higher-degree polyhedra, as shown in Figuretrgl.2. In the process of subdivision, the edge mid-points of a parental triangle be-come vertex nodes of the descendant triangles. The mid-points of the edges of thenewly formed descendant triangles are computed by interpolation. The descendantnodes are then projected onto the surface of the sphere to yield an ordered grid ofcurved triangular elements.

The parametric representation of the six-node quadratic triangles in terms of the threevertex nodes and three mid-point edge nodes is discussed in Section 5.3.

Main program: trgl

The main program calls a subroutine to triangulate the surface of the unit sphere,deforms the discretized surface to generate ellipsoids of specified aspect ratios, andthen performs a series of computations based on the discrete parametric representa-tion, including the following:

Evaluation of the surface area and volume.

Evaluation of the mean curvature at the nodes.

Evaluation of the surface integral of a specified function.

Confirmation of the orthonormality of the modified Legendre functions.

Computation of the Cartesian surface curvature tensor.

Subroutine: trgl octa

This subroutine generates the coordinates of the grid nodes and produces connec-tivity tables that relate the global and local labels of the nodes to (a) the labels ofthe triangular elements, and vice versa, and (b) the labels of triangles shared by theelement edges. The call statement is:

Page 219: Boundary Element Methods

204 A Practical Guide to Boundary-Element Methods

1

2

3

4

5

6

Figure trgl.1 A quadratic triangular element defined by six nodes, including threevertex nodes and three mid-nodes. The numbers displayed are the labels of thelocal nodes of the depicted element.

trgl octa

(Ndiv Input: Discretization level.; Npts Output: Total number of vertex and mid-points.; Nelm) Output: Number of elements.

The integer parameter Ndiv provided in the input specifies the desired level of dis-cretization: Ndiv = 0 gives eight elements over the whole surface of the sphere;Ndiv = 1 subdivides each of the eight elements into four elements to produce 32elements, as illustrated in Figure trgl.2; similar subdivisions are performed in higher-level discretization. The total number of elements is Nelm = 8 4Ndiv 1.

This subroutine contains the following common blocks:

common/points/p,necommon/elmnts/n,nbe

where:

p is a two-index array defined such that p(i; 1) is the x-coordinate of the pointlabeled i, p(i; 2) is the y-coordinate of the point labeled i, and p(i; 3) is thez-coordinate of the point labeled i.

ne is a two-index array defined as follows: ne(i; 1) is the number of elementssharing node i; subsequent entries, ne(i; 2); ne(i; 3); : : : ; ne(i; ne(i; 1) + 1),are the labels of the elements sharing the ith node.

Page 220: Boundary Element Methods

BEMLIB: grids/trgl 205

Figure trgl.2 Triangulation of the surface of a spheroid into quadratic elements de-fined by six nodes based on successive subdivisions of a regular octahedron,for discretization levels Ndiv = 1, 2, and 3.

n is a two-index array defined as follows: n(i; j) is the global label of the nodeon element numbered i with local element label j, where j = 1; : : : ; 6.

Subroutine: trgl icos

This is similar to subroutine trgl octa, except that the triangulation is based onthe successive subdivisions of a regular icosahedron.

Files to be linked:

None for the triangulation subroutines.

The main program must be linked with the following files:

1. cramer 33Solution of a 3 3 linear system by Cramer’s rule.

2. crvm 3dComputation of the mean curvature.

3. gauss trglGauss integration quadrature base points and weights for a triangle.

Page 221: Boundary Element Methods

206 A Practical Guide to Boundary-Element Methods

4. leg fnc orthoComputation of the orthonormal set of the modified Legendre functions.

5. srf int 3dComputation of a surface integral.

6. trgl octa auxAuxiliary subroutines that compute various geometrical properties.

7. vtg 3dComputation of the tangential gradient of a vector function.

Page 222: Boundary Element Methods

Chapter 10

Directory: laplace

This directory contains libraries of Green’s and Neumann functions of Laplace’sequation, and boundary-element codes that generate solutions to Laplace’s equationin two and three dimensions with applications in fluid dynamics.

Directory contents:

Subdirectory Topic

lgf 2d Green’s and Neumann functions of Laplace’sequation in two dimensions.

lgf 3d Green’s and Neumann functions of Laplace’sequation in three dimensions.

lgf ax Green’s and Neumann functions of Laplace’sequation in axisymmetric domains.

flow 1d Unidirectional viscous flow through a tubewith arbitrary cross-section.

flow 1d 1p Unidirectional periodic viscous flow pasta periodic array of cylinders or a periodic wallwith arbitrary cross-section.

flow 2d Two-dimensional potential flow in an arbitrary domain.

body 2d Potential flow past, or due to the motion of,a two-dimensional body.

body ax Potential flow past, or due to the motion of,an axisymmetric body.

tank 2d Dynamical simulation of liquid sloshing in atwo-dimensional rectangular tank.

207

Page 223: Boundary Element Methods

208 A Practical Guide to Boundary-Element Methods

Directory contents (continued)

Subdirectory Topic

ldr 3d Solution of Laplace’s equation in the interior or exteriorof a three-dimensional surface, subject to the Dirichletboundary condition. The solution is found using aboundary-element method based on Green’s third identity.

lnm 3d Solution of Laplace’s equation in the interior or exteriorof a three-dimensional surface, subject to the Neumannboundary condition. The solution is found using aboundary-element method based on Green’s third identity.

Page 224: Boundary Element Methods

209

Directory: laplace/lgf 2d

The Green’s functions of Laplace’s equation in two dimensions constitute a specialclass of harmonic functions that are singular at an arbitrary point x0 = (x0; y0).

By definition, a Green’s function satisfies the singularly forced Laplace’s equation

r2G(x;x0) + Æ2(x x0) = 0; (lgf 2d.1)

explicitly written as

@2G(x;x0)

@x2+@2G(x;x0)

@y2+ Æ2(x x0) = 0; (lgf 2d.2)

where:

x = (x; y) is the variable “field” or “evaluation” point.

x0 = (x0; y0) is the fixed singular point, also called the “pole”.

Æ2(x x0), written explicitly as Æ2(x x0; y y0), is Dirac’s delta functionin two dimensions.

GREEN’S FUNCTIONS OF THE FIRST KIND AND NEUMANN FUNCTIONS:

In addition to satisfying the definition (lgf 2d.1), the Green’s function G(x;x0) orits normal derivative n(x) rG(x;x0) is required to be zero when the evaluationpoint x lies on a specified contour CG, where n(x) is the unit vector normal to CG.

In the first case, we have a Green’s function of the first kind; in the second case, wehave a Green’s function of the second kind - also called a Neumann function.

PHYSICAL INTERPRETATION:

The Green’s function represents the temperature or concentration field due to a pointsource of heat or species located at the singular point.

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink of mass located at the singular point. The gradient of the Green’s functionis the fluid velocity.

Page 225: Boundary Element Methods

210 A Practical Guide to Boundary-Element Methods

INTEGRAL IDENTITY:

A consequence of (lgf 2d.1) is that Green’s functions satisfy the integral identity

ZC

n(x) rG(x;x0) dl(x) =

8<:

1 when x0 is inside Ac12

when x0 is on C0 when x0 is outside Ac

; (lgf 2d.3)

where C is a closed loop in the xy plane enclosing the control area Ac, and the nor-mal vector n is oriented into the control area. When the point x0 is located preciselyin the contour C, the integral on the left-hand side of (lgf 2d.3) is a principal-valueintegral.

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary-integral representation of a harmonic function f is

f(x0) = ZC

G(x;x0) [n(x) rf(x)] dl(x)

+

ZC

f(x) [n(x) rG(x;x0)] dl(x); (lgf 2d.4)

where C is the collection of all boundaries enclosing a selected control area, and nis the unit vector normal to C pointing inward.

DIRECTORY CONTENTS:

This directory contains a suite of subroutines that evaluate the following Green’s andNeumann functions and their gradients:

Subroutine Topic

lgf 2d fs Green’s function in free space.

lgf 2d 1p Singly periodic Green’s function in free space.

lgf 2d w Green’s and Neumann functions in a semi-infinitedomain bounded by a plane wall.

lgf 2d 1p w Periodic Green’s and Neumann functionsin a semi-infinite domain bounded by a plane wall.

lgf 2d ww Green’s and Neumann functions in an infinitestrip bounded by two parallel plane walls.

lgf 2d crc Neumann function in the exterior of a circle.

Page 226: Boundary Element Methods

BEMLIB: laplace/lgf 2d 211

Subroutine: lgf 2d fs

This subroutine computes the Green’s function in an infinite domain in the absenceof boundaries.

The Green’s function is given by

G(x;x0) = 1

2ln r; (1)

where r = jx x0j is the distance of the field point x from the singular point x0.

The gradient of the Green’s function is given by

@G

@x= 1

2

x x0

r2;

@G

@y= 1

2

y y0

r2: (2)

Call statement:

lgf 2d fs

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradient,rG.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Driver: lgf 2d fs dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.3),where C is a circular contour.

Files to be linked: None.

Page 227: Boundary Element Methods

212 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 2d 1p

This subroutine computes the periodic Green’s function of Laplace’s equation intwo dimensions representing the potential due to a periodic array of point sourcesseparated by the distance L along the x axis, as illustrated in Figure lgf 2d 1p.1.One of the singular points is located at the point x0 = (x0; y0).

The Green’s function is given by

G(x;x0) = 1

4ln [ 2 fcosh[k(y y0)] cos[k(x x0)] g ] ; (1)

where k = 2=L is the wave number, and L is the period, that is, the separationbetween two consecutive singular points ([59], p. 358).

The gradient of the Green’s function is given by

@G

@x= 1

2L

sin[k(x x0)]

cosh[k(y y0)] cos[k(x x0)];

(2)@G

@y= 1

2L

sinh[k(y y0)]

cosh[k(y y0)] cos[k(x x0)]:

Call statement:

lgf 2d 1p

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; L Input: Distance between the singularities.; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradient,rG.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Page 228: Boundary Element Methods

BEMLIB: laplace/lgf 2d 213

y

L

x 0x

n

n

CC

Figure lgf 2d 1p.1 The periodic Green’s function represents the potential due to anarray of point sources of heat or species separated by the distance L along thex axis.

Driver: lgf 2d 1p dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.3),where C is a circular contour or one period of a periodic line, as illustrated in Figurelgf 2d 1p.1.

Files to be linked: None.

Streamlines:

In fluid mechanics, the periodic Green’s function represents the velocity potentialdue to a periodic array of point sinks. The streamline pattern is shown in Figurelgf 2d 1p.2.

Page 229: Boundary Element Methods

214 A Practical Guide to Boundary-Element Methods

Figure lgf 2d 1p.2 Streamlines of the flow due to a periodic array of point sinks.

Page 230: Boundary Element Methods

BEMLIB: laplace/lgf 2d 215

Subroutine: lgf 2d w

This subroutine computes the Green’s and Neumann functions of Laplace’s equationin a semi-infinite domain bounded by a plane wall located at y = wall, as illustratedin Figure lgf 2d w.1.

The Green’s function is given by

G(x;x0) = 1

2ln r 1

2lnR; (1)

where the plus sign corresponds to the Green’s function of the first kind, the minussign corresponds to the Neumann function, r = jx x0j, R = jx x

Im0 j, and

xIm0 = (x0; 2 wall y0) is the location of the image of the singular point with

respect to the wall.

The gradient of the Green’s function is given by

@G

@x= 1

2

x x0

r2 1

2

x x0

R2;

(2)@G

@y= 1

2

y y0

r2 1

2

y y0 + 2wall

R2:

Call statement:

lgf 2d w

(Iopt Input: See Note 1.; Ign Input: See Note 2.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; wall Input: The wall is located at y = wall:

; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradient,rG.

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

2. Set Ign = 1 to obtain the Green’s function of the first kind; set Ign = 2 toobtain the Neumann function.

Page 231: Boundary Element Methods

216 A Practical Guide to Boundary-Element Methods

x 0

x

y

y = wall

Figure lgf 2d w.1 A semi-infinite domain bounded by a plane wall.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Driver: lgf 2d w dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.3),where C is a circular contour.

Files to be linked: None.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink placed above a wall. The streamline pattern associated with the Neumannfunction is shown in Figure lgf 2d w.2.

Page 232: Boundary Element Methods

BEMLIB: laplace/lgf 2d 217

Figure lgf 2d w.2 Streamline pattern of the flow due to a point sink placed abovean impenetrable wall, expressed by the Neumann function.

Page 233: Boundary Element Methods

218 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 2d 1p w

This subroutine computes the periodic Green’s and Neumann functions of Laplace’sequation in a semi-infinite domain bounded by a plane wall located at y = wall, asillustrated in Figure lgf 2d 1p w.1. One of the singularities is located at the pointx0 = (x0; y0).

The Green’s function is given by

G(x;x0) = 1

4ln[ 2fcosh[k(y y0)] cos[k(x x0)]g ]

1

4ln[ 2fcosh[k(y y

Im0 )] cos[k(x x0)]g ]; (1)

where the plus sign corresponds to the Green’s function of the first kind, the minussign corresponds to the Neumann function, and yIm0 = 2wally0 is the y locationof the image of one singular point with respect to the wall.

The gradient of the Green’s function is given by

@G

@x= 1

2L

sin[k(x x0)]

cosh[k(y y0)] cos[k(x x0)]

1

2L

sin[k(x x0)]

cosh[k(y yIm0 )] cos[k(x x0)];

(2)

@G

@y= 1

2L

sinh[k(y y0)]

cosh[k(y y0)] cos[k(x x0)]

1

2L

sinh[k(y yIm0 )]

cosh[k(y yIm0 )] cos[k(x x0)]:

Page 234: Boundary Element Methods

BEMLIB: laplace/lgf 2d 219

x 0

n

CC

y = wall

x

nL

y

Figure lgf 2d 1p w.1 A periodic array of singularities in a semi-infinite domainbounded by a plane wall located at y = wall.

Call statement:

lgf 2d 1p w

(Iopt Input: See Note 1.; Ign Input: See Note 2.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; L Input: Distance between the singularities.; wall Input: The wall is located at y = wall:

; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradient;rG:

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

2. Set Ign = 1 to obtain the Green’s function of the first kind; set Ign = 2 toobtain the Neumann function.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Page 235: Boundary Element Methods

220 A Practical Guide to Boundary-Element Methods

Figure lgf 2d 1p w.2 Streamline pattern of the flow due to a periodic array of pointsinks placed above an impenetrable wall, expressed by the Neumann function.

Driver: lgf 2d 1p w dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.3),where C is a circular contour or one period of a periodic line, as illustrated in Figurelgf 2d 1p w.1.

Files to be linked: None.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to aperiodic array of point sinks placed above a wall. The streamline pattern associatedwith the Neumann function is shown in Figure lgf 2d 1p w.2.

Page 236: Boundary Element Methods

BEMLIB: laplace/lgf 2d 221

Subroutine: lgf 2d ww

This subroutine computes the Green’s and Neumann functions of Laplace’s equationin an infinite strip confined between two parallel plane walls. The first wall is locatedat y = wall1 and the second wall is located at y = wall2, as illustrated in Figurelgf 2d ww.1.

The Green’s function is given by

G(x;x0) = 1

4ln[ 2fcosh[k(x x0)] cos[k(y y0)]g ]

1

4ln[ 2fcosh[k(x x0)] cos[k(y y

Im0 )]g ]; (1)

where:

k = =h is a wave number, and h = wall2 wall1 is the width of the strip.

yIm0 is the y position of the image of the singular point with respect to the

upper or lower wall; thus, yIm0 = 2 wall1 y0 or yIm0 = 2 wall2 y0.

The plus sign corresponds to the Green’s function of the first kind, and theminus sign corresponds to the Neumann function.

The gradient of the Green’s function is given by

@G

@x= 1

4h

sinh[k(x x0)]

cosh[k(x x0)] cos[k(y yIm0 )]

1

4h

sinh[k(x x0)]

cosh[k(x x0)] cos[k(y yIm0 )];

(2)

@G

@y= 1

4h

sin[k(y y0)]

cosh[k(x x0)] cos[k(y yIm0 )]

1

4h

sin[k(y yIm0 )]

cosh[k(x x0)] cos[k(y yIm0 )]:

Page 237: Boundary Element Methods

222 A Practical Guide to Boundary-Element Methods

x

y

y = wall2

y = wall1

x 0

Figure lgf 2d ww.1 An infinite strip bounded by two parallel plane walls.

Call statement:

lgf 2d ww

(Iopt Input: See Note 1.; Ign Input: See Note 2.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; wall1 Input: The first wall is located at y = wall1

; wall2 Input: The second wall is located at y = wall2

; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradient,rG.

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

2. Set Ign = 1 to obtain the Green’s function of the first kind; set Ign = 2 toobtain the Neumann function.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Page 238: Boundary Element Methods

BEMLIB: laplace/lgf 2d 223

Figure lgf 2d ww.2 Streamline pattern of the flow due to a point sink in a channelconfined between two parallel impenetrable walls, expressed by the Neumannfunction.

Driver: lgf 2d ww dr

The driver evaluates the Green’s function, and verifies the integral identity (lgf 2d.3),where C is a circular contour.

Files to be linked: None.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink in a channel confined between two parallel walls. The streamline patternassociated with the Neumann function is shown in Figure lgf 2d ww.2.

Page 239: Boundary Element Methods

224 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 2d www

This subroutine computes the Neumann function of Laplace’s equation in a semi-infinite rectangular strip confined between two parallel plane walls located at x =

wall1 and x = wall2, and a third wall located at y = wall3 intersecting the parallelwalls at right angles, as illustrated in Figure lgf 2d www.1.

The Green’s function is given by

G(x;x0) = 1

4

3Xi=0

fln[ 2fcosh[k(y yi)] cos[k(x xi)]g ]; (1)

where:

k = =h is a wave number, and h = wall2 wall1 is the width of the strip.

x1 = x0 + 2 wall1 and y1 = y0 are the coordinates of the image of thesingular point with respect to the left wall.

x2 = x0 and y2 = y0 + 2 wall3 are the coordinates of the image of thesingular point with respect to the bottom wall.

x3 = x0 + 2wall1 and y3 = y0 + 2wall3 are the coordinates of theimage of the singular point with respect to the left and bottom wall.

The gradient of the Green’s function is given by

@G

@x= 1

4h

3Xi=0

sinh[k(y yi)]

cosh[k(y yi)] cos[k(x xi)];

(2)

@G

@y= 1

4h

3Xi=0

sin[k(x xi)]

cosh[k(y yi)] cos[k(x xi)]:

Call statement:

lgf 2d www

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; wall1 Input: The first wall is located at x = wall1:

; wall2 Input: The second wall is located at x = wall2:

; wall3 Input: The third wall is located at y = wall3:

; G Output: Green’s function.; Gx; Gy) Output: Green’s function gradientrG.

Page 240: Boundary Element Methods

BEMLIB: laplace/lgf 2d 225

x

x = wall1x = wall2

y = wall3

x 0

y

Figure lgf 2d www.1 A semi-infinite strip extending along the y axis.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Driver: lgf 2d www dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.3),where C is a circular contour.

Files to be linked: None.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink placed in a semi-infinite strip. The streamline pattern associated with theNeumann function is shown in Figure lgf 2d www.2.

Page 241: Boundary Element Methods

226 A Practical Guide to Boundary-Element Methods

Figure lgf 2d www.2 Streamline pattern of the flow due to a point sink in a semi-infinite strip, expressed by the Neumann function.

Page 242: Boundary Element Methods

BEMLIB: laplace/lgf 2d 227

Subroutine: lgf 2d crc

This subroutine computes the Neumann function of Laplace’s equation in an infi-nite domain bounded internally by a circle of radius a centered at the point xc, asillustrated in Figure lgf 2d crc.1.

The Neumann function is given by

G(x;x0) = 1

2ln r +

1

2lnR 1

2ln ; (1)

where r = jx x0j, R = jx xIm0 j, = jx xcj, and xIm0 is the inverse point of

the point source with respect to the circle given by

xIm0 = xc +

a2

jx0 xcj2(x0 xc); (2)

([59], p. 363).

The gradient of the Neumann function is given by

@G

@x= 1

2

x x0

r2+

1

2

x xIm0

R2 1

2

x xc

2;

(3)

@G

@y= 1

2

y y0

r2+

1

2

y yIm0

R2 1

2

y yc

2:

Call statement:

lgf 2d crc

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point.; xc; yc Input: Coordinates of the center of the circle.; a Input: Radius of the circle.; G Output: Neumann function.; Gx; Gy) Output: Neumann function gradient,rG.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx and Gy .

Page 243: Boundary Element Methods

228 A Practical Guide to Boundary-Element Methods

x

y

x

xx

0

c0Im

a

Figure lgf 2d crc.1 Illustration of the exterior of a circle of radius a in the xy plane,showing the image of the pole.

Numerical method:

The Neumann function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Driver: lgf 2d crc dr

The driver evaluates the Neumann function and verifies the integral identity (lgf 2d.3),where C is a circular contour.

Files to be linked: None.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink in the exterior of a circle. The streamline pattern associated with theNeumann function is shown in Figure lgf 2d crc.2.

Page 244: Boundary Element Methods

BEMLIB: laplace/lgf 2d 229

Figure lgf 2d crc.2 Streamline pattern of the flow due to a point sink in the exteriorof an impenetrable circle, expressed by the Neumann function.

Page 245: Boundary Element Methods

230 A Practical Guide to Boundary-Element Methods

Directory: laplace/lgf 3d

The Green’s functions of Laplace’s equation in three dimensions constitute a specialclass of harmonic functions that are singular at an arbitrary point x0 = (x0; y0; z0).

By definition, a Green’s function satisfies the singularly forced Laplace’s equation

r2G(x;x0) + Æ3(x x0) = 0; (lgf 2d.1)

explicitly written as

@2G(x;x0)

@x2+@2G(x;x0)

@y2+@2G(x;x0)

@z2+ Æ3(x x0) = 0; (lgf 2d.2)

where:

x = (x; y; z) is the variable “field” or “evaluation” point.

x0 = (x0; y0; z0) is the fixed singular point, also called the “pole.”

Æ3(x x0), written more explicitly as Æ3(x x0; y y0; z z0), is Dirac’sdelta function in three dimensions.

GREEN’S FUNCTIONS OF THE FIRST KIND AND NEUMANN FUNCTIONS:

In addition to satisfying the definition (lgf 3d.1), a Green’s function G(x;x0) or itsnormal derivative n(x) rG(x;x0) is required to be zero when the evaluation pointx lies on a specified surface SG, where n(x) is the unit vector normal to SG.

In the first case, we have a Green’s function of the first kind; in the second case, wehave a Green’s function of the second kind - also called a Neumann function.

PHYSICAL INTERPRETATION:

The Green’s function represents the temperature or concentration field due to a pointsource of heat or species located at the singular point. In fluid mechanics, the Green’sfunction represents the harmonic potential due to a point sink of mass located at thesingular point.

INTEGRAL IDENTITY:

A consequence of (lgf 3d.1) is that Green’s functions satisfy the integral identity

Page 246: Boundary Element Methods

BEMLIB: laplace/lgf 3d 231

ZD

n(x) rG(x;x0) dS(x) =

8<:

1 when x0 is inside Vc12

when x0 is on D0 when x0 is outside Vc

; (lgf 2d.3)

where D is a closed surface enclosing the control volume Vc, and the unit normalvector n points into the control volume.

When the point x0 is located on the surface D, the integral on the left-hand side of(lgf 3d 3) is an improper but convergent principal-value integral.

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary-integral representation of a harmonic function f is

f(x0) = ZD

G(x;x0) n(x) rf(x) dS(x)

+

ZD

f(x) n(x) rG(x;x0) dS(x); (lgf 2d.4)

where D stands for the collection of all boundaries of a selected control volume, andn is the unit vector normal to D pointing inward.

DIRECTORY CONTENTS:

This directory contains a suite of subroutines that evaluate the following Green’sfunctions and their gradients:

Subroutine Topic

lgf 3d fs Green’s function in free space.

lgf 3d w Green’s and Neumann functions in a semi-infinitedomain bounded by a plane wall.

lgf 3d sph Neumann function in the exterior of a sphere.

lgf 3d 2p Doubly periodic Green’s function.

Page 247: Boundary Element Methods

232 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 3d fs

This subroutine computes the Green’s function in an infinite domain in the absenceof boundaries.

The Green’s function is given by

G(x;x0) =1

4r; (1)

where r = jx x0j is the distance between the field point x and the singular pointx0.

The Cartesian components of the gradient of the Green’s function are given by

@G

@x= 1

4

x x0

r3;

@G

@y= 1

4

y y0

r3; (2)

@G

@z= 1

4

z z0

r3:

Call statement:

lgf 3d fs

(Iopt Input: See Note 1.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point.; G Output: Green’s function.; Gx; Gy ; Gz) Output: Green’s function gradient,rG.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx; Gy, and Gz .

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Page 248: Boundary Element Methods

BEMLIB: laplace/lgf 3d 233

Driver: lgf 3d fs dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 3d.3),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver requires the file gauss sph, which contains quadrature base points andweights for integration over the surface of a sphere.

Page 249: Boundary Element Methods

234 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 3d w

This subroutine computes the Green’s and Neumann functions of Laplace’s equationin a semi-infinite domain bounded by a plane wall located at x = wall, as illustratedin Figure lgf 3d w.1.

The Green’s function is given by

G(x;x0) =1

4r 1

4R; (1)

where the minus sign corresponds to the Green’s function of the first kind, the plussign corresponds to the Neumann function, r = jx x0j, R = jx x

Im0 j, and

xIm0 = (2 wall x0; y0; z0) (2)

is the location of the image of the singular point with respect to the wall.

The gradient of the Green’s function is given by

@G

@x= 1

4

x x0

r3 1

4

x 2 wall + x0

R3;

@G

@y= 1

4

y y0

r3 1

4

y y0

R3; (3)

@G

@z= 1

4

z z0

r3 1

4

z z0

R3:

Call statement:

lgf 3d w

(Iopt Input: See Note 1.; Ign Input: See Note 2.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point.; wall Input: The wall is located at x = wall:

; G Output: Green’s function.; Gx; Gy; Gz) Output: Green’s function gradient,rG.

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx; Gy, and Gz .

2. Set Ign = 1 to obtain the Green’s function of the first kind; set Ign = 2 toobtain the Neumann function.

Page 250: Boundary Element Methods

BEMLIB: laplace/lgf 3d 235

x 0

y

z

x

x = wall

Figure lgf 3d w.1 A semi-infinite domain bounded by a plane wall located at x =

wall.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (3).

Driver: lgf 3d w dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 3d.3),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver requires the file gauss sph, which contains quadrature base points andweights for integration over the surface of a sphere.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to apoint sink placed above a wall. The streamline pattern corresponding to the Neumannfunction is shown in Figure lgf 3d w.2.

Page 251: Boundary Element Methods

236 A Practical Guide to Boundary-Element Methods

Figure lgf 3d w.2 Streamline pattern of the flow due to a point sink placed abovean impenetrable wall, expressed by the Neumann function.

Page 252: Boundary Element Methods

BEMLIB: laplace/lgf 3d 237

Subroutine: lgf 3d sph

This subroutine computes the Neumann function of Laplace’s equation in an infi-nite domain bounded internally by a sphere of radius a centered at the point xc, asillustrated in Figure lgf 3d sph.1.

The Neumann function is given by

G(x;x0) =1

4r+

a

jx0 xcj1

4R

1

4a

Z a2=jx0xcj

0

d

jx (x0 + e)j ; (1)

where r = jx x0j, R = jx xIm0 j, xIm0 is the inverse location of the point source

with respect to the sphere given by

xIm0 = xc +

a2

jx0 xcj2(x0 xc); (2)

and e (x0xc)=jx0xcj is the unit vector pointing from the center of the sphereto the location of the singularity ([59], p. 335).

The gradient of the Neumann function is given by

@G

@x= x x0

4r3 a

jx0 xcjx x

Im0

4R3

+1

4a

Z a2=jx0xcj

0

x x0 + ex

jx (x0 + e)j3 d;

@G

@y= y y0

4r3 a

jx0 xcjy y

Im0

4R3(3)

+1

4a

Z a2=jx0xcj

0

y y0 + ey

jx (x0 + e)j3 d;

@G

@z= z z0

4r3 a

jx0 xcjz z

Im0

4R3

+1

4a

Z a2=jx0xcj

0

z z0 + ez

jx (x0 + e)j3 d:

Page 253: Boundary Element Methods

238 A Practical Guide to Boundary-Element Methods

y

z

x

a

xIm

cx0

x0

Figure lgf 3d sph.1 A point source in the exterior of a sphere of radius a.

Call statement:

lgf 3d sph

(Iopt Input: See Note 1.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point.; xc; yc; zc Input: Coordinates of the center of the sphere.; a Input: Radius of the sphere.; G Output: Neumann function.; Gx; Gy; Gz) Output: Neumann function gradient,rG.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx; Gy, and Gz .

Numerical method:

The Neumann function and its gradient are computed by direct evaluation of expres-sions (1) to (3). The integrals on the right-hand sides of (1) and (3) are computed bythe trapezoidal rule [60].

Driver: lgf 3d sph dr

The driver evaluates the Neumann function and verifies the integral identity (lgf 3d.3),where D is the surface of a sphere.

Page 254: Boundary Element Methods

BEMLIB: laplace/lgf 3d 239

Figure lgf 3d sph.2 Streamline pattern of the flow due to a point sink placed outsidean impenetrable sphere, expressed by the Neumann function.

Files to be linked: None for the subroutine.

The driver requires the file gauss sph, which contains quadrature base points andweights for integration over the surface of a sphere.

Streamlines:

In fluid mechanics, the Neumann function represents the velocity potential due to apoint sink placed outside an impenetrable sphere. The streamline pattern is shown inFigure lgf 3d sph.2.

Page 255: Boundary Element Methods

240 A Practical Guide to Boundary-Element Methods

Subroutine: lgf 3d 2p

This subroutine computes the doubly periodic Green’s function representing the po-tential due to a doubly periodic array of singularities arranged in a plane that isperpendicular to the z axis, as illustrated in Figure lgf 3d 2p.1.

The singularities are located at the points xn = x0+Xn, where x0 is the position ofan arbitrary point,Xn are the vertices of a two-dimensional (planar) lattice describedby

Xn = i1 a1 + i2 a2; (1)

i1, i2 are two integers, and a1, a2 are unit base vectors in the plane that is parallel tothe 12 (xy) plane.

The vectorial distance of the field point x from the singular point xn is defined as

xn x xn: (2)

Let e3 be the unit vector along the 3 or z axis, and A = ja1 a2j be the area of theunit cell. As a preliminary, we introduce the reciprocal wave number base vectors

b1 =2

Aa2 e3; b2 =

2

Ae3 a2; (3)

and define the vertices of the reciprocal wave number lattice

ln = j1 b1 + j2 b2; (4)

where j1 and j2 are two integers.

The Green’s function may be computed by two complementary methods dependingon the location of the field point relative to the plane of the singularities.

METHOD 1: FOURIER SERIES EXPANSION

This method is useful when the field point x is located sufficiently far from the planeof the singularities.

The Green’s function is computed using the two-dimensional Fourier series expan-sion

G(x;x0) =1

2A[jxn ezj+

X;jlj6=0

cos(l x0)jlj

exp(jlj jx0 ezj)]:(5)

Page 256: Boundary Element Methods

BEMLIB: laplace/lgf 3d 241

x0x

x

z

2a

a 1

y

Figure lgf 3d 2p.1 A doubly periodic array of three-dimensional singularities lo-cated at the vertices of a planar lattice that is parallel to the xy plane.

Note that, when the field point x is located sufficiently far from the plane of thesingularities, the summed terms decay at an exponential rate.

In practical computation, the indices j1 and j2 defining the wave number lattice index are truncated to the finite range (Max2;Max2).

METHOD 2: EWALD SUMMATION METHOD OF HAUTMAN AND KLEIN [27]

This method is useful when the field point x is located near the plane of the singu-larities.

Following Hautman and Klein [27], we introduce the Ewald summation parameter, and define the projection s of the field point x onto the plane of the singularities,and the distance of this projection from the singular point xn,

sn s xn: (6)

The Green’s function is computed in four parts, as

G(x;x0) =1

2A[ R(x;x0) + S0

1

2jx0 ezj2 S1 +

3

8jx0 ezj4 S2 ];

(7)

where

Page 257: Boundary Element Methods

242 A Practical Guide to Boundary-Element Methods

R(x;x0) =Xn

[1

jxnj 1

jsnj+

1

2

jx0 ezj2jsnj3

3

8

jx0 ezj4jsnj5

];(8)

and the summation with respect to n runs over all singular points.

The functions S0, S1, and S2 on the right-hand side of (7) are given by

S0 =Xn

1 h0(jsnj)jsnj

2

A

1p

+2

A

X;jlj6=0

cos(l x0)jlj

erfc(jlj2

);

(9)

S1 =Xn

1 h1(jsnj)jsnj3

2

A

X;jlj6=0

cos(l x0) jlj erfc( jlj2

);

S2 =Xn

1 h2(jsnj)jsnj5

2

9A

X;jlj6=0

cos(l x0) jlj3 erfc(jlj2

);

where erfc is the complementary error function computed by accurate polynomialapproximations.

The splitting functions h0, h1, and h2 on the right-hand side of equations (9) aregiven by

h0(w) = erfw;

h1(w) = erfw 2pw (1 + 2w2) exp(w2); (10)

h2(w) = erfw 2

9pw (9 + 6w2 4w4 + 8w6) exp(w2);

where erf is the error function computed by accurate polynomial approximations.

In practice, the indices i1 and i2 defined in equation (1) for summation in real spaceon the right-hand side of (8) and (9) are truncated to the finite range (Max3;Max3)

and (Max1;Max1), respectively.

Similarly, the indices j1 and j2 defining the wave number lattice index on theright-hand side of (9) are truncated to the finite range (Max2;Max2).

Page 258: Boundary Element Methods

BEMLIB: laplace/lgf 3d 243

Call statement:

lgf 3d 2p

(Iopt Input: See Note 1.;Method Input: See Note 2.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of one singular point.; a11; a12 Input: Coordinates of the first base vector.; a21; a22 Input: Coordinates of the second base vector.; b11; b12 Input: Coordinates of the first reciprocal base vector.; b21; b22 Input: Coordinates of the second reciprocal base vector.; ew Input: Ewald splitting parameter :; area Input: Area of a unit cell in the plane of the singularities.;Max1;Max2;Max3 Input: See Note 3.; G Output: Green’s function.; Gx; Gy; Gz) Output: Green’s function gradient,rG.

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to also obtain Gx; Gy, and Gz .

2. Set Method = 1 to compute the Green’s function in terms of a Fourier series;set Method = 2 to use the fast summation method.

3. Truncation limits for summation in real and wave number space.

Subroutine ewald 3d 2p must be called before subroutine lgf 3d 2p. Subrou-tine ewald 3d 2p computes the reciprocal wave number base vectors b1 and b2

an the area of the unit cell, and returns a recommended value for the Ewald splittingparameter . The call statement is:

ewald 3d 2p

(a11; a12 Input: Coordinates of the first base vector.; a21; a22 Input: Coordinates of the second base vector.; b11; b12 Input: Coordinates of the first reciprocal base vector.; b21; b22 Input: Coordinates of the second reciprocal base vector.; ew Output: Recommended Ewald splitting parameter :; area) Output: Area of the unit cell in the plane of the singularities.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation of expres-sions (1) and (2).

Page 259: Boundary Element Methods

244 A Practical Guide to Boundary-Element Methods

Figure lgf 3d 2p.2 Streamline pattern of the flow due to a planar square array ofthree-dimensional point sinks. The streamlines lie in the plane of the singular-ities.

Driver: lgf 3d 2p dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 3d.3),where D is the surface of a sphere or the surface of a periodic patch.

Files to be linked: None for the subroutine.

The driver requires the file gauss sph, which contains quadrature base points andweights for integration over the surface of a sphere.

Streamlines:

In fluid mechanics, the Green’s function represents the velocity potential due to adoubly-periodic array of point sinks. The streamline pattern for a particular configu-ration is shown in Figure lgf 3d 2p.2.

Page 260: Boundary Element Methods

245

Directory: laplace/lgf ax

Consider the cylindrical polar coordinates (x; ; ') defined in Figure lgf ax.1 withreference to the Cartesian coordinates (x; y; z). A semi-infinite plane of constantmeridional angle ' passing through the x axis is called a meridional plane.

The axisymmetric Green’s functions of Laplace’s equation constitute a special classof harmonic functions that are singular around a circular ring of radius 0 positionedat x = x0. By definition, an axisymmetric Green’s function satisfies the equation

@2G

@x2+

1

@

@(@G

@) +

1

0Æ2(x x0; 0) = 0; (lgf ax.1)

where G = G(x; ; x0; 0), and:

(x; ) are the axial and radial coordinates of the variable “field” or “evalua-tion” point.

(x0; 0) are the axial and radial coordinates of the fixed singular point repre-senting a ring-like singularity.

Æ2(x x0; 0), is Dirac’s delta function in two dimensions operating in ameridional plane of constant angle '.

GREEN’S FUNCTIONS OF THE FIRST KIND AND NEUMANN FUNCTIONS:

In addition to satisfying the definition (lgf ax.1), an axisymmetric Green’s functionG(x;x0) or its normal derivative n(x) rG(x;x0) is required to vanish when theevaluation point x lies on a specified axisymmetric surface SG, where n(x) is theunit vector normal to SG.

In the first case,we have a Green’s function of the first kind; in the second case,wehave a Neumann function - also called a Green’s function of the second kind.

PHYSICAL INTERPRETATION:

The Green’s function represents the temperature or concentration field due to a ringof point sources of heat or species with unit strength per arc length. In fluid me-chanics, the Green’s function represents the harmonic potential due to a ring of pointsinks of mass.

Page 261: Boundary Element Methods

246 A Practical Guide to Boundary-Element Methods

x

y

z

ϕσSB

SB

CC

Figure lgf ax.1 Cylindrical polar coordinates used to define the Green’s functionsof Laplace’s equation in an axisymmetric domain.

RELATION TO THE GREEN’S FUNCTION IN THREE DIMENSIONS:

Consider the free-space axisymmetric Green’s function. To demonstrate its relationto the corresponding three-dimensional Green’s function presently denoted by G3D ,we consider the definition

r2G3D + Æ3(x x0) = 0; (lgf ax.2)

wherer2 is the Laplacian operator in three dimensions, and recast it into the explicitform

@2G3D

@x2+

1

@

@(@G

3D

@) +

1

2

@2G3D

@'2

+1

0Æ1[0 (' '0)] Æ2(x x0; 0) = 0: (lgf ax.3)

Integrating both sides of (lgf ax.3) with respect to 0' from 0 to 20 to eliminatethe third term on the left-hand side, and comparing the result with (lgf ax.1), we find

Page 262: Boundary Element Methods

BEMLIB: laplace/lgf ax 247

G(x0; 0; x; ) =

Z 2

0

G3D

d' =1

4

Z 2

0

d'

jx x0j

=1

4

Z 2

0

d'p(x x0)2 + (y y0)2 + (z z0)2

=1

4

Z 2

0

d'

[(x x0)2 + ( cos 0 cos0)2 + ( sin 0 sin0)2]1=2

=1

4

Z 2

0

d(' '0)

[(x x0)2 + 2 + 20 20 cos(' '0)]1=2

=1

4

Z 2

0

du

[(x x0)2 + 2 + 20 20 cosu]1=2

=1

4

Z 2

0

du

[(x x0)2 + ( + 0)2 4 0 cos2 u2]1=2

=1

p

(x x0)2 + ( + 0)2

Z 2

0

dup1 k2 cos2 u

2

=F (k)

p

(x x0)2 + ( + 0)2; (lgf ax.4)

where u = ' '0, and

k2 4 0

(x x0)2 + ( + 0)2: (lgf ax.5)

We have introduced the complete elliptic integral of the first kind

F (k) Z =2

0

dp1 k2 cos2

; (lgf ax.6)

where is a dummy variable of integration.

The last expression in (lgf ax.4) reveals the symmetry property

G(x0; 0; x; ) = G(x; ; x0 ; 0): (lgf ax.7)

Similar relations can be written for Green’s functions in domains bounded by ax-isymmetric surfaces.

Page 263: Boundary Element Methods

248 A Practical Guide to Boundary-Element Methods

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary-integral representation of a harmonic function f takes the form

f(x0; 0) = ZC

G(x; ; x0 ; 0) [n(x) rf(x)] (x) dl(x)(lgf ax.8)

+

ZC

f(x) [n(x) rG(x; ; x0 ; 0)] (x) dl(x);

where C stands for the collection of the contours of all boundaries of a selectedsolution domain in a meridional plane, and n is the unit vector normal to C pointinginward.

INTEGRAL IDENTITY:

Applying (lgf 2d.8) for a constant function f , we find that the Green’s function sat-isfies the integral identity

ZC

[n(x) rG(x; ; x0 ; 0)] (x) dl(x) =

8<:

1 when x0 is inside Ac12

when x0 is on C0 when x0 is outside Ac

;

(lgf ax.9)

where C is a closed loop in a meridional plane or an open planar line beginning andending at the x axis, both enclosing a control area Ac. In both cases, the normalvector n is directed into the control area Ac. When the point x0 is located on thecontourC, the integral on the left-hand side of (sgf ax.9) is a principal-value integral.

DIRECTORY CONTENTS:

This directory contains the following subroutines that evaluate axisymmetric Green’sfunctions and their gradients:

Subroutine Topic

lgf ax fs Green’s function in free space.

lgf ax w Green’s and Neumann functions in a semi-infinite domainbounded by a plane wall.

Page 264: Boundary Element Methods

BEMLIB: laplace/lgf ax 249

Subroutine: lgf ax fs

This subroutine computes the axisymmetric Green’s function in an infinite domainin the absence of boundaries.

Using the last expression of (lgf ax.4), we find that the Green’s function is given by

G(x; ; x0 ; 0) =F (k)

p

(x x0)2 + ( + 0)2: (1)

Differentiating the expression given in the fifth line of (lgf ax.4), we find that theGreen’s function gradient is given by

Gx(x; ; x0; 0) @G

@x= x x0

4I30;

G(x; ; x0; 0) @G

@= 1

4( I30 0 I31); (2)

where we have defined the integrals

I30 Z 2

0

du

[(x x0)2 + 2 + 20 20 cosu]3=2;

(3)

I31 Z 2

0

cosu du

[(x x0)2 + 2 + 20 20 cosu]3=2:

Straightforward algebraic manipulation yields the alternative forms

I30 =4

[(x x0)2 + ( + 0)2]3=2E(k)

1 k2;

(4)

I31 =4

[(x x0)2 + ( + 0)2]3=21

k2[2 F (k) +

2 k2

1 k2E(k)];

where F (k) is the complete elliptic integral of the first kind defined in (lgf ax.6), and

E(k) Z =2

0

p1 k2 cos2 d (5)

is the complete elliptic integral of the second kind; is a dummy variable of integra-tion.

Page 265: Boundary Element Methods

250 A Practical Guide to Boundary-Element Methods

Call statement:

lgf ax fs

(Iopt Input: See Note 1.; x; Input: Coordinates of the field point.; x0; 0 Input: Coordinates of the singular point.; G Output: Green’s function.; Gx; G) Output: Green’s function gradient.

Note:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to obtain G, Gx, and G .

Numerical method:

The Green’s function and its gradient are computed by direct evaluation using ex-pressions (1) to (6). The complete elliptical integrals are computed using an iterativemethod implemented in subroutine ell int.

Driver: lgf ax fs dr

The driver evaluates the Green’s function and verifies the integral identity (lgf 2d.9),where C is a circular contour.

Files to be linked:

ell int: Evaluation of complete elliptic integrals of the first and second kind.

Streamlines:

In fluid mechanics, the axisymmetric Green’s function represents the velocity poten-tial due to a ring of point sinks. The streamline pattern is shown in Figure lgf ax fs.1.

Page 266: Boundary Element Methods

BEMLIB: laplace/lgf ax 251

Figure lgf ax fs.1 Streamline pattern of the flow due to a ring of point sinks.

Page 267: Boundary Element Methods

252 A Practical Guide to Boundary-Element Methods

Subroutine: lgf ax w

This subroutine computes the axisymmetric Green’s and Neumann functions in asemi-infinite domain bounded by a plane wall located at x = wall.

The Green’s functions are computed as the sum of the free-space Green’s functionand its image with respect to the wall, located at x = 2 wall x0.

Call statement:

lgf ax w

(Iopt Input: See Note 1.; Ign Input: See Note 2.; x; Input: Coordinates of the field point.; x0; 0 Input: Coordinates of the singular point.; wall Input: The wall is located at x = wall:

; G Output: Green’s function.; Gx; G) Output: Green’s function gradient.

Notes:

1. Set Iopt = 1 to obtain only G; set Iopt 6= 1 to obtain G, Gx, and G .

2. Set Ign = 1 to obtain the Green’s function of the first kind; set Ign = 2 toobtain the Neumann function.

Numerical method:

The Green’s function and its gradient are computed by direct evaluation using the an-alytical expressions for the free-space Green’s function. The complete elliptical inte-grals are computed using an iterative method implemented in subroutine ell int.

Driver: lgf ax fs dr

The driver evaluates the Green’s function and verifies the integral identity (lgf ax.9),where C is a circular contour.

Files to be linked:

ell int: Evaluation of complete elliptic integrals of the first and second kind.

Page 268: Boundary Element Methods

BEMLIB: laplace/lgf ax 253

Figure lgf ax w.1 Streamline pattern of the flow due to a ring of point sinks in frontof an impenetrable wall, expressed by the Neumann function.

Streamlines:

In fluid mechanics, the axisymmetric Green’s function represents the velocity poten-tial due to a ring of point sinks. The streamline pattern associated with the Neumannfunction is shown in Figure lgf ax w.1.

Page 269: Boundary Element Methods

254 A Practical Guide to Boundary-Element Methods

Directory: laplace/flow 1d

This directory contains a code that computes steady unidirectional, pressure- orgravity-driven viscous flow through a tube with arbitrary cross-section, as illustratedin Figure flow 1d.1.

Circular, elliptical, rectangular, and triangular tube shapes are implemented in thecode. Other shapes may be included by straightforward additions and modifications.

MATHEMATICAL FORMULATION:

The equation of fluid motion for steady unidirectional viscous flow requires that thestreamwise component of the velocity along the z axis, denoted by uz, satisfies thePoisson equation [59]

r2uz = G

(1)

with a constant right-hand side, where r2 @2=@x

2 + @2=@y

2 is the Laplacianoperator over the tube cross-section, is the fluid viscosity,

G dp

dz+ gz (2)

is the negative of the modified axial pressure gradient incorporating the effect ofgravity, is the fluid density, and gz is the component of the acceleration of gravityvector along the z axis. The no-slip boundary condition requires that uz vanisharound the tube contour C in the xy plane.

To compute the solution, we decompose uz into a particular component fP thatsatisfies Poisson’s equation

r2fP = G

; (3)

and a homogeneous component f that satisfies Laplace’s equation

r2f = 0; (4)

so that

uz = fP + f: (5)

The non-slip boundary condition requires that f = fP around the tube contour C.

Page 270: Boundary Element Methods

BEMLIB: laplace/flow 1d 255

xn

C

y

z

Figure flow 1d.1 Steady unidirectional flow through a tube with arbitrary cross-section computed by a boundary-element method.

It is convenient to set

fP (x; y) = G

v(x; y); (6)

where the function v(x; y) satisfies Poisson’s equationr2v = 1. The no-slip bound-

ary condition requires that f = fP = Gv= around the tube contour C.

Moreover, it is convenient to express v in the quadratic form

v(x; y) =1

2[ (x xR)

2 + (1 ) (y yR)2]; (7)

where is an arbitrary constant parameter, and (xR; yR) are the coordinates of anarbitrary reference point in the xy plane. Straightforward differentiation confirmsthat the function q satisfies Poisson’s equation r2

v = 1, for any value of , asrequired.

Using the boundary-integral formulation, we find that the homogeneous componentf at a point x0 inside the tube is given by the integral representation

f(x0) = ZC

G(x;x0)@f(x)

@ndl(x)

+

ZC

f(x) [n(x) rG(x;x0)] dl(x); (8)

where @f=@n = n rf is the normal derivative of f , n is the unit normal vectorpointing into the tube, and G(x;x0) = 1

2ln jx x0j is the free-space Green’s

function of Laplace’s equation in two dimensions.

Page 271: Boundary Element Methods

256 A Practical Guide to Boundary-Element Methods

Substituting the boundary condition f = fP = Gv= around C in the double-layer potential, we obtain the more explicit representation

f(x0) = ZC

G(x;x0)@f(x)

@ndl(x)

+G

ZC

v(x) [n(x) rG(x;x0)] dl(x): (9)

Next, we take the limit as the point x0 approaches the tube contour C, express thelimit of the double-layer potential on the right-hand side in terms of its principalvalue, and rearrange to derive an integral equation of the first kind for the normalderivative @f=@n,

ZC

G(x;x0)@f(x)

@ndl(x)

= G

2v(x0) +

G

Z PV

C

v(x) [n(x) rG(x;x0)] dl(x); (10)

where the point x0 lies on C, and PV denotes the principal value.

UNIQUENESS OF SOLUTION:

The solution of the integral equation (10) is unique only when the transfinite diameterof the tube contour C, denoted by C , is different from unity (in the case of a circle,C is equal to the circle radius) [70]. If C is equal to unity, then any solution canbe shifted by an arbitrary constant. This superficial difficulty can be avoided byrescaling the contour at the outset, so that C becomes different from unity.

Another way of removing the non-uniqueness of solution is to impose the integralconstraint

ZC

@f(x)

@ndl(x) = 0: (11)

If C 6= 1, this constraint is automatically satisfied.

COMPUTATION OF THE FLOW RATE:

Green’s second identity in the plane states that any two non-singular functions f(x; y)and v(x; y) satisfy the relation

Z ZAc

(f r2v v r2

f) dA =

IC

n (v rf f rv) dl; (12)

Page 272: Boundary Element Methods

BEMLIB: laplace/flow 1d 257

where C is the boundary of a region Ac in the xy plane, and n is the unit vectornormal to C pointing inward. Assuming that the function f satisfies Laplace’s equa-tion r2

f = 0 and the function v satisfies Poisson’s equationr2v = 1, we derive an

expression for the areal integral of f ,Z ZAc

f dA =

IC

n [v rf f rv] dl: (13)

Using the boundary condition f = fP = Gv= around C, we obtainZ ZAc

f dA =

IC

n [v r(f G

v) ] dl =

IAc

n [v ruz] dl: (14)

Next, we express the particular solution fP as the divergence of the vector functionh, writing f

P = (G=)r h. For the particular choices (6) and (7), the scalarcomponents of h are given by hx = x

3=(6) and hy = (1 ) y3=(6). Using

the divergence theorem, we writeZ ZAc

fPdA =

G

IC

n h dl: (15)

Finally, we use the decomposition (5), take into consideration (14) and (15), identifyAc with the tube cross-section, and thus derive an expression for the axial flow ratein the boundary-integral form

Q Z Z

Ac

uz dA =

Z ZAc

(f + fP ) dA

=

IC

n (v ruz +G

h) dl: (16)

Once the normal derivative of uz around the tube is known, the integral on the right-hand side of (16) may be computed by elementary numerical methods.

NUMERICAL METHOD:

The tube contour C is discretized into a collection of N boundary elements Ei de-fined by N + 1 marker points, where i = 1; : : : ; N . The boundary elements may bestraight segments or circular arcs. Approximating the homogeneous solution and itsnormal derivative with constant functions over each element, we obtain a discretizedversion of the integral equation (10),

NXi=1

@f

@n

i

ZEi

G(x;x0) dl(x)

= G

2v(x0) +

G

NXi=1

vi

Z PV

Ei

n(x) rG(x;x0) dl(x); (17)

Page 273: Boundary Element Methods

258 A Practical Guide to Boundary-Element Methods

where the subscript i denotes that the corresponding variable is evaluated at the ithboundary element.

Next, we identify the point x0 with the mid-point of each element, denoted by xMj ,where j is the element label, set v(xMj ) = vj , and obtain a system of linear equationsfor the unknown values (@f=@n)i,

NXi=1

@f

@n

i

ZEi

G(x;xMj ) dl(x)

= G

2vj +

G

NXi=1

vi

Z PV

Ei

n(x) rG(x;xMj ) dl(x); (18)

for j = 1; : : : ; N . The linear system (18) is solved by Gauss elimination.

COMPUTATION OF THE SHEAR STRESS:

Using the decomposition (5) and the definition (6), we find that the shear stress overthe ith boundary element is given by

sh =

@f

@n

i

G (n rv)i : (19)

Integrating the shear stress along the tube perimeter, we obtain the drag force. Aglobal force balance requires that the drag force be equal to the negative of the pres-sure gradient G multiplied by the tube cross-sectional area. This property may beused to confirm the accuracy of the solution.

COMPUTATION OF THE VELOCITY AT A POINT IN THE FLOW:

The homogeneous component of the velocity at a point x0 inside the tube is com-puted using the discretized boundary-integral representation

f(x0) = NXi=1

@f

@n

i

ZEi

G(x;x0) dl(x)

+G

NXi=1

vi

ZEi

n(x) rG(x;x0) dl(x): (20)

The total velocity is computed from the decomposition (5) and the definition (6).

Main program: flow 1d

The main program solves the integral equation (10) for the distribution of the normalderivative of the homogeneous component of the velocity, computes the flow ratealong the tube, and evaluates the velocity at a specified point in the flow.

Page 274: Boundary Element Methods

BEMLIB: laplace/flow 1d 259

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. flow 1d geoDiscretization of the boundary geometry.

4. flow 1d sdlpEvaluation of the single- and double-layer harmonic potential over the bound-ary elements.

5. flow 1d velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

8. lgf 2d fsFree-space Green’s function of Laplace’s equation.

Input files:

1. circle.datParameters for flow through a circular tube.

2. contour.datSpecified nodes of the tube contour.

3. ellipse.datParameters for flow through an elliptical tube.

4. rectangle.datParameters for flow through a rectangular tube.

5. triangle.datParameters for flow through a triangular tube.

Page 275: Boundary Element Methods

260 A Practical Guide to Boundary-Element Methods

Output files:

1. flow 1d.elmBoundary element distribution.

2. flow 1d.trcDistribution of boundary shear stress.

3. flow 1d.velRecording of the velocity at a point in the flow.

Page 276: Boundary Element Methods

261

Directory: laplace/flow 1d 1p

This directory contains a code that computes unidirectional shear flow over a periodicarray of cylinders or a periodic wall, as illustrated in Figure flow 1d 1p.1. Far abovethe cylinders or the periodic wall, the velocity profile tends to become linear withrespect to y. Far below the cylinders, the velocity tends to a constant value parallelto the array, called the “drift velocity.”

MATHEMATICAL FORMULATION:

The equation of fluid motion requires that the axial component of the velocity in thedirection of the z axis, denoted by uz, satisfy Laplace’s equation

r2uz = 0; (1)

which is to be solved subject to:

1. The boundary condition uz = 0 over the surface of the cylinders or periodicwall.

2. The far-field condition uz ' y as y ! 1, where is a specified constantshear rate.

Using the boundary-integral formulation, we find that the z component of the veloc-ity at a point x0 = (x0; y0) that lies in the domain of flow may be expressed in theintegral form [61]

uz(x0) = 1

ZC

G(x;x0) q(x) dl(x) +G y0 + USlip; (2)

where:

USlip is an a priori unknown slip velocity.

C is the contour of one cylinder or one period of the wall.

q = n ruz is the wall shear stress.

n is the unit normal vector pointing into the flow.

G(x;x0) is the singly periodic upward-biased Green’s function of Laplace’sequation given by

G(x;x0) = 1

4ln[ 2fcosh[k(y y0)] cos[k(x x0)]g ] y y0

2L:

(3)

Page 277: Boundary Element Methods

262 A Practical Guide to Boundary-Element Methods

y

(b)

Drift velocity

y

(a)

xL

z

x

L

z

Figure flow 1d 1p.1 Unidirectional shear flow (a) over a periodic array of cylin-ders, and (b) past a periodic wall.

k = 2=L is the wave number, and L is the period of the flow identified withthe separation between the singular points.

A global force balance requires

ZC

q dl = L: (4)

Applying the integral representation (2) at a point x0 located at the surface of acylinder or periodic wall and requiring the no-slip boundary condition, we obtain anintegral equation of the first kind for the boundary shear stress,

ZC

G(x;x0) f(x0) dl(x) USlip = y0; (5)

supplemented by the integral constraint (4).

Using the properties of the Green’s function, we find that, far below the cylinders,

Page 278: Boundary Element Methods

BEMLIB: laplace/flow 1d 1p 263

the velocity tends to the a priori unknown drift velocity UDrift given by

UDrift = USlip +1

L

ZC

f y dl: (6)

The integral on the right-hand side of (6) is evaluated after the solution of the integralequation (5) has been found.

Numerical method:

The surface of a cylinder or one period of the wall is discretized into a collectionof boundary elements, and the wall shear stress f is approximated with a constantfunction over each element. Applying the integral equation (5) at the mid-point ofeach element, we obtain a system of linear equations for the element values of theshear stress. The linear system is solved by the method of Gauss elimination.

Once the solution has been found, the velocity at a point in the flow is computedusing the discrete form of the boundary-integral representation (2).

Main program: flow 1d 1p

The main program solves an integral equation of the first kind for the distribution ofthe boundary shear stress and computes the slip and drift velocities.

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. flow 1d 1p geoDiscretization of the boundary geometry.

4. flow 1d 1p slpEvaluation of the single-layer potential over the boundary elements.

5. flow 1d 1p velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

Page 279: Boundary Element Methods

264 A Practical Guide to Boundary-Element Methods

8. lgf 2d 1pSingly periodic Green’s function of Laplace’s equation.

Input files:

1. circle.datParameters for flow over an array of circular cylinders.

2. ellipse.datParameters for flow over an array of elliptical cylinders.

3. prt rec.datParameters for flow over a periodic wall with rectangular protrusions.

4. rec.datParameters for flow over an array of rectangular cylinders.

5. triangle.datParameters for flow over an array of triangular cylinders.

Output files:

1. flow 1d 1p.elmBoundary element distribution.

2. flow 1d 1p.trcDistribution of boundary shear stress.

3. flow 1d 1p.velRecording of the velocity at a point in the flow.

Page 280: Boundary Element Methods

265

Directory: laplace/flow 2d

This directory contains a code that computes potential flow in a two-dimensionaldomain with arbitrary geometry. Several types of flows and domain geometries im-plemented in the code are illustrated in Figure flow 2d.1. Other configurations canbe included by straightforward additions and modifications.

Figure flow 2d.1(a) shows the streamline pattern of streaming (uniform) flow pasta circular cavity on a plane wall in the presence of a parallel upper wall. Figureflow 2d.1(b) shows the streamline pattern of streaming flow past a rectangular cav-ity in a semi-infinite domain. Figure flow 2d.1(c) shows the streamline pattern ofstreaming flow over a circular protrusion.

MATHEMATICAL FORMULATION:

The velocity u is decomposed into a far-field component prevailing far from thewall denoted by u

1, expressing uniform (streaming) flow along the x axis, and adisturbance component denoted by uD, so that

u = u1 + u

D: (1)

The disturbance velocity is described in terms of the gradient of a single-valueddisturbance harmonic potential D , so that uD = rD . The decomposition (1) thenbecomes

u = u1 +rD : (2)

Requiring the no-penetration boundary condition u n = 0 over the boundaries ofthe flow, where n is the unit normal vector, we derive a boundary condition for thenormal derivative of the disturbance potential,

n rD @D

@n= u1 n: (3)

Using the standard boundary-integral representation, we find that the disturbancepotential satisfies the integral equation of the second kind

D(x0) = 2

ZC

G(x;x0) [n(x) rD(x)] dl(x)

+2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x); (4)

Page 281: Boundary Element Methods

266 A Practical Guide to Boundary-Element Methods

(a)

(b)

(c)

Figure flow 2d.1 Streamline patterns of potential streaming flow over a circular orrectangular cavity and past a circular protrusion. The dark circles are the end-points of the boundary elements.

Page 282: Boundary Element Methods

BEMLIB: laplace/flow 2d 267

where the contour C includes all boundaries of the flow, the point x0 lies on C, nis the unit vector normal to C pointing into the flow, and G(x;x0) is the free-spaceGreen’s function. Implementing the boundary condition (3) and rearranging (4), weobtain

D(x0) 2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x)

= 2 u1 ZC

G(x;x0) n(x) dl(x): (5)

NUMERICAL METHOD:

The boundaries of the flow are discretized into a collection of N boundary elementsdenoted by Ei, i = 1; : : : ; N . The boundary elements can be straight segmentsor circular arcs. The disturbance potential and its normal derivative are approxi-mated with constant functions over the ith element denoted respectively by

Di and

(@D

@n )i = u1 n(i), where n(i) is the normal vector evaluated at the elementmid-point. Note that the normal vector is constant over straight element.

Subject to these approximations, the integral equation (5) assumes the discretizedform

D(x0) 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;x0) dl(x)

= 2 u1 NXi=1

n(i)

ZEi

G(x;x0) dl(x): (6)

Identifying the point x0 with the mid-point of the jth element, denoted by xMj , wederive a system of linear equations for the N unknown values Di ,

Dj 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;xMj ) dl(x)

= 2 u1 NXi=1

n(i)

ZEi

G(x;xMj ) dl(x); (7)

where j = 1; : : : ; N .

To illustrate the structure of the linear system explicitly, we collect the two terms onthe left-hand side of (7) and rearrange to find

Page 283: Boundary Element Methods

268 A Practical Guide to Boundary-Element Methods

NXi=1

Di [

1

2Æij

Z PV

Ei

n(x) rG(x;xMj ) dl(x) ]

= u1

NXi=1

n(i)

ZEi

G(x;xMj ) dl(x): (8)

The integrals on the left- and right-hand sides of (8) are computed by numericalmethods, and the linear system is solved by the method of Gauss elimination.

COMPUTATION OF THE VELOCITY AT A POINT IN THE FLOW:

To obtain the velocity at a point in the flow, we evaluate the gradient of the distur-bance potential on the right-hand side of equation (2) using centered differences. Thedisturbance potential itself is evaluated using the discretized integral representation

D(x0) = u

1 NXi=1

n(i)

ZEi

G(x;x0) dl(x)

+

NXi=1

Di

ZEi

n(x) rG(x;x0) dl(x); (9)

where the point x0 lies in the domain of flow.

Main program: flow 2d

The main program solves an integral equation of the second kind for the boundarydistribution of the disturbance potential and generates streamlines originating fromspecified points in the flow.

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. flow 2d geoDiscretization of the boundary geometry.

4. flow 2d sdlpEvaluation of the single-and double-layer harmonic potential over boundaryelements.

Page 284: Boundary Element Methods

BEMLIB: laplace/flow 2d 269

5. flow 2d velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

8. lgf 2d fsGreen’s function of Laplace’s equation in free space.

Input files:

1. cvt crc.datParameters for flow over a circular cavity on a plane wall.

2. cvt rec.datParameters for flow over a rectangular cavity on a plane wall.

3. prt crc.datParameters for flow over a circular protrusion on a plane wall.

Output files:

1. flow 2d.strStreamlines.

2. flow 2d.outBoundary distribution of the disturbance potential.

3. flow 2d.profVelocity profile.

Page 285: Boundary Element Methods

270 A Practical Guide to Boundary-Element Methods

Directory: laplace/body 2d

This directory contains a code that computes potential flow past a two-dimensionalbody with arbitrary geometry, with vanishing or non-zero circulation around thebody, as illustrated in Figure body 2d.1. The flow occurs in an infinite domain offlow or a semi-infinite domain bounded by a plane wall located at y = wall wherethe no-penetration condition is required.

Several body geometries implemented in the code are illustrated in Figure body 2d.1;others can be included by straightforward modifications.

MATHEMATICAL FORMULATION:

The velocity u is decomposed into three parts as

u = u1 + v + u

D; (1)

where:

u1 is the far-field component prevailing far from the body, expressing uniform

(streaming) flow along the x axis.

v is the velocity field due to a point vortex with specified strength situatedat the body interior (e.g., [59]). In the case of flow in a semi-infinite domainbounded by an infinite plane wall, v also includes the image of the point vortexwith respect to the wall, included to satisfy the no-penetration condition overthe wall.

uD is a disturbance flow component expressed by the gradient of the single-

valued disturbance harmonic potential D ,

uD = rD : (2)

Requiring the no-penetration boundary condition u n = 0 around the contour ofthe body in the xy plane, where n is the unit vector normal to the body, we derive aboundary condition for the normal derivative of the disturbance potential,

n rD @D

@n= (u1 + v) n: (3)

Using the standard boundary-integral formulation, we find that the disturbance po-tential satisfies the integral equation of the second kind

Page 286: Boundary Element Methods

BEMLIB: laplace/body 2d 271

Figure body 2d.1 Streamlines of flow past a circle, a rectangle, a triangle, and aJoukowski airfoil.

D(x0) = 2

ZC

G(x;x0) [n(x) rD(x)] dl(x)

+2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x); (4)

where G(x;x0) is a Green’s function of Laplace’s equation in two dimensions, andthe point x0 lies on the contour of the body C.

Inserting the boundary condition (3) into (4) and rearranging, we obtain

Page 287: Boundary Element Methods

272 A Practical Guide to Boundary-Element Methods

D(x0) 2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x)

= 2

ZC

(u1 + v) n(x)G(x;x0) dl(x): (5)

NUMERICAL METHOD:

The contour of the body is discretized into a collection of N boundary elementsdenoted by Ei, i = 1; : : : ; N . The boundary elements can be straight segments orcircular arcs. The disturbance potential and its normal derivative are assumed to beconstant over the ith element denoted respectively by Di and

(@

D

@n)i = (u1 + v

(i)) n(i); (6)

where n(i) and v(i) are the normal vector and velocity induced by the point vortexevaluated at the mid-point of the ith element.

Subject to these approximations, the integral equation (5) assumes the discretizedform

D(x0) 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;x0) dl(x)

= 2

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;x0) dl(x): (7)

Identifying the point x0 with the mid-point of the jth element, denoted by xMj , weobtain a system of linear equations for the unknown values Di ,

Dj 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;xMj ) dl(x)

= 2

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;xMj ) dl(x); (8)

where j = 1; : : : ; N . To illustrate the structure of the linear system more clearly, wecollect the two terms on the left-hand side, and rearrange to find

Page 288: Boundary Element Methods

BEMLIB: laplace/body 2d 273

NXi=1

Di [

1

2Æij

Z PV

Ei

n(x) rG(x;xMj ) dl(x) ]

=

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;xMj ) dl(x): (9)

The integrals in (9) are computed by numerical methods and the linear system issolved by Gauss elimination.

TANGENTIAL VELOCITY:

The normal component of the disturbance velocity along the boundary contour iscomputed by solving an integral equation. The tangential component is computedby differentiating the disturbance potential with respect to arc length using numer-ical methods. The tangential component is then added to the normal componentvelocity to yield the total disturbance velocity. The total velocity is computed fromthe decomposition expressed by equation (1).

COMPUTATION OF THE VELOCITY AT A POINT IN THE FLOW:

To obtain the velocity at a point in the flow, we compute the gradient of the dis-turbance potential on the right-hand side of equation (2) using centered differences.The disturbance potential is evaluated using the discretized integral representation

D(x0) =

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;x0) dl(x)

+

NXi=1

Di

ZEi

n(x) rG(x;x0) dl(x); (10)

where the point x0 lies in the domain of flow.

Main program: body 2d

The main program solves an integral equation of the second kind for the boundarydistribution of the disturbance potential, computes the boundary distribution of thepressure coefficient and the force exerted on the body [60], and generates streamlinesoriginating from specified points in the flow.

Page 289: Boundary Element Methods

274 A Practical Guide to Boundary-Element Methods

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. body 2d geoDiscretization of the boundary geometry.

4. body 2d sdlpEvaluation of the single- and double-layer harmonic potential over boundaryelements.

5. body 2d velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

8. lgf 2d fsGreen’s function of Laplace’s equation in free space.

9. lgf 2d wGreen’s function of Laplace’s equation for a semi-infinite domain bounded bya plane wall.

Input files:

1. airfoil.datParameters for flow past an airfoil. Boundary element nodes for Joukowskiairfoils are generated by program joukowski included in this directory.

2. circle.datParameters for flow past a circular cylinder.

3. rectangle.datParameters for flow past a rectangular cylinder.

4. triangle.datParameters for flow past a triangular cylinder.

Page 290: Boundary Element Methods

BEMLIB: laplace/body 2d 275

Output files:

1. body 2d.strStreamlines.

2. body 2d.outBoundary distribution of the disturbance potential and tangential velocity.

Page 291: Boundary Element Methods

276 A Practical Guide to Boundary-Element Methods

Directory: laplace/body ax

This directory contains a code that computes potential flow past an axisymmet-ric, compact (singly connected) or toroidal (doubly connected) body with arbitrarygeometry, as illustrated in Figure body ax.1. The problem formulation allows fornon-zero circulation around the toroidal body.

Two body geometries implemented in the code are illustrated in Figure body ax.1;other geometries can be included by straightforward additions and modifications.

MATHEMATICAL FORMULATION:

The velocity u is decomposed into three parts as

u = u1 + v + u

D; (1)

where:

u1 is the far-field component prevailing far from the body, expressing uniform

(streaming) flow along the x axis of symmetry.

v is the velocity due to a line vortex ring with specified strength situated inthe interior of the body, generating circulation around the toroidal body. Inthe case of flow past a compact body, this component is inconsequential, andserves only to modify the disturbance velocity.

uD is a disturbance velocity expressed by the gradient of the single-valued

harmonic potential D ,

uD = rD : (2)

Requiring the no-penetration boundary conditionu n = 0 around the contour of thebody in a meridional plane of constant angle ', where n is the unit vector normal tothe body, we derive a boundary condition for the normal derivative of the disturbancepotential,

n rD @D

@n= (u1 + v) n: (3)

Using the standard boundary-integral formulation, we find that the disturbance po-tential satisfies the integral equation of the second kind

D(x0) = 2

ZC

G(x;x0) [n(x) rD(x)] dl(x)

+2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x); (4)

Page 292: Boundary Element Methods

BEMLIB: laplace/body ax 277

Figure body ax.1 Streamlines of flow past a sphere and a triangular torus computedby code body ax. The marks inside the body correspond to the trace of thecirculation-producing line vortex ring.

where G(x;x0) is the free-space Green’s function of Laplace’s equation in an ax-isymmetric domain, and the point x0 lies on the contour of the body C.

Page 293: Boundary Element Methods

278 A Practical Guide to Boundary-Element Methods

Inserting the boundary condition (3) into (4) and rearranging, we obtain

D(x0) 2

Z PV

C

D(x) [n(x) rG(x;x0)] dl(x)

= 2

ZC

(u1 + v) G(x;x0) n(x) dl(x): (5)

NUMERICAL METHOD:

The contour of the body in a meridional plane is discretized into a collection ofN boundary elements denoted by Ei, i = 1; : : : ; N . The boundary elements can bestraight segments or circular arcs. The disturbance potential and its normal derivativeare approximated with constant functions the ith element denoted respectively by Diand

(@

D

@n)i = (u1 + v

(i)) n(i); (6)

where n(i) and v(i) are the normal vector and velocity induced by the line vortex

ring evaluated at the mid-point of the ith element.ith element.

Subject to these approximations, the integral equation (5) assumes the discretizedform

D(x0) 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;x0) dl(x)

= 2

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;x0) dl(x): (7)

Identifying the point x0 with the mid-point of the jth element denoted by xMj , wherej = 1; : : : ; N , we obtain a system of linear equations for the unknown values Di ,

Dj 2

NXi=1

Di

Z PV

Ei

n(x) rG(x;xMj ) dl(x)

= 2

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;xMj ) dl(x); (8)

where j = 1; : : : ; N .

Page 294: Boundary Element Methods

BEMLIB: laplace/body ax 279

To illustrate the structure of the linear system more clearly, we collect the two termson the left-hand side of (8) and rearrange to obtain

NXi=1

Di [

1

2Æij

Z PV

Ei

n(x) rG(x;xMj ) dl(x) ]

=

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;xMj ) dl(x): (9)

The integrals in equation (9) are computed by numerical methods and the linearsystem is solved by Gauss elimination.

TANGENTIAL VELOCITY:

The normal component of the disturbance velocity along the boundary contour iscomputed by solving an integral equation. The tangential component is computednumerically by differentiating the disturbance potential with respect to arc lengthalong the contour. The tangential component is then added to the normal compo-nent to yield the total disturbance velocity. The total velocity is computed from thedecomposition expressed by equation (1).

COMPUTATION OF THE VELOCITY AT A POINT IN THE FLOW:

To obtain the velocity at a point in the flow, we compute the gradient of the dis-turbance potential on the right-hand side of equation (2) using centered differences.The disturbance potential is evaluated using the discretized integral representation

D(x0) =

NXi=1

(u1 + v(i)) n(i)

ZEi

G(x;x0) dl(x)

+

NXi=1

Di

ZEi

n(x) rG(x;x0) dl(x); (10)

where the point x0 lies in the domain of flow.

Main program: body ax

The main program solves an integral equation of the second kind for the boundarydistribution of the disturbance potential, computes the boundary distribution of thepressure coefficient and the force exerted on the body [60], and generates streamlinesoriginating from specified points in the flow.

Page 295: Boundary Element Methods

280 A Practical Guide to Boundary-Element Methods

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. body ax geoDiscretization of the boundary geometry.

4. body ax sdlpEvaluation of the single- and double-layer harmonic potential over boundaryelements.

5. body ax velEvaluation of the velocity at a specified point in the flow.

6. ell intEvaluation of complete elliptic integrals of the first and second kind.

7. gauss legBase points and weights for the Gauss-Legendre quadrature.

8. gelSolution of a linear algebraic system by Gauss elimination.

9. lgf ax fsFree-space Green’s function of Laplace’s equation in an axisymmetric domain.

10. lvr ax fsPotential and velocity due to a line vortex ring.

Input files:

1. sphere.datParameters for flow past a sphere.

2. torus trgl.datParameters for flow past a triangular torus.

Output files:

1. body ax.strStreamlines.

2. body 2d.outBoundary distribution of the disturbance potential and tangential velocity.

Page 296: Boundary Element Methods

281

Directory: laplace/tank 2d

This directory contains a code that simulates the sloshing of a liquid inside a two-dimensional rectangular tank executing arbitrary motion, as illustrated in Figuretank 2d.1. The free surface exhibits constant surface tension.

When the free surface and velocity field are symmetric with respect to the mid-plane, the no-penetration condition at the vertical walls is equivalent to a periodicityboundary condition, and the motion describes spatially periodic, standing, forced,gravity or capillary waves.

MATHEMATICAL FORMULATION:

The velocity field is described in terms of the harmonic velocity potential that satis-fies Laplace’s equationr2

= 0, subject to the no-penetration condition n r = 0

at the left, bottom, and right walls.

The velocity potential along the free surface evolves according to Bernoulli’s equa-tion for irrotational flow

D

Dt=

1

2juj2 Patm +

+ g x dV

dt x; (1)

(e.g., [59], pp. 487 – 489), where:

D=Dt is the material derivative (also called the substantial derivative) express-ing the rate of change of a variable following the motion of material pointparticles.

t stands for time.

juj2 = r r is the square of the magnitude of the velocity.

Patm is the atmospheric pressure.

is the surface tension.

is the curvature of the free surface.

is the density of the liquid.

g is the acceleration of gravity vector.

x is the position vector defined with respect to an arbitrary origin.

V is the tank velocity.

Page 297: Boundary Element Methods

282 A Practical Guide to Boundary-Element Methods

Figure tank 2d.1 Stages in the sloshing of a liquid in a rectangular tank simulatedby a boundary-element method. The time sequence is from left to right andtop to bottom.

Page 298: Boundary Element Methods

BEMLIB: laplace/tank 2d 283

Using the standard boundary-integral representation, we find that the harmonic po-tential and its normal derivative along the free surface satisfy the integral equation

(x0) = 2

ZC

G(x;x0) [n(x) r(x)] dl(x)

+2

Z PV

C

(x) [n(x) rG(x;x0)] dl(x); (2)

whereC represents the free surface, the pointx0 lies onC, n is the unit vector normalto C pointing into the flow, and G(x;x0) is the Neumann function of Laplace’sequation for a semi-infinite strip confined between the left, bottom, and right walls.The satisfaction of the no-penetration boundary condition along the walls is implicitin the derivation of the integral equation (2).

The evolution of the free surface from a specified initial state may then be computedas follows:

Compute the evolution of the harmonic potential along the free surface usingBernoulli’s equation (1).

Solve the integral equation (2) for the normal derivativen(x) r(x) express-ing the normal component of the velocity.

Compute the tangential derivative of the potential expressing the tangentialcomponent of the velocity.

Having obtained the normal and tangential components of the velocity overthe free surface, evolve the position of the free surface.

NUMERICAL METHOD:

The free surface is traced with a collection of marker points that move with the fluidvelocity fluid or with the component of the fluid velocity normal to the free surface.In the first case, the marker points are material point particles, whereas in the secondcase they are computational markers.

The free surface is approximated with a polygonal line passing through the instan-taneous position of the marker points. The straight segments connecting pairs ofadjacent marker points are moving boundary elements.

The harmonic potential and its normal derivative are approximated with constantfunctions, denoted respectively by i and ( @

@n)i over the ith element. Subject to this

approximation, the integral equation (2) assumes the discretized form

Page 299: Boundary Element Methods

284 A Practical Guide to Boundary-Element Methods

NXi=1

(@

@n)i

ZEi

G(x;x0) dl(x)

= 1

2(x0) +

NXi=1

i

Z PV

Ei

n(x) rG(x;x0) dl(x); (3)

where N is the number of boundary elements.

Identifying the point x0 with the mid-point of the jth element denoted by xMj , andsetting (xMj ) = j , we derive a system of linear equations for the N unknown

values ( @@n )i,

NXi=1

(@

@n)i

ZEi

G(xMj ;x0) dl(x)

= 1

2j +

NXi=1

i

Z PV

Ei

n(x) rG(xMj ;x0) dl(x)

=

NXi=1

i [

Z PV

Ei

n(x) rG(xMj ;x0) dl(x) 1

2Æij ]; (4)

where j = 1; : : : ; N . The integrals in expression (4) are computed by numericalmethods and the linear system is solved by Gauss elimination.

MOTION OF MARKER POINTS:

When the marker points move with the fluid velocity, the position of the elementend-points is updated using the differential equation dx=dt = u whose scalar com-ponents are

dxi

dt= ux(xi; yi);

dyi

dt= uy(xi; yi): (5)

The free-surface velocity is computed using the decomposition

u =@

@nn+

@

@lt; (6)

where l is the arc length along the free surface measured in the direction of the unittangent vector t. The tangential derivative of the potential is computed by quadraticdifferentiation with respect to arc length. Correspondingly, the rate of change of theharmonic potential is given by the right-hand side of (1).

Page 300: Boundary Element Methods

BEMLIB: laplace/tank 2d 285

Alternatively, when the marker points move with the velocity of the fluid normal tothe free surface, system (5) is replaced by

dxi

dt= (

@

@n)i nx(xi; yi);

dyi

dt= (

@

@n)i ny(xi; yi); (7)

and the rate of change of the harmonic potential is given by the modified evolutionequation

d

dt= ju nj2 1

2juj2 Patm +

+ g x: (8)

Other features of the numerical method include:

The free-surface curvature is computed using the expression = xllylyllxl,where the subscript l denotes a tangential derivative with respect to arc lengthcomputed by quadratic interpolation.

The velocity of the left and right contact line represented by the first and lastmarker point is computed by linear or quadratic extrapolation along the freesurface.

To prevent the onset of numerical instabilities, the position of the marker pointsand the corresponding values of the potential are smoothed after a specifiednumber of steps using the formula

fi =1

16(fi2 + 4fi1 + 10fi + 4fi+1 fi+2); (9)

where f is a smoothed variable and a caret denotes the smoothed value.

To emulate viscous dissipation, the term is added to the right-hand sidesof the evolution equations (1) and (8), where is a damping coefficient.

Main program: tank 2d

The main program performs a dynamical simulation from a specified initial state.

Files to be linked:

1. gauss legBase points and weights for the Gauss-Legendre quadrature.

2. gelSolution of a linear algebraic system by Gauss elimination.

3. lgf 2d wwwNeumann function of Laplace’s equation in a semi-infinite rectangular strip.

Page 301: Boundary Element Methods

286 A Practical Guide to Boundary-Element Methods

4. tank 2d sdlpEvaluation of the single- and double-layer harmonic potential over the bound-ary elements.

Input files:

1. tank 2d.datSpecification of flow parameters.

2. tank 2d.inpRestart file.

Output files:

1. tank 2d.xyCoordinates of free-surface marker points, and distribution of velocity andpotential along the free surface at different times.

2. tank 2d.rstData for restarting a simulation.

Page 302: Boundary Element Methods

287

Directory: laplace/ldr 3d

This directory contains a code that solves Laplace’s equation in the interior or exte-rior of a closed three-dimensional surface subject to the Dirichlet boundary conditionthat specifies the surface distribution of the unknown function, as illustrated in Figureldr 3d.1.

The solution is found by solving an integral equation of the first kind originatingfrom Green’s third identity, using a boundary-element method.

MATHEMATICAL FORMULATION:

We seek a scalar function f in the interior or exterior of a closed surface D satisfyingLaplace’s equation in three dimensions,

r2f = 0; (1)

subject to the Dirichlet boundary condition

f(x) = g(x); (2)

where the point x lies on D, and g(x) is a specified surface function. In the case ofthe exterior problem, f(x) is required to vanish at infinity.

The boundary-integral formulation provides us with the integral representation

f(x0) = [ZD

G(x;x0) [n(x) rf(x)] dS(x)

+

ZD

f(x) [n(x) rG(x;x0)] dS(x) ]; (3)

where:

The point x0 lies in the solution domain (interior or exterior of D).

G(x;x0) = 1=(4jx x0j) is the free-space Green’s function of Laplace’sequation in three dimensions.

n is the unit vector normal to the surface D pointing outward.

The plus sign on the right-hand side of (3) corresponds to the exterior problemand the minus sign corresponds to the interior problem.

Page 303: Boundary Element Methods

288 A Practical Guide to Boundary-Element Methods

D

n

Figure ldr 3d.1 Solution of Laplace’s equation in the interior or exterior of a three-dimensional surface subject to the Dirichlet boundary condition, computed bya boundary-element method based on Green’s third identity.

Taking the limit as the point x0 approaches the surface D and expressing the limitof the double-layer potential in terms of its principal value, we obtain an integralequation of the first kind for the normal derivative n(x) rf(x),

ZD

G(x;x0) [n(x) rf(x)] dS(x)

=

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x)1

2f(x0); (4)

where PV denotes the principal value of the double-layer integral. The plus or minussign on the right-hand side of (4) correspond to the exterior or interior problem.

NUMERICAL METHOD:

The surface D is discretized into a grid of six-node curved triangles. All geometricalvariables and the unknown function are approximated with quadratic functions overeach triangle with respect to local triangle coordinates. The integral equation (4) isthen applied at the grid nodes to obtain a system of linear equations for the nodevalues of the normal derivative n(x) rf(x).

The linear system is generated by the method of impulses: to compute the influencematrix, we set the value of n(x) rf(x) equal to unity at one node, while setting itat zero at all other nodes, compute the single-layer potential at all nodes, and repeatsequentially for all nodes. The linear system is then solved by Gauss elimination.

Page 304: Boundary Element Methods

BEMLIB: laplace/ldr 3d 289

The single-layer integral over the non-singular and singular elements is computedusing a triangle quadrature and the polar integration rule, respectively.

The principal value of the double-layer integral on the right-hand side of (4) is com-puted using the identity

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x)

=

ZD

[f(x) f(x0) ] [n(x) rG(x;x0)] dS(x) 1

2f(x0): (5)

The non-singular integral on the right-hand side of (5) is computed by the Gausstriangle quadrature.

After the integral equation has been solved, the function f at a point in the solutiondomain (exterior or interior of D) is computed using the integral representation (3).

Main program: ldr 3d

The main program solves the integral equation (4) for the distribution of the normalderivative of the unknown function and computes the solution at a specified pointusing the integral representation.

Files to be linked:

1. gauss legBase points and weights for the Gauss-Legendre quadrature.

2. gauss trglBase points and weights for integration over a triangle.

3. gelSolution of a linear algebraic system by Gauss elimination.

4. ldlp 3dComputation of the principal value of the double-layer potential at the gridnodes.

5. ldr 3d geoVarious auxiliary computations regarding geometry.

6. lgf 3d fsFree-space Green’s function of Laplace’s equation in three dimensions.

7. lsdlpp 3dComputation of the nonsingular single- and double-layer potential at a pointin the solution domain.

Page 305: Boundary Element Methods

290 A Practical Guide to Boundary-Element Methods

8. lslp 3dComputation of the single-layer potential at the grid nodes.

9. trgl octaTriangulation of the unit sphere into a mesh of curved triangles descendingfrom the octahedron.

Input file:

1. ldr 3d.datSpecification of problem parameters.

Output file:

1. ldr 3d.outComputed values of the normal derivative of the surface function f at thenodes.

Page 306: Boundary Element Methods

291

Directory: laplace/lnm 3d

This directory contains a code that solves Laplace’s equation in the interior or exte-rior of a closed three-dimensional surface subject to the Neumann boundary condi-tion that specifies the surface distribution of the normal derivative of the unknownfunction, as illustrated in Figure lnm 3d.1.

The solution is found by solving an integral equation of the second kind emergingfrom Green’s third identity, using a boundary-element method.

MATHEMATICAL FORMULATION:

We seek a scalar function f in the interior or exterior of a closed surface D satisfyingLaplace’s equation in three dimensions,

r2f = 0; (1)

subject to the Neumann boundary condition

n(x) rf(x) = g(x); (2)

where the point x lies on D, n is the unit normal vector pointing outward, and g(x)is a specified surface function. In the case of the exterior problem, f(x) is requiredto vanish at infinity.

The boundary-integral formulation provides us with the integral representation

f(x0) = [ZD

G(x;x0) [n(x) rf(x)] dS(x)

+

ZD

f(x) [n(x) rG(x;x0)] dS(x) ]; (3)

where:

The point x0 lies in the solution domain (interior or exterior of D).

G(x;x0) = 1=(4jx x0j) is the free-space Green’s function of Laplace’sequation in three dimensions.

n is the unit vector normal to the surface D pointing outward.

The plus sign on the right-hand side of (3) corresponds to the exterior problemand the minus sign corresponds to the interior problem.

Page 307: Boundary Element Methods

292 A Practical Guide to Boundary-Element Methods

D

n

Figure lnm 3d.1 Solution of Laplace’s equation in the interior or exterior of a three-dimensional surface subject to Neumann boundary conditions, computed us-ing a boundary-element method based on Green’s third identity.

Taking the limit as the point x0 approaches the surface D and expressing the limitof the double-layer potential in terms of its principal value, we obtain an integralequation of the second kind for the surface distribution of f(x),

Z PV

D

f(x) [n(x) rG(x;x0)] dS(x) 1

2f(x0)

= ZD

G(x;x0) [n(x) rf(x)] dS(x); (4)

where PV denotes the principal value of the double-layer integral. The plus or minussign on the left-hand side of (4) corresponds to the exterior or interior problem.

The integral equation (4) for the interior problem has a solution only if the specifieddistribution of the normal derivative satisfies the solvability condition

ZD

n(x) rf(x) dS(x) =ZD

g(x) dS(x) = 0: (5)

When this condition is satisfied, the integral equation has an infinite number of solu-tions that differ by an arbitrary constant.

NUMERICAL METHOD:

See corresponding section in directory laplace/ldr 3d. Because the integralequation (4) for the interior problem does not have a unique solution, the solution ofthe linear system for the node values of f is unreliable.

Page 308: Boundary Element Methods

BEMLIB: laplace/lnm 3d 293

Main program: lnm 3d

The main program solves the integral equation (4) for the boundary distribution of theunknown function and computes the solution at a specified point using the integralrepresentation.

Files to be linked:

1. gauss legBase points and weights for the Gauss-Legendre quadrature.

2. gauss trglBase points and weights for integration over a triangle.

3. gelSolution of a linear algebraic system by Gauss elimination.

4. ldlp 3dComputes the principal value of the double-layer potential at the grid nodes.

5. lnm 3d geoVarious auxiliary computations regarding geometry.

6. lgf 3d fsFree-space Green’s function of Laplace’s equation in three dimensions.

7. lsdlpp 3dComputes the nonsingular single- and double-layer potential at a point in thesolution domain.

8. lslp 3dComputes the single-layer potential at the grid nodes.

9. trgl octaTriangulation of the unit sphere into a mesh of curved triangles descendingfrom the octahedron.

Input file:

1. lnm 3d.datSpecification of problem parameters.

Output file:

1. lnm 3d.outNumerical values of the function f at the surface nodes.

Page 309: Boundary Element Methods
Page 310: Boundary Element Methods

Chapter 11

Directory: helmholtz

This directory contains a code that solves the complex Helmholtz equation in two di-mensions describing unidirectional oscillatory viscous flow inside or outside a cylin-drical tube.

Directory contents:

Subdirectory Topic

flow 1d osc Unidirectional oscillatory viscous flowinside or outside a cylindrical tubewith arbitrary cross-section.

295

Page 311: Boundary Element Methods

296 A Practical Guide to Boundary-Element Methods

Directory: helmholtz/flow 1d osc

This directory contains a code that computes unidirectional oscillatory viscous flowinside or outside a cylindrical tube with arbitrary cross-section, as illustrated in Fig-ure flow 1d osc.1.

Circular, elliptical, rectangular, and triangular tube shapes are implemented in thecode. Other shapes can be included by straightforward modifications.

MATHEMATICAL FORMULATION:

The equation of fluid motion for internal or external unsteady unidirectional viscousflow requires that, in the absence of a pressure gradient and significant gravitationaleffects, the streamwise component of the velocity along the z axis, denoted by uz,satisfy the unsteady diffusion equation

@uz

@t= r2

uz; (1)

where is the fluid density, t stands for time, r2 @2=@x

2 + @2=@y

2 is the Lapla-cian operating over the tube cross-section in the xy plane, and is the fluid viscosity.If the tube moves parallel to its generators with velocity U(t), the no-slip boundarycondition requires that uz = U(t) around the tube contour.

In the case of oscillatory flow, the tube wall and fluid velocity can be expressed asthe real or imaginary part of the complex functions

U(t) = A eit; uz(x; y; t) = w(x; y) eit; (2)

where is the angular frequency of the oscillations, i is the imaginary unit, A is aconstant amplitude, and w(x; y) is the complex amplitude of the fluid velocity. Thenon-slip boundary condition requires w = A around the tube contour C.

Substituting the expressions shown in (2) into the governing equation (1) and dis-carding the complex exponentials, we obtain the complex Helmholtz equation

r2w + i

w = 0: (3)

Using the boundary-integral formulation, we find that the complex function w at apoint x0 located in the domain of flow is given by the integral representation

Page 312: Boundary Element Methods

BEMLIB: helmholtz/flow 1d osc 297

(a)

x

y

z

x

y

z

(b)

A

A

nn

Figure flow 1d osc.1 Unsteady unidirectional flow inside or outside a tube with ar-bitrary cross-section due to longitudinal boundary oscillation; (a) internal, and(b) external flow.

w(x0) = ZC

G(x;x0)@w

@n(x) dl(x)

+

ZC

n(x) rG(x;x0) w(x) dl(x); (4)

where:

@w=@n = n rw is the normal derivative of w.

n is the unit normal vector pointing into the tube.

G(x;x0) is the free-space Green’s function of Hemlholtz’s equation (3) givenby

G(x;x0) =1

2[ker0(Ær) + i kei0(Ær)]; (5)

r = jx x0j, Æ = (=)1=2 is the Stokes layer thickness, and ker0, kei0 areKelvin functions.

The plus and minus sign on the left-hand side of (4) apply, respectively, in thecase of interior or exterior flow.

Implementing the boundary condition w = A around C, we obtain the more specificrepresentation

Page 313: Boundary Element Methods

298 A Practical Guide to Boundary-Element Methods

w(x0) = ZC

G(x;x0)@w

@n(x) dl(x)

+A

ZC

n(x) rG(x;x0) dl(x): (6)

Taking the limit as the x0 approaches the tube contour C and expressing the limit ofthe double-layer potential on the right-hand side in terms of its principal value, weobtain an integral equation of the first kind for the normal derivative @w=@n,

ZC

G(x;x0)@w

@n(x) dl(x) = A

Z PV

C

n(x) rG(x;x0) dl(x) A2

; (7)

where the point x0 lies on C, and PV denotes the principal value of the double-layerpotential.

NUMERICAL METHOD:

The tube contour C is discretized into a collection of N boundary elements Ei de-fined by N + 1 marker points, where i = 1; : : : ; N . The boundary elements may bestraight segments or circular arcs. Approximating the normal derivative of w with aconstant function over each element, we obtain a discretized version of the integralequation (7):

NXi=1

@w

@n

i

ZEi

G(x;x0) dl(x)

= A

NXi=1

ZPV

Ei

n(x) rG(x;x0) dl(x) A2

: (8)

Next, we identify the point x0 with the mid-point of each element denoted by xMj

,where j is the element label, and thereby obtain a complex system of linear equationsfor the unknown complex values (@w=@n)i,

NXi=1

@w

@n

i

ZEi

G(x;xMj) dl(x)

= A

NXi=1

Z PV

Ei

n(x) rG(x;xMj ) dl(x) A2

; (9)

for j = 1; : : : ; N .

Page 314: Boundary Element Methods

BEMLIB: helmholtz/flow 1d osc 299

The unknown complex values (@w=@n)i and the linear system (9) are decomposedinto its real and imaginary parts, and the expanded system of 2N real equations issolved by Gauss elimination.

COMPUTATION OF THE VELOCITY AT A POINT IN THE FLOW:

The velocity at a point x0 located in the domain of flow is computed using the dis-cretized form of the boundary-integral representation (6).

Main program: flow 1d osc

The main program solves the integral equation (7) for the distribution of the normalderivative of the complex function w and evaluates the complex amplitude of thevelocity at a specified point in the flow.

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. flow 1d osc geoDiscretization of the boundary geometry.

4. flow 1d osc sdlpEvaluation of the single- and double-layer Helmholtz potential over the bound-ary elements.

5. flow 1d osc velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

8. hgf 2dc fsGreen’s function of the Helmholtz equation in two dimensions with a complexcoefficient multiplying the linear forcing term.

9. ker kei 0Evaluation of the Kelvin functions, ker0; kei0, and their derivatives.

Page 315: Boundary Element Methods

300 A Practical Guide to Boundary-Element Methods

Input files:

1. circle.datParameters for flow through a circular tube.

2. ellipse.datParameters for flow through an elliptical tube.

3. rectangle.datParameters for flow through a rectangular tube.

4. triangle.datParameters for flow through a triangular tube.

Output files:

1. flow 1d osc.elmBoundary element distribution.

2. flow 1d osc.trcDistribution of the complex boundary shear stress (traction).

3. flow 1d osc.velRecording of the velocity at a point in the flow.

Page 316: Boundary Element Methods

Chapter 12

Directory: stokes

This directory contains libraries of Green’s functions and boundary-element codesfor Stokes flow.

Directory contents:

Subdirectory Topic

sgf 2d Green’s functions of two-dimensional Stokes flow.

sgf 3d Green’s functions of three-dimensional Stokes flow.

sgf ax Green’s functions of axisymmetric Stokes flow.

flow 2d Two-dimensional flow in a domain witharbitrary geometry.

prtcl sw Swirling flow due to the steady rotationof an axisymmetric particle.

prtcl 2d Flow past a fixed bed of two-dimensionalparticles with arbitrary shapes,for a variety of configurations.

prtcl ax Flow past, or due to the motion of,a collection of axisymmetric particles.

prtcl 3d Flow past, or due to the motion of,a three-dimensional particle,for a variety of configurations.

301

Page 317: Boundary Element Methods

302 A Practical Guide to Boundary-Element Methods

Directory: stokes/sgf 2d

The velocity, pressure, and stress Green’s functions of two-dimensional Stokes flow,denoted respectively by Gij , pj , and Tijk , where the indices i; j, and k range over 1and 2 corresponding to x and y, are defined such that the velocity at the field pointx = (x; y) induced by a two-dimensional point force with strength b located at thesingular point x0 = (x0; y0) is given by

ui(x) =1

4Gij(x;x0) bj =

1

4Gji(x0;x) bj ; (sgf 2d.1)

where is the fluid viscosity. The associated pressure and stress fields are given by

p(x) =1

4pj(x;x0) bj ; (sgf 2d.2)

and

ik(x) =1

4Tijk(x;x0) bj : (sgf 2d.3)

Using the Newtonian constitutive equation, we find that the stress Green’s functionderives from the pressure and velocity Green’s function by the relation

Tijk = Æik pj +@Gij

@xk+@Gkj

@xi: (sgf 2d.4)

By definition, the velocity and pressure Green’s functions satisfy the equations

@Gij

@xi= 0;

(sgf 2d.5)

@pj

@xi+@2Gij

@x2+@2Gij

@y2= 4 Æij Æ2(x x0);

originating, respectively, from the continuity equation and the Stokes equation; Æijis Kronecker’s s delta, and Æ2 is Dirac’s delta function in two dimensions.

Correspondingly, the stress Green’s function satisfies the equation

@Tijk

@xk=

@Tkji

@xk= 4 Æij Æ2(x x0): (sgf 2d.6)

Page 318: Boundary Element Methods

BEMLIB: stokes/sgf 2d 303

INTEGRAL IDENTITIES:

Mass conservation requires that the velocity Green’s function satisfy the integralidentity

ZC

ni(x) Gij(x;x0) dl(x) = 0; (sgf 2d.7)

where C is a closed loop in the xy plane enclosing the control area Ac. To derive(sgf 2d.7), we integrate the first equation in (sgf 2d.5) over Ac and use the diver-gence theorem to convert the areal integral to a line integral.

The stress Green’s function satisfies the integral identity

ZC

Tijk(x;x0) nk(x) dl(x) =

8<:

Æij when x0 is inside Ac

12Æij when x0 is on C0 when x0 is outside Ac

; (sgf 2d.8)

originating from the second equation in (sgf 2d.5); the unit normal vector n pointsinto the control area enclosed by the contour C. When the point x0 is located on C,the principal-value integral is implied on the left-hand side of (sgf 2d.8).

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary-integral representation for the velocity of a two-dimensional Stokesflow is

uj(x0) = 1

4

ZC

Gji(x0;x) fi(x) dl(x)

+1

4

ZC

ui(x) Tijk(x;x0) nk(x) dl(x); (sgf 2d.9)

where C denotes the collection of all contours enclosing a selected control area inthe flow, n is the unit vector normal to C pointing into the control area, and f nis the boundary traction.

BOUNDARY-INTEGRAL EQUATION:

The boundary-integral equation corresponding to (sgf 2d.9) is

uj(x0) = 1

2

ZC

Gji(x0;x) fi(x) dl(x)

+1

2

Z PV

C

ui(x) Tijk(x;x0) nk(x) dl(x); (sgf 2d.10)

where the point x0 lies on C, and PV denotes the principal-value integral.

Page 319: Boundary Element Methods

304 A Practical Guide to Boundary-Element Methods

DIRECTORY CONTENTS:

This directory contains a suite of subroutines that evaluate the following family ofGreen’s functions:

Subroutine Topic

sgf 2d fs Green’s function for flow in free space.

sgf 2d w Green’s function for flow in a semi-infinite domainbounded by a plane wall.

sgf 2d 1p Singly periodic Green’s function in free space.

sgf 2d 1p w Singly periodic Green’s function for flow in asemi-infinite domain bounded by a plane wall.

sgf 2d 1p ww Singly periodic Green’s function for flow in achannel bounded by two parallel plane walls.

sgf 2d 2p Doubly periodic Green’s function.

Page 320: Boundary Element Methods

BEMLIB: stokes/sgf 2d 305

Subroutine: sgf 2d fs

This subroutine computes the Green’s function for an infinite domain of flow in theabsence of boundaries. The streamline pattern of the induced flow is depicted inFigure sgf 2d fs.1.

The Green’s function is given by

Gij(x) = Æij ln r +xixj

r2;

pj(x) = 2xj

r2; (1)

Tijk(x) = 4xixj xk

r4;

where x xx0 and r = jx x0j are the vectorial and scalar distance of the fieldpoint x from the singular point x0, respectively.

Call statement:

sgf 2d fs

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point (point force).; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output: Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1).

Page 321: Boundary Element Methods

306 A Practical Guide to Boundary-Element Methods

Figure sgf 2d fs.1 Streamline pattern of the flow induced by a two-dimensionalpoint force oriented along the x axis, in free space.

Driver: sgf 2d fs dr

The driver evaluates the Green’s function and verifies the integral identities (sgf 2d.7,8),where C is a circular contour.

Files to be linked: None.

Page 322: Boundary Element Methods

BEMLIB: stokes/sgf 2d 307

Subroutine: sgf 2d w

This subroutine computes the Green’s function for a semi-infinite domain of flowbounded by a plane wall located at y = wall, as illustrated in Figure sgf 2d w.1.The streamline pattern of the induced flow is depicted in Figure sgf 2d w.2.

The velocity Green’s function is given by

Gij(x;x0) = GFS

ij (x x0)GFS

ij (x xIm

0 )

(1)

+2 h20 Dij(x xIm

0 ) 2 h0 Qij(x xIm

0 );

(e.g., [55], p. 93), where:

GFS

ijis the free-space Green’s function.

xIm0 = (x0; 2 wall y0) is the image of the point force with respect to the

wall.

h0 = y0 wall is the distance of the point force from the wall.

The tensors Dij and Qij represent, respectively, potential dipoles and point-force doublets, and are given by

Dij(w) = @

@wj(wi

jwj2 ) = (Æij

jwj2 2wiwj

jwj4 );

(2)

Qij(w) = @GFS

i2

@wj= w2 Dij

Æj2wi Æi2wj

jwj2 :

The plus sign applies when j = 1, corresponding to the x direction, and theminus sign applies when j = 2, corresponding to the y direction.

The pressure Green’s function is given by

pj(x;x0) = pFS

j(x x0) p

FS

j(x x

Im

0 ) 2 h0 pQ

j(x x

Im

0 ); (3)

where pjFS is the free-space pressure Green’s function, and

pQ

x(w) = 4

wxwy

jwj4 ; pQ

y(w) = 2

w2x w

2y

jwj4 ; (4)

is the pressure field corresponding to the point-force doublets.

Page 323: Boundary Element Methods

308 A Practical Guide to Boundary-Element Methods

x

x 0

h 0

y

y = wall

Figure sgf 2d w.1 A two-dimensional point force in a semi-infinite domain of flowbounded by a plane wall located at y = wall.

The stress Green’s function follows from the preceding expressions using the defini-tion (sgf 2d.4).

Call statement:

sgf 2d w

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of the singular point (point force).; wall Input: The wall is located at y = wall:

; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output : Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1) to (4).

Page 324: Boundary Element Methods

BEMLIB: stokes/sgf 2d 309

Figure sgf 2d w.2 Streamline pattern of the flow due to a two-dimensional pointforce oriented normal (top) or parallel (bottom) to a plane wall.

Page 325: Boundary Element Methods

310 A Practical Guide to Boundary-Element Methods

Driver: sgf 2d w dr

The driver evaluates the Green’s function and verifies the integral identities (sgf 2d.7,8),where C is a circular contour.

Files to be linked: None.

Page 326: Boundary Element Methods

BEMLIB: stokes/sgf 2d 311

Subroutine: sgf 2d 1p

This subroutine computes the singly periodic Green’s function in free space repre-senting the flow due to an infinite periodic array of point forces separated by thedistance L along the x axis, as illustrated in Figure sgf 2d 1p.1. One of the pointforces is located at the point x0 = (x0; y0). The streamline pattern of the inducedflow is depicted in Figure sgf 2d 1p.2.

The velocity Green’s function is given by

Gxx(x) = A(x) y@A(x)

@y+ 1;

Gxy(x) = y@A(x)

@x;

(1)

Gyx(x) = y@A(x)

@x;

Gyy(x) = A(x) + y@A(x)

@y;

where x x x0 ,

A(x) =1

2lnf2[cosh(k(y y0)) cos(k(x x0))]g; (2)

k = 2=L is the wave number, and L is the period of the flow, that is, the separationbetween two consecutive singular points ([55], pp. 94 – 95).

Carrying out the differentiation, we find

@A(x)

@x=

1

2

sin[k(x x0)]

cosh[k(y y0)] cos[k(x x0)];

(3)@A(x)

@y=

1

2

sinh[k(y y0)]

cosh[k(y y0)] cos[k(x x0)]:

The pressure Green’s function is given by

px(x) = 2@A(x)

@x; py(x) = 2

@A(x)

@y: (4)

The stress Green’s function follows from equation (sgf 2d.4).

Page 327: Boundary Element Methods

312 A Practical Guide to Boundary-Element Methods

x

y

L

x 0

L

n

nC

C2

1

Figure sgf 2d 1p.1 A singly periodic array of point forces separated by the distanceL along the x axis.

INTEGRAL IDENTITIES:

Consider two open contours C1 and C2 extending over one period of the flow, asillustrated in Figure sgf 2d 1p.1. The unit normal vector n is oriented as shown inthe figure. The stress Green’s function satisfies the integral identities:

ZC1

Tijk(x;x0) nk(x) dl(x) = 2 Æij ; (5)

ZC1

Tijk(x0;x) nk(x) dl(x) = 2 Æij ; (6)

ZC2

Tijk(x;x0) nk(x) dl(x) = 2 Æij ; (7)

ZC2

Tijk(x0;x) nk(x) dl(x) = 2 Æij : (8)

Page 328: Boundary Element Methods

BEMLIB: stokes/sgf 2d 313

Call statement:

sgf 2d 1p

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of a singular point (point force).; L Input: Distance between the point forces (period).; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output: Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1) to (4).

Driver: sgf 2d w dr

The driver evaluates the Green’s function and verifies (a) the integral identities (sgf 2d.7,8),where C is a circular contour, and (b) the integral identities (5) to (8).

Files to be linked: None.

Page 329: Boundary Element Methods

314 A Practical Guide to Boundary-Element Methods

Figure sgf 2d 1p.2 Streamline pattern of the flow due to a periodic array of two-dimensional point forces oriented parallel (top) or normal (bottom) to the planeof the array.

Page 330: Boundary Element Methods

BEMLIB: stokes/sgf 2d 315

Subroutine: sgf 2d 1p w

This subroutine computes the singly periodic Green’s function for flow in a semi-infinite domain bounded by a plane wall located at y = wall. The singular points areseparated by the distance L along the x axis, as illustrated in Figure sgf 2d 1p w.1.One of the point forces is located at the point x0 = (x0; y0). The streamline patternof the induced flow is depicted in Figure sgf 2d 1p w.2

The velocity Green’s function is given by

Gij(x;x0) = GP

ij(x x0)G

P

ij(x x

Im

0 )

+2 h20 Dij(x xIm

0 ) 2 h0 Qij(x xIm

0 ); (1)

([55], pp. 95 – 96), where:

GP

ijis the periodic Green’s function computed by subroutine sgf 2d 1p.

xIm0 = (x0; 2 wall y0) is the image of the point force with respect to the

wall.

h0 = y0 wall is the distance of the point force from the wall.

The tensors Dij and Qij represent, respectively, a periodic array of potentialdipoles and point-force doublets, and are given by

Dxx(x) = Ayy; Dxy(x) = Axy;

(2)

Dyx(x) = Axy; Dyy(x) = Ayy;

and

Qxx(x) = y Ayy; Qxy(x) = Ax yAxy;

(3)

Qyx(x) = Ax + y Axy; Qyy(x) = Qxx(x) = y Ayy;

where a subscript denotes a partial derivative with respect to the correspondingvariable. The functionA(x) is defined in equation (2) of subroutinesgf 2d 1p.

The pressure Green’s function is given by

pj(x;x0) = pP

j (x x0) pP

j (x xIm

0 ) 2 h0 pQ

j(x x

Im

0 ); (4)

Page 331: Boundary Element Methods

316 A Practical Guide to Boundary-Element Methods

L

C

C2

1

x

y

h

Lx

0

0

y = wall

n

n

Figure sgf 2d 1p w.1 A periodic array of point forces separated by the distance Lalong the x axis in a semi-infinite domain of flow bounded by a plane walllocated at y = wall.

where pjP is the singly periodic pressure Green’s function given in equations (4) ofsgf 2d 1p, and

pQ

x(w) = 2Axy(w); p

Q

y(w) = 2Ayy(w); (5)

is the pressure field corresponding to the point-force doublets.

The stress Green’s function follows from the preceding expressions and equation(sgf 2d.4).

INTEGRAL IDENTITIES:

Consider two open contours C1 and C2 extending over one period of the flow, asillustrated in Figure sgf 2d 1p w.1. The unit normal vector n is oriented as shown inthe figure.

The stress Green’s function satisfies the integral identities:

ZC1

Tijk(x;x0) nk(x) dl(x) = 0; (6)

ZC1

Tijk(x0;x) nk(x) dl(x) = 4 Æij ; (7)

Page 332: Boundary Element Methods

BEMLIB: stokes/sgf 2d 317

ZC2

Tijk(x;x0) nk(x) dl(x) = 4 Æij ; (8)

ZC2

Tijk(x0;x) nk(x) dl(x) = 0: (9)

Call statement:

sgf 2d 1p w

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of a singular point (point force).; wall Input: The wall is located at y = wall:

; L Input: Distance between the point forces (periodL):; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output: Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1) to (4).

Driver: sgf 2d w dr

The driver evaluates the Green’s function and verifies (a) the integral identities (sgf 2d.7,8)where C is a circular contour, and (b) the integral identities (6) to (9).

Files to be linked: None.

Page 333: Boundary Element Methods

318 A Practical Guide to Boundary-Element Methods

Figure sgf 2d 1p w.2 Streamline pattern of the flow due to a periodic array of pointforces oriented normal (top) and parallel (bottom) to a wall. In this case, theseparation between the point forces is equal to twice their distance from thewall.

Page 334: Boundary Element Methods

BEMLIB: stokes/sgf 2d 319

Subroutine: sgf 2d 1p ww

This subroutine computes the singly periodic Green’s function for flow in a channelbounded by two parallel plane walls located at y = h, as illustrated in Figuresgf 2d 1p ww.1. The singular points are deployed along the x axis and are separatedby the distance L. One of the point forces is located at the point x0 = (x0; y0). Thestreamline pattern of the induced flow is depicted in Figure sgf 2d ww.2.

Closed-form but lengthy expressions for the Green’s function are given in References[73] and [55] (pp. 96 – 99). The Green’s function for channel flow has one degree offreedom; an arbitrary parabolic flow accompanied by a pressure drop may be addedto Gxx and px to yield another perfectly acceptable Green’s function. To remove thisambiguity, either the flow rate along the channel or the pressure drop across eachperiod must be specified.

Call statement:

sgf 2d 1p ww

(Iopt Input: See Note 1.; Iqpd Input: See Note 2.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of a singular point (point force).; L Input: Distance between the point forces (period).; N Input: See Note 3.; h Input: Channel semi-width.; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output: Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Notes:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

2. Set Iqpd = 0 to obtain a Green’s function with zero pressure drop, but non-zero flow rate. Set Iqpd = 1 to obtain a Green’s function with zero flow rate,but non-zero pressure drop.

3. The Green’s function is defined in terms of infinite series, as discussed in Ref-erence [55], pp. 96 – 99 (see also [73]). The integer N is the truncation limitfor summing in real space.

Page 335: Boundary Element Methods

320 A Practical Guide to Boundary-Element Methods

xx 0

L

h

−h

y

Figure sgf 2d 1p ww.1 A singly periodic array of point forces separated by the dis-tanceL along the x axis in a two-dimensional channel bounded by two parallelplane walls located at y = h.

FLOW RATE OF THE INDUCED FLOW:

Consider a periodic array of point forces with strength b, and assume that the pres-sure drop of the induced flow vanishes across each period. The corresponding axialflow rate is given by

Q =2h2

L(1 y

20

h2) bx; (1)

where is the fluid viscosity, and y0 is the lateral position of a point force. Note that,when the point forces are placed on either wall, y0 = h, the flow vanishes and theflow rate ceases.

Numerical method:

The Green’s function is computed by direct evaluation of expressions provided inReference [55] (pp. 96 – 99).

An option is provided for computing the Green’s function by trilinear interpolationwith respect to y0, y, and x x0, where (x0; y0) are the coordinates of one pointforce in the periodic array, and (x; y) are the coordinates of the evaluation point.Interpolation is carried out for the desingularized component of the Green’s function

G0

ij G2D1PWW

ij(x; y; x0; y0)G

2D1PWij

(x; y; x0; y0; +h)

(2)

G2D1PWij

(x; y; x0; y0;h) +GFS

ij (x; y; x0; y0);

Page 336: Boundary Element Methods

BEMLIB: stokes/sgf 2d 321

where G2D1PWij

(x; y; x0; y0;w) is the singly periodic Green’s function of Stokesflow in a semi-infinite domain bounded by a plane wall located at y = w, andGFS

ij(x; y; x0; y0) is the free-space Green’s function. The components of the desin-

gularized Green’s functionG0ij

behave smoothly near the point force and in the vicin-ity of either wall, and this benefits the accuracy of the interpolation.

The complementary components expressed by the three terms on the right-hand sideof (11) are available in closed form and are computed by direct evaluation [55].

The look-up tables for interpolating the desingularized Green’s functionG0ij

are gen-erated by program sgf 2d 1p ww glut included in this directory.

Driver: sgf 2d 1p ww dr

The driver performs pointwise evaluations, tests the integral identities (sgf 2d.7,8)and generates velocity, pressure, and stress field profiles. Input data are read fromthe file sgf 2d 1p ww.dat.

The Green’s function is evaluated either directly or by trilinear interpolation throughlook-up tables. When the Green’s function is computed by interpolation, the driverreads the look-up tables from the file sgf 2d 1p ww.glut which is generated byprogram sgf 2d 1p ww glut included in this directory.

Files to be linked: None for the subroutine.

The driver must be linked with subroutine sgf 2d 1p ww int that evaluates theGreen’s function by interpolation through look-up tables, and also with subroutinessgf 2d 1p w and sgf 2d fs that evaluate Green’s functions.

Page 337: Boundary Element Methods

322 A Practical Guide to Boundary-Element Methods

Figure sgf 2d 1p ww.2 Streamline pattern of the flow due to a periodic array oftwo-dimensional point forces in a channel. The point forces are oriented nor-mal (top) or parallel (bottom) to the walls. The pressure drop over each periodvanishes in both cases (Iqpd = 0).

Page 338: Boundary Element Methods

BEMLIB: stokes/sgf 2d 323

Subroutine: sgf 2d 2p

This subroutine computes the doubly-periodic Green’s function of two-dimensionalStokes flow. The point forces are deployed at the vertices of a two-dimensionallattice defined by the base vectors a(1) and a(2), as depicted in Figure sgf 2d 2p.1.The streamline pattern of the induced flow is depicted in Figure sgf 2d 2p.2.

One of the point forces is located at the point x0 = (x0; y0), and the nth point forceis located at the point x(n) = (xn; yn), where

x(n) = x0 + i a

(1)x

+ j a(2)x; y

(n) = y0 + i a(1)y

+ j a(2)y; (1)

i and j are two integers, and the index n is defined in terms of the indices i and j bydouble summation.

Following the Ewald summation method, we find that the velocity Green’s functionis given by [68]

Gij(x;x0) =Xn

fÆij [ 12E(r2

n) exp(r2

n)] +

(xi x(n)

i)(xj x

(n)

j)

r2n

er2ng

+

Ac

Xm

4 + k(m)2

k(m)2(Æij

k(m)i

k(m)j

k(m)2) (2)

exp(1

4k(m)2) cos[k(m) (x x0)]:

The first sum on the right-hand side of (2) with respect to n runs over the point forces,and the second sum with respect to m runs over the vertices of the reciprocal latticein wave-number space. The base vectors of the reciprocal lattice are given by

b(1) =

2

Ac

a(2) ez; b

(2) =2

Ac

ez a(1); (3)

where Ac = ja(1) a(2)j is the area of the unit cell in physical space.

The vertices of the reciprocal lattice are located at k(m) = (k(m)x ; k

(m)y ), where

k(m)x

= i b(1)x

+ j b(2)x; k

(m)y

= i b(1)y

+ j b(2)y; (4)

i and j are two integers, and the index m is defined in terms of i and j using double-summation. The singular wave number corresponding to i = 0 and j = 0 is excludedfrom the second sum in (2).

Page 339: Boundary Element Methods

324 A Practical Guide to Boundary-Element Methods

x

y

a 1

2a

A

Figure sgf 2d 2p.1 A doubly periodic array of two-dimensional point forces de-ployed at the vertices of a two-dimensional lattice parallel to the xy plane.

The rest of the symbols in (2) are defined as follows:

rn =p

(x xn)2 + (y yn)2 is the distance of the evaluation point fromthe nth point force, and rn = rn is the corresponding reduced dimensionlessdistance.

k(m) = jk(m)j is the length of the mth wave number vector, and k

(m) k(m)

= is the reduced length of the mth wave number.

E is the exponential integral computed by accurate polynomial approxima-tions.

is the Ewald splitting parameter with dimensions of inverse length, deter-mining the balance of the sums in real and reciprocal space.

The right-hand side of (2) is independent of the selected value of . As tends tozero, we obtain a representation in terms of sums in real space alone, whereas as tends to infinity, we obtain a representation in terms of a double Fourier series inreciprocal wave number space.

The pressure Green’s function is given by [68]

pj(x;x0) =4

Ac

(xj x0j ) + 2Xn

xj x(n)j

r2n

er2n

(5)

+4

Ac

Xm

k(m)j

k(m)2exp(1

4k(m)2) sin[k(m) (x x0)]:

Page 340: Boundary Element Methods

BEMLIB: stokes/sgf 2d 325

Figure sgf 2d 2p.2 Streamlines of the flow due to a doubly periodic array of two-dimensional point forces located at the vertices of a square lattice in the xy

plane.

The first term on the right-hand side of (5) contributes a linear pressure field thatbalances the force imparted to the fluid by the point forces, thereby satisfying theforce balance over each periodic cell.

The stress Green’s function is given by [68]

Tijl(x;x0) = Æil 4Ac

(xj x0j ) + 2 2Xn

[Æjl(xi x(n)i

) + Æij(xl x(n)

l)

2 (1 +1

r2n

)(xi x

(n)

i)(xj x

(n)

j)(xl x

(n)

l)

r2n

] er2n

+4

Ac

Xm

[1

k(m)(1 +

k(m)2

4) (2

k(m)i

k(m)j

k(m)

l

k(m)3 Æijk

(m)

l+ Æljk

(m)i

k(m))

Æilk(m)

j

k(m)] exp (1

4k(m)2) sin [k(m) (x x0)]: (6)

The first term on the right-hand side of (6) incorporates the linear variation of thenormal stresses due to the pressure.

Page 341: Boundary Element Methods

326 A Practical Guide to Boundary-Element Methods

It is reassuring to confirm that, in terms of the stress tensor, the Green’s function forthe pressure is given by

pj(x;x0) = 1

2Tiji(x;x0); (7)

as required by the Newtonian constitutive equation.

Call statement:

sgf 2d 2p

(Iopt Input: See Note 1.; x; y Input: Coordinates of the field point.; x0; y0 Input: Coordinates of one singular point (point force).; a11; a12 Input: Coordinates of the first base vector.; a21; a22 Input: Coordinates of the second base vector.; b11; b12 Input: Coordinates of the first reciprocal base vector.; b21; b22 Input: Coordinates of the second reciprocal base vector.; ew Input: Ewald splitting parameter :

; area Input: Area of the unit cell in the xy plane.;Max1;Max2 Input: Summation limits in real and reciprocal space.; Gxx; Gxy Output: Velocity Green’s function.; Gyx; Gyy Output: Velocity Green’s function.; px; py Output: Pressure Green’s function.; Txxx; Txxy Output: Stress Green’s function.; Tyxx; Tyxy Output: Stress Green’s function.; Txyx; Txyy Output: Stress Green’s function.; Tyyx; Tyyy) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

PREREQUISITES:

Subroutines ewald 2d, qqq 2d, and vvv 2d must be called in this particularorder, before subroutine sgf 2d 2p, as shown in the driver.

When multiple Green’s function evaluations with the same lattice base vectors are tobe performed, it is not necessary to call the three subroutines each time, but just oncebefore the first evaluation.

Calling vvv 2d is necessary only if the pressure and stress Green’s functions arerequired (Iopt = 2).

Page 342: Boundary Element Methods

BEMLIB: stokes/sgf 2d 327

Subroutine ewald 2d:

This subroutine produces the reciprocal base vectors b1 and b2 in wave numberspace, and the area of the unit cell of the lattice in real space. It also returns arecommended value for the Ewald parameter . The call statement is:

ewald 2p

(a11; a12 Input: Coordinates of the first base vector:; a21; a22 Input: Coordinates of the second base vector:; b11; b12 Output: Coordinates of the first reciprocal base vector:; b21; b22 Output: Coordinates of the second reciprocal base vector:; ew Output: Ewald splitting parameter :

; area) Output: Area of the unit cell in the xy plane.

Subroutine qqq 2d:

This subroutine produces a matrix used for computing the velocity Green’s functionGij by summing in the wave number space. The call statement is:

qqq 2p

(b11; b12 Input: Coordinates of the first reciprocal base vector:; b21; b22 Input: Coordinates of the second reciprocal base vector:;Max2 Input: Summation limit in wave number space.; ew) Input: Ewald splitting parameter :

The output is passed through a common block, as shown in the source code.

Subroutine vvv 2d:

This subroutine produces a matrix used for computing the pressure and stress Green’sfunctions pi and Tijk by summing in the wave number space. The call statement is:

vvv 2p

(b11; b12 Input: Coordinates of the first reciprocal base vector.; b21; b22 Input: Coordinates of the second reciprocal base vector.;Max2 Input: Summation limit in wave number space.; ew) Input: Ewald splitting parameter :

The output is passed through a common block, as shown in the source code.

Numerical method:

The Green’s function is computed by direct evaluation using expressions (1) to (6).

An option is provided for computing the Green’s function by trilinear interpolation

Page 343: Boundary Element Methods

328 A Practical Guide to Boundary-Element Methods

with respect to x x0, y y0, and and a21, where (x0; y0) are the coordinates ofone point force in the periodic array, and (x; y) are the coordinates of the evaluationpoint. It is assumed that all lengths have been scaled, and the orientation of the latticehas been chosen so that a11 = 1, a12 = 0 and a22 = 1.

The look-up tables are generated by program sgf 2d 2p glut included in thisdirectory.

Driver: sgf 2d 2p dr

The driver performs pointwise evaluations and tests the integral identities (sgf 2d.7,8).Input data are read from the file sgf 2d 2p.dat.

The Green’s function is evaluated either directly or by trilinear interpolation throughlook-up tables. When the Green’s function is computed by trilinear interpolation, thedriver reads the look-up tables from the file sgf 2d 2p.glut which is generatedby program sgf 2d 2p glut included in this directory.

Files to be linked:

The main subroutine must be linked with subroutine exp int that evaluates theexponential integral E1.

The driver must be linked with subroutinesgf 2d 2p int that computes the Green’sfunction by interpolation through look-up tables.

Page 344: Boundary Element Methods

329

Directory: stokes/sgf 3d

The velocity, pressure, and stress Green’s functions of three-dimensional Stokes flow,denoted respectively, by Gij , pj , and Tijk , where the indices range over 1, 2, and 3corresponding to x, y, and z, are defined such that the velocity field at the field pointx = (x; y; z) induced by a three-dimensional point force with strength b placed atthe singular point x0 = (x0; y0; z0) is given by

ui(x) =1

8Gij(x;x0) bj =

1

8Gji(x0;x) bj ; (sgf 3d.1)

where is the fluid viscosity. The associated pressure and stress fields are given by

p(x) =1

8pj(x;x0) bj ; (sgf 3d.2)

and

ik(x) =1

8Tijk(x;x0) bj : (sgf 3d.3)

Using the Newtonian constitutive equation, we find

Tijk = Æik pj +@Gij

@xk+@Gkj

@xi: (sgf 3d.4)

By definition, the velocity and pressure Green’s functions satisfy the equations

@Gij

@xi= 0;

(sgf 3d.5)

@pj

@xi+ (

@2Gij

@x2+@2Gij

@y2+@2Gij

@z2) = 8 Æij Æ3(x x0);

originating, respectively, from the continuity equation and the Stokes equation; Æijis Kronecker’s delta, and Æ3 is Dirac’s delta function in three dimensions.

Correspondingly, the stress Green’s function satisfies the equation

@Tijk

@xk=

@Tkji

@xk= 8 Æij Æ3(x x0): (sgf 3d.6)

Page 345: Boundary Element Methods

330 A Practical Guide to Boundary-Element Methods

INTEGRAL IDENTITIES:

Mass conservation expressed by the continuity equation requires that the velocityGreen’s functions satisfy the integral identity

ZD

ni(x)Gij(x;x0) dS(x) = 0; (sgf 3d.7)

where D is a closed surface enclosing a control volume Vc. To derive (sgf 3d.7), weintegrate the first equation of (sgf 3d.5) over Vc, and use the divergence theorem toconvert the volume integral to a surface integral.

The stress Green’s functions satisfy the integral identity

ZD

Tijk(x;x0) nk(x) dS(x) =

8<:

Æij when x0 is inside D12Æij when x0 is on D0 when x0 is outside D

; (sgf 3d.8)

originating from the second of (sgf 3d.5), where the normal vector n points into thecontrol volume enclosed by the surface D. When the point x0 is located on D, theprincipal-value integral is implied on the left-hand side of (sgf 3d.8).

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary-integral representation for the velocity of a three-dimensional Stokesflow is

uj(x0) = 1

8

ZD

Gji(x0;x) fi(x) dS(x)

+1

8

ZD

ui(x) Tijk(x;x0) nk(x) dS(x); (sgf 3d.9)

where D is the collection of all surfaces enclosing a selected control volume in theflow, n is the unit vector normal to D pointing into the control volume, and f nis the boundary traction.

BOUNDARY-INTEGRAL EQUATION:

The boundary-integral equation corresponding to (sgf 3d.9) is

uj(x0) = 1

4

ZD

Gji(x0;x) fi(x) dS(x)

+1

4

Z PV

D

ui(x) Tijk(x;x0) nk(x) dS(x); (sgf 3d.10)

where the point x0 lies on D, and PV denotes the principal-value integral.

Page 346: Boundary Element Methods

BEMLIB: stokes/sgf 3d 331

DIRECTORY CONTENTS:

This directory contains a suite of subroutines that evaluate the following family ofGreen’s functions:

Subroutine Topic

sgf 3d fs Green’s function for flow in free space.

sgf 3d w Green’s function for flow in a semi-infinite domainbounded by an infinite plane wall.

sgf 3d sph Green’s function for flow in the exteriorof a sphere.

sgf 3d 2p Doubly periodic Green’s function.

sgf 3d 3p Triply periodic Green’s function.

Page 347: Boundary Element Methods

332 A Practical Guide to Boundary-Element Methods

Subroutine: sgf 3d fs

This subroutine computes the Green’s function for an infinite domain of flow in theabsence of boundaries. The streamline pattern of the induced flow is depicted inFigure sgf 3d fs.1.

The Green’s function is given by

Gij(x) =Æij

r+xixj

r3;

pj(x) = 2xj

r3; (1)

Tijk(x) = 6xixj xk

r5;

where x xx0 and r = jx x0j are the vectorial and scalar distance of the fieldpoint x from the singular point x0, respectively.

Call statement:

sgf 3d fs

(Iopt Input: See Note 1.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point (point force).; Gxx; Gxy; Gxz Output: Velocity Green’s function.; Gyx; Gyy; Gyz Output: Velocity Green’s function.; Gzx; Gzy; Gzz Output: Velocity Green’s function.; px; py; pz Output: Pressure Green’s function.; Txxx; Txxy; Txxz Output: Stress Green’s function.; Tyxy; Tyxz; Tzxz Output: Stress Green’s function.; Txyx; Txyy; Txyz Output: Stress Green’s function.; Tyyy; Tyyz; Tzyz Output: Stress Green’s function.; Txzx; Txzy; Txzz Output: Stress Green’s function.; Tyzy; Tyzz; Tzzz) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1).

Page 348: Boundary Element Methods

BEMLIB: stokes/sgf 3d 333

Figure sgf 3d fs.1 Streamlines of the flow induced by a three-dimensional pointforce oriented along the x axis, in free space.

Driver: sgf 3d fs dr

The driver evaluates the Green’s function and verifies the integral identities (sgf 3d.7,8),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver is linked with subroutinegauss sphwhich contains tables of quadraturebase points and weights for integration over the surface of a sphere.

Page 349: Boundary Element Methods

334 A Practical Guide to Boundary-Element Methods

Subroutine: sgf 3d w

This subroutine computes the Green’s function for a semi-infinite domain of flowbounded by a plane wall located at x = wall, as illustrated in Figure sgf 3d w.1.The streamline pattern of the induced flow is depicted in Figure sgf 3d w.2.

The velocity Green’s function is given by

Gij(x;x0) = GFS

ij (x x0)GFS

ij (x xIm

0 )

(1)

+2 h20 Dij(x xIm

0 ) 2 h0 Qij(x xIm

0 );

[7, 8] (see also Reference [55], p. 84), where:

GFS

ijis the free-space Green’s function.

xIm0 = (2 wall x0; y0; z0) is the image of the point force with respect to

the wall.

h0 = x0 wall is the distance of the point force from the wall.

The tensors Dij and Qij represent, respectively, potential dipoles and point-force doublets, and are given by

Dij(w) = @

@wi(wj

jwj3 ) = (Æij

jwj3 3wiwj

jwj5 );

(2)

Qij(w) = @GFS

i1

@wj= w1 Dij Æj1wi Æi1wj

jwj3 :

The minus sign applies for j = 1, corresponding to the x direction, and theminus sign applies for j = 2; 3, corresponding to the y and z directions.

The pressure Green’s function is given by

pj(x;x0) = pFS

j(x x0) p

FS

j(x x

Im

0 ) 2 h0 pQ

j(x x

Im

0 ); (3)

where pjFS is the free-space pressure Green’s function, and

pQ

x(w) = 2

2 w2x + w

2y + w

2z

jwj5 ;

(4)

pQ

y(w) = 6

wxwy

jwj5 ; pQ

z(w) = 6

wxwz

jwj5 ;

is the pressure field corresponding to the point-force doublets.

Page 350: Boundary Element Methods

BEMLIB: stokes/sgf 3d 335

h

y

x

z

x = wall

x 0

0

Figure sgf 3d w.1 Flow due to a point force in semi-infinite domain bounded by aplane wall located at x = wall.

The stress Green’s function follows from the preceding expressions and equation(sgf 3d.4).

Call statement:

sgf 3d w

(Iopt Input: See Note 1.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point (point force).; wall Input: The wall is located at x = wall:

; Gxx; Gxy; Gxz Output: Velocity Green’s function.; Gyx; Gyy; Gyz Output: Velocity Green’s function.; Gzx; Gzy; Gzz Output: Velocity Green’s function.; px; py; pz Output: Pressure Green’s function.; Txxx; Txxy; Txxz Output: Stress Green’s function.; Tyxy; Tyxz; Tzxz Output: Stress Green’s function.; Txyx; Txyy; Txyz Output: Stress Green’s function.; Tyyy; Tyyz; Tzyz Output: Stress Green’s function.; Txzx; Txzy; Txzz Output: Stress Green’s function.; Tyzy; Tyzz; Tzzz) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

Numerical method:

The Green’s function is computed by direct evaluation of expressions (1) to (4).

Page 351: Boundary Element Methods

336 A Practical Guide to Boundary-Element Methods

Figure sgf 3d w.2 Streamline pattern of the flow induced by a three-dimensionalpoint force oriented normal (top) or parallel (bottom) to a plane wall locatedat x = 0.

Page 352: Boundary Element Methods

BEMLIB: stokes/sgf 3d 337

Driver: sgf 3d w dr

The driver evaluates the Green’s function and verifies the integral identities (sgf 3d.7,8),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver is linked with subroutinegauss sphwhich contains tables of quadraturebase points and weights for integration over the surface of a sphere.

Page 353: Boundary Element Methods

338 A Practical Guide to Boundary-Element Methods

Subroutine: sgf 3d sph

This subroutine computes the Green’s function in the exterior of a sphere. Thestreamline pattern of the induced flow is depicted in Figure sgf 3d sph.1.

Closed-form expressions for the velocity Green’s function have been derived by Os-een [50], and are discussed in References [28, 37, 48] and [55], p. 87.

Call statement:

sgf 3d sph

(x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point (point force).; xc; yc; zc Input: Coordinates of the center of the sphere.; a Input: Radius of the sphere.; Gxx; Gxy; Gxz Output: Velocity Green’s function.; Gyx; Gyy; Gyz Output: Velocity Green’s function.; Gzx; Gzy; Gzz) Output: Velocity Green’s function.

Numerical method:

The Green’s function is computed by direct evaluation of expressions provided in theaforementioned references.

Driver: sgf 3d sph dr

The driver evaluates the Green’s function and verifies the integral identity (sgf 3d.7),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver is linked with subroutinegauss sphwhich contains tables of quadraturebase points and weights for integration over the surface of a sphere.

Page 354: Boundary Element Methods

BEMLIB: stokes/sgf 3d 339

Figure sgf 3d sph.2 Streamline pattern of the flow due to a three-dimensional pointforce in front of a sphere pointing in the radial (top) or azimuthal (bottom)direction.

Page 355: Boundary Element Methods

340 A Practical Guide to Boundary-Element Methods

Subroutine: sgf 3d 2p

This subroutine computes the doubly periodic Green’s function representing the flowinduced by a planar lattice of three-dimensional point forces, as illustrated in Figuresgf 3d 2p.1. The point forces are deployed at the vertices of a two-dimensionallattice described by two base vectors a1 and a2 parallel to the xy plane. One of thepoint forces is located at the point x0 = (x0; y0; z0). The streamline pattern of theinduced flow is depicted in Figure sgf 3d 2p.2.

The Green’s function may be computed by two methods: a Fourier series expan-sion appropriate for large distances from the array, and a rapidly converging Ewaldsummation method, as discussed in Reference [57].

Call statement:

sgf 3d 2p

(Method Input: See Note 1.; eps Input: A small number used for numerical differentiation.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of the singular point (point force).; a11; a12 Input: Coordinates of the first base vector.; a21; a22 Input: Coordinates of the second base vector.; b11; b12 Input: Coordinates of the first reciprocal base vector.; b21; b22 Input: Coordinates of the second reciprocal base vector.; ew Input: Ewald summation parameter :;Max1;Max2 Input: Summation limits in real and wave number space.; Gxx; Gxy; Gxz Output: Velocity Green’s function.; Gyx; Gyy; Gyz Output: Velocity Green’s function.; Gzx; Gzy; Gzz) Output: Velocity Green’s function.

Note:

1. Set Method = 1 to compute the Green’s function in terms of Fourier series;set Method = 2 to use the fast summation method developed in Reference[57].

PREREQUISITE:

Subroutine ewald 3d 2p must be called before subroutine sgf 3d 2p, as shownin the driver. This subroutine produces the reciprocal wave number base vectors b1and b2, the area of the unit cell in real space, and returns a recommended value forthe Ewald splitting parameter .

Page 356: Boundary Element Methods

BEMLIB: stokes/sgf 3d 341

a

a

1

2

x 0

x

y

z

Figure sgf 3d 2p.1 A doubly periodic planar lattice of three-dimensional pointforces located at the vertices of a planar lattice that is parallel to the xy plane.The structure of the lattice is defined by the base vectors a1 and a2.

When multiple Green’s function evaluations with the same lattice base vectors areto be performed, it is not necessary to call ewald 3d 2p each time, but just oncebefore the first evaluation. The call statement is:

ewald 3d 2p

(a11; a12 Input: Coordinates of the first base vector:; a21; a22 Input: Coordinates of the second base vector:; b11; b12 Output: Coordinates of the first reciprocal base vector:; b21; b22 Output: Coordinates of the second reciprocal base vector:; ew Output: Ewald splitting parameter :; area) Output: Area of the unit cell in physical space.

Numerical method:

The Green’s function is computed by direct evaluation using analytical expressionsgiven in Reference [57].

Driver: sgf 3d 2p dr

The driver evaluates the Green’s function and verifies the integral identity (sgf 3d.7),where D is the surface of a sphere.

Page 357: Boundary Element Methods

342 A Practical Guide to Boundary-Element Methods

Figure sgf 3d 2p.2 Streamlines of the flow induced by a planar square lattice ofthree-dimensional point forces. The streamlines lie in a plane that is perpen-dicular to the plane of the point forces and passes through a file of point forces.

Files to be linked: None for the subroutine.

The driver must be linked with subroutine gauss sph which contains tables ofquadrature base points and weights for integration over the surface of a sphere.

Page 358: Boundary Element Methods

BEMLIB: stokes/sgf 3d 343

Subroutine: sgf 3d 3p

This subroutine computes the triply periodic Green’s function of three-dimensionalStokes flow representing the flow due to a periodic array of point forces deployed atthe vertices of a three-dimensional lattice defined by the base vectors a(1), a(2), anda(3), as illustrated in Figure sgf 3d 3p.1. The streamline pattern of the induced flow

is depicted in Figure sgf 3d 3p.2.

One of the point forces is located at the point x0 = (x0; y0; z0), and the nth pointforce is located at the point x(n) = (xn; yn; zn), where

x(n) = x0 + i a

(1)x

+ j a(2)x

+ k a(3)x; y

(n) = y0 + i a(1)y

+ j a(2)y

+ k a(3)y;

z(n) = z0 + i a

(1)z

+ j a(2)z

+ k a(3)z; (1)

i; j, and k are three integers, and the index n is defined in terms of i; j and k using atriple summation formula.

Following Ewald’s summation method [5, 26, 57], we find that the velocity Green’sfunction tensor is given by

Gij(x;x0) =Xn

f[erfc(rn) + 2prn (2 r2n 3) er

2n ]

Æij

rn

+[erfc(rn) +2prn (1 2 r2

n) er

2n ]

(xi x(n)

i)(xj x

(n)

j)

r3n

g

+8

Vc

Xm

1

k(m)2(1 +

1

4k(m)2 +

1

8k(m)4) exp(1

4k(m)2)

(Æij k(m)i

k(m)j

k(m)2) cos[k(m) (x x0)]: (2)

The first sum on the right-hand side of (2) with respect to n runs over the point forces,and the second sum with respect to m runs over the vertices of the reciprocal latticein wave-number space. All terms on the right-hand side of (2) have dimensions ofinverse length.

The base vectors of the reciprocal lattice are given by

b(1) =

2

Vca(2) a

(3); b

(2) =2

Vca(3) a

(1);

b(3) =

2

Vca(1) a

(2); (3)

where Vc = (a(1) a(2)) a(3) is the volume of a unit cell.

Page 359: Boundary Element Methods

344 A Practical Guide to Boundary-Element Methods

a 3

a1

a2

y

z

x

Figure sgf 3d 3p.1 A triply periodic array of three-dimensional point forces locatedat the vertices of a lattice.

The vertices of the reciprocal lattice are located at k(m) = (k(m)x ; k

(m)y ; k

(m)z ), where

k(m)x = i b

(1)x + j b

(2)x + l b

(3)x ; k

(m)y = i b

(1)y + j b

(2)y + l b

(3)y ;

k(m)z

= i b(1)z

+ j b(2)z

+ l b(3)z; (4)

and the indexm is defined in terms of i; j and l using triple-summation. The singularwave number corresponding to i = 0; j = 0, and l = 0 is excluded from the secondsum in (2).

The rest of the symbols in (2) are defined as follows:

rn =p

(x xn)2 + (y yn)2 + (z zn)2 is the distance of the evaluationpoint from the nth point force, and rn = rn is the reduced dimensionlessdistance.

k(m) jk(m)j is the length of the mth wave number vector, and k(m) = k

(m)

is the dimensionless wave number.

erfc is the complementary error function.

is the Ewald splitting parameter with dimensions of inverse length, deter-mining the balance of the sums in real and reciprocal space.

Page 360: Boundary Element Methods

BEMLIB: stokes/sgf 3d 345

The right-hand side of (2) is independent of the selected value of . As tends tozero, we obtain a representation in terms of sums in real space, whereas as tends toinfinity, we obtain a representation in terms of a double Fourier series in reciprocalwave number space.

The pressure Green’s function is given by

pj(x;x0) =8

Vc(xj x0j )

+Xn

[ 2 erfc(rn) +4prn (1 + 4 r2n

4

3r4n) e

rn ]xj x

(n)j

r3n

+8

Vc

Xm

(1 1

6k(m)2 1

12k(m)4)

k(m)

j

k(m)2exp( k

(m)2

4) sin[km (x x0)]:

(5)

The first term on the right-hand side of (5) contributes a linear pressure field thatbalances the force imparted to the fluid by the point forces, thereby satisfying theforce balance over each periodic cell.

Figure sgf 3d 3p.2 Streamlines of the flow induced by a triply periodic array ofthree-dimensional point forces located at the vertices of a cubic lattice. Thestreamlines lie in a plane of point forces.

Page 361: Boundary Element Methods

346 A Practical Guide to Boundary-Element Methods

The stress Green’s function is given by

Tijl(x;x0) = Æil8

Vc(xj x0j )

Xn

f 8p3 [Æjl(xi x

(ii) + Æij(xl x

(n)

l) + Æil(xj x

(n)j

)] er2n

+[ 6 erfc(rn) +4prn (3 + 2 r2

n 4 r4

n) ern ]

(xi x(n)

i)(xj x

(n)

j)(xl x

(l)

l)

r5n

g

+8

Vc

Xm

[ 2 (1 +1

4k(m)2 +

1

8k(m)4)

k(m)i

k(m)j

k(m)

l

k(m)4

Æijk(m)

l+ Æljk

(m)i

+ Æilk(m)j

k(m)2] exp( k

(m)2

4) sin[km (x x0)]: (6)

The first term on the right-hand side of (6) incorporates the linear variation of thenormal stress due to the pressure.

Call statement:

sgf 3d 3p

(Iopt Input: See Note 1.; x; y; z Input: Coordinates of the field point.; x0; y0; z0 Input: Coordinates of one singular point (point force).; a11; a12; a13 Input: Coordinates of the first base vector.; a21; a22; a23 Input: Coordinates of the second base vector.; a31; a32; a33 Input: Coordinates of the third base vector.; b11; b12; b13 Input: Coordinates of the first reciprocal base vector.; b21; b22; b23 Input: Coordinates of the second reciprocal base vector.; b31; b32; b33 Input: Coordinates of the third reciprocal base vector.; ew Input: Ewald splitting parameter :; vlm Input: Volume of the unit cell in the physical space.;Max1;Max2 Input: Summation limits in real and wave number space.; Gxx; Gxy; Gxz Output: Velocity Green’s function.; Gyx; Gyy; Gyz Output: Velocity Green’s function.; Gzx; Gzy; Gzz Output: Velocity Green’s function.; px; py; pz Output: Pressure Green’s function.

Page 362: Boundary Element Methods

BEMLIB: stokes/sgf 3d 347

; Txxx; Txxy; Txxz Output: Stress Green’s function.; Tyxy; Tyxz; Tzxz Output: Stress Green’s function.; Txyx; Txyy; Txyz Output: Stress Green’s function.; Tyyy; Tyyz; Tzyz Output: Stress Green’s function.; Txzx; Txzy; Txzz Output: Stress Green’s function.; Tyzy; Tyzz; Tzzz) Output: Stress Green’s function.

Note:

1. Set Iopt = 1 to obtain only Gij ; set Iopt 6= 1 to obtain Gij , pj , and Tijk .

PREREQUISITES:

Subroutines ewald 3d, qqq 3d, and vvv 3d must be called in this particularorder, before subroutine sgf 3d 3p, as shown in the driver.

If multiple Green’s function evaluations with the same lattice base vectors are to beperformed, it is not necessary to call the three subroutines each time, but just oncebefore the first evaluation.

Calling vvv 3d is necessary only if the pressure and stress Green’s functions arerequired (Iopt = 2).

Subroutine ewald 3d:

This subroutine produces the reciprocal wave number space base vectors b1, b2,b3, and the volume of the unit cell of the lattice in real space. It also returns arecommended value for the Ewald parameter . The call statement is:

ewald 3d

(a11; a12; a13 Input: Coordinates of the first base vector.; a21; a22; a23 Input: Coordinates of the second base vector.; a31; a32; a33 Input: Coordinates of the third base vector.; b11; b12; b13 Output: Coordinates of the first reciprocal base vector.; b21; b22; b23 Output: Coordinates of the second reciprocal base vector.; b31; b32; b33 Output: Coordinates of the third reciprocal base vector:; ew Output: Ewald splitting parameter :; vlm) Output: Volume of the unit cell in physical space.

Subroutine qqq 3d:

This subroutine produces a matrix used for computing the velocity Green’s functionGij by summing in the wave number space. The call statement is:

Page 363: Boundary Element Methods

348 A Practical Guide to Boundary-Element Methods

qqq 3p

(b11; b12; b13 Input: Coordinates of the first reciprocal base vector.; b21; b22; b23 Input: Coordinates of the second reciprocal base vector.; b31; b32; b33 Input: Coordinates of the third reciprocal base vector.;Max2 Input: Summation limit in wave number space.; ew) Input: Ewald splitting parameter :

The output is passed through a common block, as shown in the source code.

Subroutine vvv 3d:

This subroutine produces a matrix used for computing the pressure and stress Green’sfunctions pi and Tijk by summing in the wave number space. The call statement is:

vvv 3d

(b11; b12; b13 Input: Coordinates of the first reciprocal base vector:; b21; b22; b23 Input: Coordinates of the second reciprocal base vector.; b31; b32; b33 Input: Coordinates of the third reciprocal base vector.;Max2 Input: Summation limit in wave number space.; ew) Input: Ewald splitting parameter :

The output is passed through a common block, as shown in the source code.

Numerical method: sgf 3d 3p dr

The Green’s function is computed by direct evaluation of expressions (1) to (6).

Driver: sgf 3d 3p dr

The driver evaluates the Green’s function and verifies the integral identities (sgf 3d.7,8),where D is the surface of a sphere.

Files to be linked: None for the subroutine.

The driver is linked with subroutinegauss sphwhich contains tables of quadraturebase points and weights for integration over the surface of a sphere.

Page 364: Boundary Element Methods

349

Directory: stokes/sgf ax

Consider the cylindrical polar coordinates (x; ; ') illustrated in Figure sgf ax.1,defined with respect to the Cartesian coordinates (x; y; z). A semi-infinite plane ofconstant angle ' passing through the x axis is called a meridional plane.

The velocity, pressure, and stress Green’s functions of axisymmetric Stokes flowdenoted respectively by G , p, and T , where the Greek indices range over 1and 2 corresponding to x and , are defined such that the velocity at the point x dueto a ring of point forces with strength per unit length b piercing a meridional planeat the point x0, is given by

u(x) =1

8G(x;x0) b ; (sgf ax.1)

where is the fluid viscosity. The associated pressure and stress fields are given by

p(x) =1

8p(x;x0) b ; (sgf ax.2)

and

(x) =1

8Q (x;x0) b: (sgf ax.3)

INTEGRAL IDENTITIES:

Mass conservation requires that the axisymmetric Green’s functions for the velocitysatisfy the integral identity

ZC

n(x)G(x;x0) dl(x) = 0; (sgf ax.4)

for = x or , where C is the closed trace of an axisymmetric surface in a merid-ional plane, and n is the unit vector normal to C pointing inward.

The stress Green’s functions satisfy the integral identity

1

80

ZC

Q (x;x0) n(x) dl(x) =

8<:

Æ when x0 is inside C12Æ when x0 is on C

0 when x0 is outside C:

(sgf ax.5)

When the point x0 is located on C, the principal-value integral is implied on theleft-hand side of (sgf ax.5).

Page 365: Boundary Element Methods

350 A Practical Guide to Boundary-Element Methods

ϕσS

CC

x

x σ

σ

0

0

Radial

point forces

Axial point forces

B

z

y

x

0

0

BS

Figure sgf ax.1 Cylindrical polar coordinates used to define the Green’s functionsof axisymmetric Stokes flow.

BOUNDARY-INTEGRAL REPRESENTATION:

The boundary integral representation for the axial and radial velocity components ofan axisymmetric Stokes flow is

u(x0) = 1

8

ZC

G(x0;x) f(x) dl(x)

+1

8

ZC

Q (x0;x) u(x) n (x) dl(x); (sgf ax.6)

where C denotes the union of the contours of all axisymmetric surfaces enclosing aselected area of flow in a meridional plane, n is the unit vector normal to C pointinginto the control area, and f n is the boundary traction.

BOUNDARY-INTEGRAL EQUATION:

The boundary integral equation corresponding to (sgf ax.6) is

u(x0) = 1

4

ZC

G(x0;x) f(x) dl(x)

+1

4

Z PV

C

Q (x0;x) u(x) n (x) dl(x); (sgf ax.7)

Page 366: Boundary Element Methods

BEMLIB: stokes/sgf ax 351

where the point x0 lies on C, and PV denotes the principal-value integral.

FURTHER INTEGRAL IDENTITIES:

Applying the boundary-integral representation (sgf ax.6) for rigid-body translationalong the x axis, we derive the integral identities

ZC

G(x0;x) n(x) dl(x) = 0; (sgf ax.8)

and

1

8

ZC

Qx (x0;x) n (x) dl(x) =

8<:

Æx when x0 is inside C 1

2Æx when x0 is on C

0 when x0 is outside C;

(sgf ax.9)

which complement the integral identities (sgf ax.4) and (sgf ax.5).

DESINGULARIZATION OF THE DOUBLE-LAYER POTENTIAL:

The principal value of the axisymmetric double-layer potential expressed by the sec-ond integral on the right-hand side of (sgf ax.7) may be desingularized by writing

ZPV

C

Q (x0;x) u(x) n (x) dl(x)

=

ZC

Qx (x0;x) [u(x) u(x0)] n (x) dl(x) 4Æx ux(x0)

+

ZC

[Q (x0;x) u(x) P (x0;x) u(x0)] n (x) dl(x) 4Æ u(x0);

(sgf ax.10)

where P is a new tensor satisfying the identity

1

8

ZC

P (x;x0) n (x) dl(x) =

8<:

Æ when x0 is inside C 1

2Æ when x0 is on C

0 when x0 is outside C:

(sgf ax.11)

The tensor P is evaluated by the subroutines included in this directory.

Page 367: Boundary Element Methods

352 A Practical Guide to Boundary-Element Methods

DIRECTORY CONTENTS:

Directory sgf ax contains the following subroutines and their drivers:

Subroutine Topic

sgf ax fs Green’s function for flow in free space.

sgf ax w Green’s function for flow in a semi-infinite domainbounded by a plane wall.

sgf ax 1p Singly periodic Green’s function.

sgf ax 1p ct Periodic Green’s function for flow inside a cylindricaltube with circular cross-section.

Page 368: Boundary Element Methods

BEMLIB: stokes/sgf ax 353

Subroutine: sgf ax fs

This subroutine computes the Green’s function for an infinite domain of flow in theabsence of boundaries. The streamline pattern of the induced flow is depicted inFigure sgf ax fs.1.

Analytical expressions for the Green’s function in terms of complete elliptic integralsof the first and second kind are given in References [53] and [55], pp. 38 – 41.

Call statement:

sgf ax fs

(Iopt Input: See Note 1.; x0; 0 Input: Coordinates of the singular point.; x; Input: Coordinates of the field point.; Gxx; Gx Output: Velocity Green’s function.; Gx; G Output: Velocity Green’s function.; Qxxx; Qxx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qx; Q Output: Stress Green’s function.; Pxx; Px Output: See Note 2.; Px; P Output: See Note 2.; Iaxis) Input: See Note 3.

Notes:

1. Set Iopt = 1 to obtain only G ; set Iopt 6= 1 to obtain G , p , and T .

2. This matrix is introduced in equation (sgf ax.10).

3. Iaxis = 1 indicates that 0 = 0, and Iaxis = 0 indicates otherwise. In thefirst case, simplified formulae are used to compute the Green’s functions.

Numerical method:

The Green’s function is computed by direct evaluation of analytical expressions. Thecomplete elliptical integrals are evaluated by an iterative method.

Driver: sgf ax fs dr

The driver evaluates the Green’s functions and verifies the integral identities(sgf ax.4,5,8,9,11), where C is a circular contour.

Page 369: Boundary Element Methods

354 A Practical Guide to Boundary-Element Methods

Figure sgf ax fs.1 Streamline pattern of the flow induced by a ring of point forcespointing in the axial (top) or radial (bottom) direction. In the dimensionlessunits of these graphs, the radius of the ring is 0.5.

Files to be linked:

ell int: Evaluation of complete elliptic integrals of the first and second kind.

Page 370: Boundary Element Methods

BEMLIB: stokes/sgf ax 355

Subroutine: sgf ax w

This subroutine computes the Green’s function for a semi-infinite domain of flowbounded by a plane wall located at x = wall. The streamline pattern of the inducedflow is depicted in Figure sgf ax w.1.

Analytical expressions for the Green’s function in terms of complete elliptic integralsof the first and second kind are given in Reference [54].

Call statement:

sgf ax w

(Iopt Input: See Note 1.; x0; 0 Input: Coordinates of the singular point (point force).; x; Input: Coordinates of the field point.; wall Input: The wall is located at x = wall:

; Gxx; Gx Output: Velocity Green’s function.; Gx; G Output: Velocity Green’s function.; Qxxx; Qxx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qx; Q Output: Stress Green’s function.; Pxx; Px Output: See Note 2.; Px; P Output: See Note 2.Iaxis) Input: See Note 3.

Notes:

1. Set Iopt = 1 to obtain only G ; set Iopt 6= 1 to obtain G , p , and T .

2. This matrix is introduced in equation (sgf ax.10).

3. Iaxis = 1 indicates that 0 = 0, and Iaxis = 0 indicates otherwise. In thefirst case, simplified formulae are used to compute the Green’s function.

Numerical method:

The Green’s function is computed by direct evaluation of analytical expressions. Thecomplete elliptical integrals are evaluated by an iterative method.

Driver: sgf ax w dr

The driver evaluates the Green’s function and verifies the integral identities(sgf ax.4,5,8,9,11), where C is a circular contour.

Page 371: Boundary Element Methods

356 A Practical Guide to Boundary-Element Methods

Figure sgf ax w.1 Streamline pattern of the flow induced by a ring of point forcespointing in the axial (top) or radial (bottom) direction, in the presence of aplane wall located at x = 0. In the dimensionless units of these graphs, thering is positioned at x = 0:5 and its radius is equal to 0.5.

Files to be linked:

ell int: Evaluation of complete elliptic integrals of the first and second kind.

Page 372: Boundary Element Methods

BEMLIB: stokes/sgf ax 357

Subroutine: sgf ax 1p

This subroutine computes the periodic Green’s function in free space representingthe flow due to an array of rings of point forces separated by the distance L alongthe x axis, as illustrated in Figure sgf ax 1p.1. The streamline pattern of the inducedflow is depicted in Figure sgf ax 1p.2.

The Green’s function is computed by summing non-periodic free-space Green’sfunctions produced by subroutine sgf ax fs over the one-dimensional array. Forexample,

G(x; ; x0; 0) =

k=NXk=N

ck GFS

(x; ; x0 + k L; 0); (1)

where the superscript FS denotes the free-space Green’s function, L is the distancebetween two consecutive rings, N is a specified truncation level, ck = 1 for k =

N + 1; : : : ;1; 0; 1; : : : ; N 1, cN = 1=2, and cN = 1=2.

The axial component Gxx decays like 40=j(x0 + k L) xj. To prevent the corre-sponding sum from diverging, we evaluate instead the regularized form

Gxx(x; ; x0; 0) =

k=NXk=N

[ck GFS

xx (x; ; x0 + k L; 0) 40

jx0 + (k + 12) Lj ]:

(2)

This modification is permissible because the last term within the sum is independentof the field-point coordinates (x; ). It is assumed that the denominator of the lastterm in (2) does not vanish for any value of k. If it does, the term enclosed by theparentheses should be modified.

The summed terms in equations (1) and (2) decay like 1=k2. Using the error formulafor the trapezoidal rule, we find that the error due to the truncation of the sumsbehaves like Æ=N , where Æ is a constant (e.g., [60], Ch. 1). Accordingly, the errorcorresponding to the sequence of truncation levels

N0 = N; N1 = mN; N2 = m2N; : : : (3)

where N and m are two specified integers, satisfies the linear relation

E(Nk) =1

mE(Nk1): (4)

The convergence may then be accelerated by Aitken’s extrapolation (e.g., [60], Ch.1).

Page 373: Boundary Element Methods

358 A Practical Guide to Boundary-Element Methods

L

x

y

z

x

0

Figure sgf ax 1p.1 A periodic array of rings of point forces separated by the dis-tance L along the x axis, pointing in the axial or radial direction.

Call statement:

sgf ax 1p

(Iopt Input: See Note 1.; x0; 0 Input: Coordinates of the singular point (point force).; x; Input: Coordinates of the field point.; L Input: Separation between the point-force rings.; Nsum;Np Input: See Note 2.; Gxx; Gx Output: Velocity Green’s function.; Gx; G Output: Velocity Green’s function.; Qxxx; Qxx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qxx; Qx Output: Stress Green’s function.; Qx; Q Output: Stress Green’s function.; Pxx; Px Output: See Note 3.; Px; P Output: See Note 3.; Iaxis) Input: See Note 4.

Notes:

1. Set Iopt = 1 to obtain only G ; set Iopt 6= 1 to obtain G , p , and T .

2. Nsum is the truncation limit N defined in equation (1). Np is the integer mdefined in the equations displayed in (3).

3. This matrix is introduced in equation (sgf ax.10).

4. Iaxis = 1 indicates that 0 = 0, and Iaxis = 0 indicates otherwise. In thefirst case, simplified formulae are used to compute the Green’s function.

Page 374: Boundary Element Methods

BEMLIB: stokes/sgf ax 359

Figure sgf ax 1p.2 Streamline pattern of the flow induced by a periodic array ofrings of point forces pointing in the axial (top) or radial (bottom) direction. Inthe dimensionless units of these graphs, the radius of the ring is 0.5 and theperiod is 1.0.

Page 375: Boundary Element Methods

360 A Practical Guide to Boundary-Element Methods

Driver: sgf ax 1p dr

The driver evaluates the Green’s function and verifies the integral identities(sgf ax.4,5,8,9), where C is a circular contour or one period of a periodic linein a meridional plane.

Files to be linked:

1. sgf ax fs: Computation of the free-space axisymmetric Green’s function.

2. ell int: Evaluation of complete elliptic integrals of the first and secondkind.

Page 376: Boundary Element Methods

BEMLIB: stokes/sgf ax 361

Subroutine: sgf ax 1p ct

This subroutine computes the periodic Green’s function of axisymmetric Stokes flowrepresenting the flow due to a periodic array of rings of point forces in the interior ofa circular cylinder, as illustrated in Figure sgf ax 1p ct.1.

The derivation of the Green’s function for the velocity in terms of infinite sums in-volving modified Bessel functions is discussed in Reference [56], pp. 89 – 92. TheGreen’s function is defined such that, when the point forces are oriented in the axialdirection, the flow rate of the induced flow vanishes.

Call statement:

sgf ax 1p ct

(x; Input: Coordinates of the field point.; x0; 0 Input: Coordinates of a singular point.; a Input: Tube radius.; L Input: Separation between the point-force rings.; Nsum;Np Input: See Note 1.; Gxx; Gx Output: Velocity Green’s function.; Gx; G) Output: Velocity Green’s function.

L

x

y

σ0

0zσ

a

x

Figure sgf ax 1p ct.1 Axisymmetric flow induced by a periodic array of rings ofpoint forces inside a cylindrical tube.

Page 377: Boundary Element Methods

362 A Practical Guide to Boundary-Element Methods

Figure sgf ax 1p ct.2 Streamline pattern of the flow induced by a periodic array ofrings of point forces pointing in the axial (top) or radial (bottom) directioninside a circular tube. In the dimensionless units of these graphs, the radius ofthe ring is 0.5, the period is 1.0, and the tube radius is 1.0.

Page 378: Boundary Element Methods

BEMLIB: stokes/sgf ax 363

Note:

1. Nsum is the truncation limit of an infinite sum involved in the computation ofthe Green’s function. Np is the integer m defined in equations (3) of directorysgf ax 1p, used to expedite the summation.

Driver: sgf ax 1p ct dr

The driver evaluates the Green’s function and verifies the integral identities (sgf ax.4,8)where C is a circular contour.

Files to be linked:

1. bessel I01K01Evaluation of modified Bessel functions.

2. ell intEvaluation of complete elliptic integrals of the first and second kind.

Page 379: Boundary Element Methods

364 A Practical Guide to Boundary-Element Methods

Directory: stokes/flow 2d

This directory contains a code that computes Stokes flow in a two-dimensional do-main with arbitrary geometry. Several types of flows and domain geometries imple-mented in the code are illustrated in Figures flow 2d.1 and flow 2d.2. Other config-urations may be included by straightforward modifications.

Figure flow 2d.1(a, b) illustrates streamline patterns for shear flow past a cavity or aprotuberance on a plane wall. Figure flow 2d.2(a) illustrates the streamline patternof shear flow past an inclined square held stationary above a plane wall. Figureflow 2d.2(b) illustrates the streamline pattern of shear flow over a periodic array ofcylinders, with the shear rate vanishing far below the cylinders.

MATHEMATICAL FORMULATION FOR FLOW PAST A WALL

WITH A DEPRESSION OR PROJECTION, AND FLOW PAST A CYLINDER:

In the case of shear flow over a cavity or protuberance on a plane wall, as illustrated inFigure flow 2d.1(a, b), possibly in the presence of an upper plane wall that is parallelto the lower wall, and shear flow past a cylindrical body above a plane wall, possiblyin the presence of an upper plane wall parallel to the lower wall, as illustrated inFigure flow 2d.2(a), the velocity field u is decomposed into a far-field componentprevailing far from the wall, denoted by u1, and a disturbance component, denotedby uD, so that

u = u1 + u

D: (1)

The unperturbed component expresses unidirectional shear flow along the x axiswith a linear or parabolic velocity profile described by

u1

x = y +Æ

2y2; u

1

y = 0; (2)

where is the shear rate at the wall located at y = 0, Æ is the pressure gradient, and is the fluid viscosity. The associated pressure field is given by

p1 = Æ x: (3)

The velocity is required to satisfy the no-slip and no-penetration boundary conditionu = 0 over all boundaries. Consequently, the disturbance velocity is required tosatisfy the boundary condition uD = u1.

Using the boundary condition for the disturbance velocity, we find that the velocity ata pointx0 = (x0; y0) that lies in the domain of flow is given by the boundary-integralrepresentation

Page 380: Boundary Element Methods

BEMLIB: stokes/flow 2d 365

Figure flow 2d.1 Flows implemented in code flow 2d: shear flow past (a) a cavityor (b) a protrusion on a plane wall, possibly in the presence of an upper planewall in the configuration of channel flow.

Page 381: Boundary Element Methods

366 A Practical Guide to Boundary-Element Methods

Figure flow 2d.2 Flows implemented in code flow 2d: (a) shear flow past a squareabove a plane wall, and (b) shear flow over a periodic array of circular cylin-ders.

Page 382: Boundary Element Methods

BEMLIB: stokes/flow 2d 367

uj(x0) = u1

j (x0) 1

4

ZC

Gji(x0;x) fD

i (x) dl(x)

1

4

ZC

u1

i (x) Tijk(x;x0) nk(x) dl(x); (4)

where:

fD is the disturbance component of the hydrodynamic traction.

C is the collection of all boundaries of the flow, including the surface of thelower wall and the surface of the upper plane wall if present.

n is the unit vector normal to C pointing into the flow.

Gij and Tijk are the free-space velocity and stress Green’s functions.

Applying equation (4) at a point x0 located on C, we obtain an integral equation ofthe first kind for the disturbance boundary traction fD,

1

2

ZC

Gji(x0;x) fD

i(x) dl(x)

= u1

j(x0) 1

2

ZPV

C

u1

i(x) Tijk(x;x0) nk(x) dl(x); (5)

where PV denotes the principal value of the double-layer potential.

MATHEMATICAL FORMULATION FOR FLOW OVER AN ARRAY OF CYLINDERS:

In the case of infinite simple shear flow over a periodic array of cylinders, as illus-trated in Figure flow 2d.2(b), the velocity at a point x0 that lies in the domain of flowis given by the boundary-integral representation [61]

uj(x0) = USlip Æjx 1

4

ZC

Gji(x;x0) fi(x) dl(x); (6)

where:

f is the hydrodynamic traction.

USlip is an a priori unknown slip velocity.

C stands for the contour of one cylinder.

n is the unit normal vector pointing into the flow.

Gij is the upward biased singly periodic Green’s function of Stokes flow.

Page 383: Boundary Element Methods

368 A Practical Guide to Boundary-Element Methods

A global force balance requiresZC

fi dl = L Æix; (7)

where L is the period of the flow (distance between two consecutive cylinders), and is the shear rate of the flow far above the cylinders.

Applying the integral representation (6) at a point x0 located at a cylinder’s surfaceC, we obtain an integral equation for the traction, accompanied by the integral con-straint (7).

Far below the cylinders, the velocity tends to an a priori unknown drift velocity givenby

UDrift = USlip +1

L

ZC

fx y dl: (8)

The integral on the right-hand side of (8) is evaluated after the solution of the integralequation (6) has been computed.

NUMERICAL METHOD:

The boundaries of the flow are discretized into a collection of straight or circularboundary elements, and the disturbance or total traction, fD or f , and velocity u1

are approximated with constant functions over each element. Applying the integralequation at the mid-point of each element, we obtain a system of linear equations forthe element values of the traction. The linear system is solved by Gauss elimination.

Once the solution has been found, the velocity at a point in the flow is computed us-ing the discrete form of the boundary-integral representation. Streamlines are gener-ated by integrating the ordinary differential equations governing the motion of pointparticles using the fourth-order Runge-Kutta method.

Main program: flow 2d

The main program solves integral equations of the first kind for the distribution of theboundary traction or disturbance boundary traction, and computes velocity profilesand streamlines originating from specified points in the flow.

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

Page 384: Boundary Element Methods

BEMLIB: stokes/flow 2d 369

3. flow 2d geoDiscretization of the boundary geometry.

4. flow 2d sdlpEvaluation of the single- and double-layer potential over the boundary ele-ments.

5. flow 2d velEvaluation of the velocity at a specified point in the flow.

6. gauss legBase points and weights for the Gauss-Legendre quadrature.

7. gelSolution of a linear algebraic system by Gauss elimination.

8. sgf 2d 1pSingly periodic Green’s function of Stokes flow.

9. sgf 2d fsGreen’s function of Stokes flow in free space.

10. sgf 2d wGreen’s function of Stokes flow in a semi-infinite domain bounded by a planewall.

Input files:

1. circle.datParameters for shear flow past a circular cylinder above a plane wall.

2. circle 1p.datParameters for shear flow over a periodic array of cylinders.

3. cvt crc.datParameters for shear flow over a circular cavity on a plane wall.

4. cvt rec.datParameters for shear flow over a rectangular cavity on a plane wall.

5. prt crc.datParameters for shear flow over a circular protrusion on a plane wall.

6. prt rec.datParameters for shear flow over a rectangular protrusion on a plane wall.

7. square.datParameters for shear flow past a rectangular cylinder above a plane wall.

Page 385: Boundary Element Methods

370 A Practical Guide to Boundary-Element Methods

Output files:

1. flow 2d.strStreamlines.

2. flow 2d.out1Boundary traction.

3. flow 2d.out2Recording of force and torque on an object.

4. flow 2d.profVelocity profile.

Page 386: Boundary Element Methods

371

Directory: stokes/prtcl sw

This directory contains a code that computes swirling flow due to the rotation of anaxisymmetric particle around its axis with angular velocity in an infinite viscousfluid, as illustrated in Figure prtcl sw.1.

MATHEMATICAL FORMULATION:

Consider the spherical polar coordinates (x; ; ') depicted in Figure prtcl sw.1. Wheninertial effects are negligible, the azimuthal component of the velocity u'(x; ) sat-isfies the equation (e.g., [59])

@2u'

@x2+

1

@

@(@u'

@) u'

2= 0; (1)

and is subject to the no-slip boundary condition

u' = (2)

over the particle surface.

The solution can be expressed in the boundary-integral form

u'(x0) = ZC

G(x;x0) [n(x) ru'(x)] dl(x)

+

ZC

u'(x) [n(x) rG(x;x0)] dl(x); (3)

where C is the particle contour in a plane of constant meridional angle ', and n isthe unit vector normal to C pointing into the fluid. The kernel G(x;x0) is the free-space axisymmetric Green’s function of equation (1), defined as the solution of theequation

@2G

@x2+

1

@

@(@G

@) G

2+ Æ2(x x0; 0) = 0; (4)

where Æ2 is the delta function in a meridional plane.

It can be shown that the Green’s function defined in (4) derives from the free-spaceGreen’s function of Laplace’s equation in three dimensions denoted by GL3D, as

Page 387: Boundary Element Methods

372 A Practical Guide to Boundary-Element Methods

ϕ

z

u

ϕ

σ

y

x

Figure prtcl sw.1 Swirling flow due to the rotation of an axisymmetric particle inan infinite viscous fluid.

G(x; ; x0; 0) =

Z 2

0

GL3D cos (' '0) d' =

4

Z 2

0

cos(' '0)d'

jx x0j

=

4

Z 2

0

cos(' '0) d'p(x x0)2 + (y y0)2 + (z z0)2

=

4

Z 2

0

cos(' '0) d'

[(x x0)2 + ( cos 0 cos0)2 + ( sin 0 sin0)2]1=2

=

4

Z 2

0

cos(' '0) d(' '0)

[(x x0)2 + 2 + 20 20 cos(' '0)]1=2

=

4

Z 2

0

cosu du

[(x x0)2 + 2 + 20 20 cosu]1=2

=

4

Z 2

0

cosu du

[(x x0)2 + ( + 0)2 4 0 cos2 u

2]1=2

=

p

(x x0)2 + ( + 0)2

Z 2

0

cosu dup1 k2 cos2 u

2

;(5)

where u = ' '0, and

Page 388: Boundary Element Methods

BEMLIB: stokes/prtcl sw 373

k2 4 0

(x x0)2 + ( + 0)2: (6)

Expressing the last expression in (5) in terms of the complete elliptic integral of thefirst and second kind defined, respectively, as

F (k) Z =2

0

dp1 k2 cos2

; E(k) Z =2

0

p1 k2 cos2 d; (7)

where is a dummy variable of integration, we find that the Green’s function is givenby

G(x; ; x0 ; 0) =

p

(x x0)2 + ( + 0)2

(2 k2)F (k) 2E(k)

k2: (8)

Substituting the boundary condition (2) into the double-layer potential on the right-hand side of (3), we find

u'(x0) = ZC

G(x;x0) [n(x) ru'(x)] dl(x)

+

ZC

[n(x) rG(x;x0)] dl(x): (9)

Next, we apply the reciprocal theorem, choosing as control volume the volume oc-cupied by the particle, and thus convert the double-layer to a single-layer potential.Rearranging, we derive the single-layer representation

u'(x0) = ZC

G(x;x0) fn(x) r[u'(x) ]g dl(x); (10)

which is equivalent to

u'(x0) = 1

ZC

G(x;x0) f'(x) dl(x); (11)

where is the fluid viscosity, and

f' n(x) r[u'(x) ] = [nx@u'

@x+ n

@

@(u'

)] (12)

is the shear stress on the particle surface.

The axial torque exerted on the particle due to the shear stress is given by

Mx = 2

ZC

f' 2dl: (13)

Page 389: Boundary Element Methods

374 A Practical Guide to Boundary-Element Methods

NUMERICAL METHOD:

The particle contour in the upper xy meridional plane is discretized into a collectionof boundary elements that may be straight segments or circular arcs, and the shearstress is approximated with a constant function over each element.

Applying the integral equation (11) at collocation points located at the mid-pointsof the boundary elements, we obtain a system of linear algebraic equations for theelement shear stress. The solution is computed by the method of Gauss elimination.

Main program: prtcl sw

The main program solves the integral equation (11) for the distribution of the shearstress, and computes the torque exerted on the particle.

Files to be linked:

1. elm arcDiscretization of a circular segment into arc elements.

2. elm lineDiscretization of a straight segment into straight (linear) elements.

3. ell intComputation of complete elliptic integrals of the first and second kind.

4. gauss legBase points and weights for the Gauss-Legendre quadrature.

5. gelSolution of a linear algebraic system by Gauss elimination.

6. prtcl sw geoBoundary element discretization.

7. prtcl sw slpComputation of the single-layer potential over boundary elements.

Input files:

1. sphere.datParameters for flow due to the rotation of a sphere.

2. spheroid.datParameters for flow due to the rotation of a spheroid.

Page 390: Boundary Element Methods

BEMLIB: stokes/prtcl sw 375

3. torus trgl.datParameters for flow due to the rotation of a triangular torus.

Output files:

1. prtcl sw.trcDistribution of boundary traction.

2. prtcl sw.xyBoundary-element distribution around the particle contour.

Page 391: Boundary Element Methods

376 A Practical Guide to Boundary-Element Methods

Directory: stokes/prtcl 2d

This directory contains a code that computes flow past a collection of two-dimensionalrigid particles with arbitrary shapes for a variety of configurations, as illustrated inFigure prtcl 2d.1, including the following:

A solitary or periodic collection of particles in semi-infinite shear flow boundedby a plane wall, as illustrated in Figure prtcl 2d.1(a, b).

A periodic collection of particles in a channel bounded by two parallel planewalls, as illustrated in Figure prtcl 2d.1(c).

A doubly periodic collection of particles in streaming (unidirectional) flow, asillustrated in Figure prtcl 2d.1(d).

MATHEMATICAL FORMULATION:

The fluid velocity u is decomposed into an incident component, denoted by u1, anda disturbance component due to the presence of the particles, denoted by uD, suchthat

u = u1 + u

D: (1)

The incident component is defined as follows:

In the case of shear flow past a solitary or periodic collection of particles ina semi-infinite domain of flow bounded by a plane wall located at y = w, asillustrated in Figure prtcl 2d.1(a, b),

u1

x= (y w) +

Æ

2(y w)2; u

1

y= 0; (2)

where is the shear rate at the wall, Æ is the pressure gradient, and is thefluid viscosity. The associated pressure field is given by

p1 = Æx: (3)

In the case of shear- or pressure-driven flow past a periodic collection of par-ticles in a channel bounded by two parallel plane walls located at y = h, asillustrated in Figure prtcl 2d.1(c),

u1

x= U1 + (U2 U1)

y + h

2h+

Æ

2(h2 y

2); u1

y= 0; (4)

whereU1 andU2 are the velocities of the lower and upper wall, h is the channelsemi-width, and Æ is the pressure gradient. The associated pressure field isgiven by (3).

Page 392: Boundary Element Methods

BEMLIB: stokes/prtcl 2d 377

n

x

y y

L

n

x

y

a

a 2

1

xx

y

h

−h

L n

n

(a) (b)

(c) (d)

Figure prtcl 2d.1 Schematic illustration of: (a) an isolated collection of particlesin semi-infinite shear flow bounded by a plane wall; (b) a periodic collectionof particles in semi-infinite shear flow bounded by a plane wall; (c) a periodiccollection of particles in a channel bounded by two parallel plane walls; and(d) a doubly-periodic collection of particles in streaming (uniform) flow.

In the case of uniform (streaming) flow past a doubly periodic lattice of parti-cles, as illustrated in Figure prtcl 2d.1(d),

u1

x = U; u1

y = 0; (5)

where U is a constant velocity. The associated pressure field is uniform.

Page 393: Boundary Element Methods

378 A Practical Guide to Boundary-Element Methods

The velocity is required to satisfy the no-slip and no-penetration boundary condi-tion u = 0 on the surfaces of the particles and on the boundaries of the flow.Consequently, the disturbance velocity is required to satisfy the boundary conditionuD = u1 on the surfaces of the particles and on the boundaries of the flow.

Using the boundary-integral formulation and enforcing the boundary conditions, weexpress the velocity at a point in the flow as

uj(x0) = u1

j (x0)1

4

NpXq=1

ZCq

Gij(x; x0) fD

i (x) dl(x)

1

4

NpXq=1

ZCq

u1

i(x;x0) Tijk(x; x0) nk(x) dl(x); (6)

where Np is the number of particles, Cq is the contour of the qth particle, and n isthe unit normal vector pointing into the fluid.

Applying the reciprocal relationship for the incident flow over the area occupied byeach particle (e.g., [55]), we derive the alternative single-layer representation

uj(x0) = u1

j (x0) 1

4

NpXq=1

ZCq

Gij(x; x0) fi(x) dl(x): (7)

Taking the limit as the point x0 approaches the surface of the mth particle and re-quiring the boundary conditions, we obtain integral equations of the first kind for thedisturbance or total traction,

NpXq=1

ZCq

Gij(x; x0) fD

i(x) dl(x)

= 2 u1j(x0)

NpXq=1

ZPV

Cq

u1

i(x;x0) Tijk(x; x0) nk(x) dl(x); (8)

and

NpXq=1

ZCq

Gij(x; x0) fi(x) dl(x) = 4 u1j (x0); (9)

where PV on the right-hand side of (8) denotes the principal value of the double-layer integral.

Page 394: Boundary Element Methods

BEMLIB: stokes/prtcl 2d 379

UNIQUENESS OF SOLUTION OF THE INTEGRAL EQUATION:

Mass conservation for the flow due to a point force situated at the point x0 requiresthe integral identity Z

Cq

Gij(x; x0) ni(x) dl(x) = 0; (10)

for q = 1; : : : ; Np. This identity suggests that any solution of the integral equation(8) or (9) over the contour of each particle may be enhanced with an arbitrary mul-tiple of the unit normal vector. Thus, the integral equation has an infinite number ofsolutions parametrized by Np scalar constants.

A symmetry property allows us to switch the arguments of the Green’s function,provided that we also switch the order of the indices. Using this property, we recastidentity (10) into the formZ

Cq

Gij(x; x0) nj(x0) dl(x0) = 0; (11)

which suggests the solvability conditionZCq

Rj(x0) nj(x0) dl(x0) = 0; (12)

where Rj is the right-hand side of (8) or (9). Condition (12) is satisfied for anyincompressible incident flow.

Numerical method:

The contour of each particle is discretized into boundary elements with straight, cir-cular, or elliptical shapes. The components of the element traction and the incidentvelocity are approximated with constant functions over each boundary element. Ap-plying the integral equation (8) or (9) at the mid-point of each element, we obtain asystem of linear equations

A w = b; (13)

where A is the “master influence matrix” whose elements are defined in terms of in-tegrals of the Green’s function over the boundary elements, and the unknown vectorw contains the x and y components of the traction over the elements. The size of thesystem (13) is equal to twice the total number of boundary elements over all particlecontours.

UNIQUENESS OF SOLUTION:

The discrete form of the integral identity (11) is

A(q) e(q) = 0; (14)

Page 395: Boundary Element Methods

380 A Practical Guide to Boundary-Element Methods

where:

e(q) is the discrete right eigenvector for the q particle consisting of the x and y

components of the normal vector at the mid-points of the boundary elementsaround the particle contour.

The matrix A(q) is the diagonal block of the master linear matrix correspond-ing to the qth particle. All entries of the matrix A(q) are defined in terms ofintegrals of the single-layer potential over the boundary elements of the qthparticle.

When the particle contour is polygonal, the normal vector is constant over each el-ement and identity (14) is satisfied up to the numerical error due to the numericalintegration. More generally, (14) is satisfied up to the discretization error. In ei-ther case, the linear system (13) is precisely or nearly singular, and normalization orpreconditioning is required.

SINGULAR PRECONDITIONING AND REGULARIZATION:

The discrete form of the solvability condition (12) is

v(q) b = 0; (15)

where v(q) is the discrete left eigenvector of the influence matrix for the qth particle,containing the x and y components of the normal vector at the mid-points of theboundary elements around the particle contour multiplied by the element arc length.In further discussion, we shall tacitly assume that v(q) has been normalized so thatits Euclidean norm is equal to unity.

When the particle contour is polygonal and the vector b is constant, corresponding,for example, to a uniform incident flow, the left eigenvector v(q) satisfies the discreteform of the solvability condition (15) to machine precision. More generally, (15) issatisfied up to the discretization error.

Using the integral identity (10), we derive the discrete identity

v(q) A(q) = 0: (16)

When the particle contour is polygonal, the normal vector is constant over each ele-ment and identity (16) is satisfied up to the numerical error incurred by the numericalintegration. More generally, (16) is satisfied up to the discretization error.

One way to regularize the master linear system (13) is by applying “singular precon-ditioning”. This is implemented by premultiplying both sides with a preconditioningmatrix P defined as

P (IV(1)V

(1)T ) (IV(2)V

(2)T ) : : : (IV(Np)

V(Np)

T

); (17)

Page 396: Boundary Element Methods

BEMLIB: stokes/prtcl 2d 381

whereV(q) is the extended discrete left eigenvector for the qth particle. All elementsof this vector are equal to zero, except for the elements in the boundary element blockfor the qth particle that are equal to the corresponding elements of the discrete lefteigenvector v(q).

After singular preconditioning, system (13) is transformed to

AP w = b

P; (18)

where

AP P A; b

P P b: (19)

Note that V(q) is an exact left eigenvector of the singular matrix AP correspondingto the vanishing eigenvalue, and the solvability condition

V(q) bP = 0 (20)

is satisfied to machine accuracy. Thus, singular preconditioning guarantees the exactsatisfaction of the discrete solvability condition (15) while representing the mildestpossible modification of the discretized governing equations.

After singular preconditioning, the master linear system is regularized by discardingone linear equation corresponding to an arbitrary collocation point over each particle,and replacing it with the discrete form of the integral constraint

ZCq

f n dl = cq; (21)

for q = 1; : : : ; Np, where cq is an arbitrary constant. Regularization removes the Np

degrees of freedom in the solution of the integral equation and allows us to solve aperfectly well-posed problem.

Singular preconditioning is activated by setting the input flag: Iprec = 1. Regular-ization is activated by setting the input flag: Ireg = 1.

ITERATIVE SOLUTION OF THE MASTER LINEAR SYSTEM:

The master linear system is solved by a physically motivated iterative method basedon the equation

D w(k+1) = N w(k) + b; (22)

where the matrix D consists of diagonal blocks corresponding to particle clusters,and N AD. The iterations are carried out by computing the inverses of thediagonal blocks comprising the matrix D, and then explicitly solving for x(k+1) bycarrying out matrix multiplications.

Page 397: Boundary Element Methods

382 A Practical Guide to Boundary-Element Methods

Figure prtcl 2d.2 Streamline pattern of doubly periodic Stokes flow past a collec-tion of two-dimensional particles.

When the particles are well separated, and each block contains one particle, only afew iterations are necessary to obtain the solution with accuracy comparable to theround off error. When particle clusters are present, achieving rapid convergence oreven convergence at all requires that the diagonal blocks contain particle clusters.

STREAMLINES:

Streamlines are drawn by integrating the differential equations governing the motionof point particles in the fluid using the second- or fourth-order Runge-Kutta method.The velocity is computed using the discrete version of the single-layer integral rep-resentation (6). A streamline pattern of doubly periodic flow is illustrated in figureprtcl 2d.2.

Main program: flow 2d

The main program solves the integral equation (8) or (9) for the distribution of thedisturbance or traction over the particle surfaces, and computes streamlines originat-ing from specified points in the flow.

Page 398: Boundary Element Methods

BEMLIB: stokes/prtcl 2d 383

Files to be linked:

1. exp intComputation of the exponential integral required by sgf 2d 2p.

2. gauss legBase points and weights for the Gauss-Legendre quadrature.

3. gel invComputation of the inverse of a matrix by Gauss elimination.

4. prtcl 2d auxSubroutines to precondition and reduce the master linear system.

5. prtcl 2d geoDiscretization of particle contours.

6. prtcl 2d sdlpEvaluation of the single- and double-layer potential over the boundary ele-ments.

7. prtcl 2d strmlComputes a streamline originating from a specified point in the flow.

8. prtcl 2d sysGenerates and solves by iteration the master linear system.

9. prtcl 2d velEvaluates the velocity at a point in the flow.

10. sgf 2d 1p wPeriodic Green’s function of Stokes flow in a semi-infinite domain boundedby a plane wall.

11. sgf 2d 1p wwPeriodic Green’s function of Stokes flow for an infinite strip bounded by twoparallel walls.

12. sgf 2d 2pDoubly periodic Green’s function of Stokes flow.

13. sgf 2d fsGreen’s function of Stokes flow in free space.

14. sgf 2d wGreen’s function of Stokes flow in a semi-infinite domain bounded by a planewall.

Page 399: Boundary Element Methods

384 A Practical Guide to Boundary-Element Methods

Input files:

1. prtcl 2d.datProblem selection and specification of input parameters.

2. prtcl 2d geo.datParticle position, orientation, and geometry. Particle distributions are gener-ated by program prtcl 2d gen included in this directory.

3. prtcl 2d inp.datCollocation points and boundary traction (read to generate streamlines withoutsolving the integral equation).

4. strml.datStarting points for drawing streamlines.

Output files:

1. prtcl 2d.xyCollocation points and traction at boundary elements.

2. prtcl 2d.errorTransient error in the iterative solution of the master linear system.

3. prtcl 2d.strmlRecording of boundary and particle contours and streamlines.

Page 400: Boundary Element Methods

385

Directory: stokes/prtcl ax

This directory contains a code that computes axisymmetric flow past, or due to theaxial motion of, a collection of particles with arbitrary shapes for several flow con-figurations, including the following:

Uniform axial flow past a collection of stationary particles, and flow due toparticle translation along the x axis, as illustrated in Figure prtcl ax.1(a).

Flow due to particle translation normal to an infinite plane wall, as illustratedin Figure prtcl ax.1(b).

Poiseuille flow past a periodic collection of stationary particles, and flow dueto particle translation along the axis of a circular tube, as illustrated in Figureprtcl ax.1(c).

MATHEMATICAL FORMULATION:

Consider the cylindrical polar coordinates (x; ; ') defined in Figure prtcl ax.1. Webegin by decomposing the fluid velocity u into an incident component denoted byu1, and a disturbance component due to the presence of the particles denoted byuD , such that

u = u1 + u

D: (1)

If the flow is due to the motion of the particles, the incident component vanishes. Inthe case of pressure-driven Poiseuille flow illustrated in Figure prt ax.1.(c), the radialand meridional components of the incident velocity vanish, and the axial componentis given by

u1

x = dp

dx

1

4(2 a

2); (2)

where a is the tube radius, is the fluid viscosity, and dp=dx is the constant stream-wise pressure gradient.

The velocity is required to satisfy the no-slip and no-penetration boundary conditionson the surfaces of the particles as well as on the boundaries of the flow, stating thatthe fluid velocity is equal to the boundary velocity.

Using the boundary-integral formulation for axisymmetric Stokes flow, and imple-menting the no-slip and no-penetration boundary conditions, we express the velocity

Page 401: Boundary Element Methods

386 A Practical Guide to Boundary-Element Methods

y

x

nn

x

y

z

nn

x

y

nn

(a)

(b)

(c)

Toroidal particleϕ

Figure prtcl ax.1 Schematic illustration of axisymmetric flow past, or due to theaxial motion of, a collection of rigid particles.

at a point x0 in the flow in the integral form

u(x0) = u1

(x0) 1

8

NpXq=1

ZCq

G(x0; x) f(x) dl(x); (3)

whereNp is the number particles, Cq is the contour of the qth particle in a meridionalplane, n is the unit normal vector pointing into the fluid, and Greek indices run overx and .

Page 402: Boundary Element Methods

BEMLIB: stokes/prtcl ax 387

Figure prtcl ax.2 Streamline pattern of axisymmetric Stokes flow past a compactand two toroidal particles.

Taking the limit as the point x0 approaches the surface of themth particle and enforc-ing the boundary conditions, we reduce the integral representation (3) to an integralequation of the first kind for the distribution of the particle traction.

The integral equation has an infinite number of solutions. Any particular solutionover each particle surface may be enhanced with an arbitrary multiple of the normalvector, as discussed in directory prtcl 2d.

NUMERICAL METHOD:

The numerical method is similar to that discussed in directory prtcl 2d for the anal-ogous problem of two-dimensional flow, involving singular preconditioning, reduc-tion, and iterative solution of the master linear system.

Main program: flow ax

The main program solves the integral equation (3) for the distribution of the distur-bance traction over the particle contours, and computes streamlines originating fromspecified points in the flow. A streamline pattern is illustrated in figure prtcl ax.2.

Page 403: Boundary Element Methods

388 A Practical Guide to Boundary-Element Methods

Files to be linked:

1. bess I01K01Evaluates the modified Bessel functions required by sgf ax 1p ct.

2. ell intEvaluates complete elliptic integrals of the first and second kind.

3. gauss legBase points and weights for the Gauss-Legendre quadrature.

4. gel invComputation of the inverse of a matrix by Gauss elimination.

5. prtcl ax auxSubroutines to precondition and reduce the master linear system.

6. prtcl ax geoDiscretization of particle contours.

7. prtcl ax slpEvaluation of the single-layer potential over the boundary elements.

8. prtcl ax strmlComputes a streamline originating from a specified point in the flow.

9. prtcl ax sysGenerates and solves by iteration the master linear system.

10. prtcl ax velEvaluates the velocity at a point in the flow.

11. sgf ax fsAxisymmetric Green’s function for flow in free space.

12. sgf ax wAxisymmetric Green’s function for flow bounded by a plane wall.

13. sgf ax 1p ctAxisymmetric Green’s function for periodic flow inside a circular tube.

Input files:

1. prtcl ax.datProblem selection and specification of input parameters.

2. prtcl ax geo.datParticle position and geometry.

Page 404: Boundary Element Methods

BEMLIB: stokes/prtcl ax 389

3. prtcl ax inp.datCollocation points and boundary traction (read to generate streamlines withoutsolving the integral equation).

4. strml.datStarting points for drawing streamlines.

Output files:

1. prtcl ax.xyCollocation points and traction at boundary elements.

2. prtcl ax.errorTransient error in the iterative solution of the master linear system.

3. prtcl ax.strmlRecording of boundary and particle contours and streamlines.

Page 405: Boundary Element Methods

390 A Practical Guide to Boundary-Element Methods

Directory: stokes/prtcl 3d

This directory contains a code that computes flow past, or due to the motion of, asolitary particle or periodic collection of three-dimensional particles with arbitraryshapes for a variety of configurations, including the following:

Flow past, or due to the motion of, a solitary particle in an infinite domain offlow, as illustrated in Figure prtcl 3d.1(a).

Flow past, or due to the motion of, a solitary particle in a semi-infinite domainof flow bounded by a plane wall, as illustrated in Figure prtcl 3d.1(b).

Streaming (uniform) flow past a triply periodic array of particles representingan ordered porous medium, as illustrated in Figure prtcl 3d.1(c). The period-icity of the lattice is determined by the three base vectors a1, a2, and a3.

Streaming flow normal to a doubly periodic array of particles arranged in aplane, representing a screen, as illustrated in Figure prtcl 3d.1(d). The period-icity of the array is determined by the base vectors a1 and a2.

Simple shear flow past a doubly periodic array of particles arranged in a plane,representing a sieve [61], as illustrated in Figure prtcl 3d.1(d). The periodicityof the array is determined by the base vectors a1 and a2.

MATHEMATICAL FORMULATION:

The fluid velocity u is decomposed into an incident component, denoted by u1, anda disturbance component due to the presence or motion of the particles, denoted byuD , such that

u = u1 + u

D: (1)

When the flow is due to the motion of the particles, the incident velocity vanishes.

Using the boundary-integral formulation and enforcing the boundary conditions, weexpress the velocity at a point x0 in the flow in terms of a single-layer potential,

uj(x0) = u1

j(x0) 1

8

ZD

Gij(x; x0) fi(x) dS(x); (2)

where is the fluid viscosity, D is the particle surface, n is the unit normal vectorpointing into the fluid, and Gij is the velocity Green’s function corresponding to theparticular flow under consideration.

Page 406: Boundary Element Methods

BEMLIB: stokes/prtcl 3d 391

(a)

y

z

(b)x

nn

x

y

z

aa

a

12

3

(c)

Ux

y

z(d)

a 1

a 2

Figure prtcl 2d.1 Schematic illustration of flow past, or due to the motion of, (a) asolitary particle in an infinite domain of flow, (b) a solitary particle in a semi-infinite domain of flow bounded by a plane wall, (c) a particle that belongs toa triply periodic array; (d) uniform flow normal to, or shear flow past, a doublyperiodic array of particles representing a screen.

Taking the limit as the point x0 approaches the particle surfac, and requiring theboundary conditions, we obtain an integral equation of the first kind for the boundarytraction.

In the case of shear flow past a planar lattice illustrated in Figure prtcl 3d.1(d), thex and y components of the right-hand side of (2) contain two a priori unknown driftvelocities U1

xand U

1

y. Requiring that the shear rate vanish far below the array

and performing a force balance over one period, we findZD

fx dS = x A;

ZD

fy dS = y A; (3)

where A is the area of the unit lattice cell, and x, y are the shear rates far above

Page 407: Boundary Element Methods

392 A Practical Guide to Boundary-Element Methods

the array in the directions of the x and y axes [61]. The equations in (3) provide uswith conditions necessary for the computation of U1

xand U1

y.

UNIQUENESS OF SOLUTION OF THE INTEGRAL EQUATION:

Mass conservation for the flow due to a point force situated at the point x0 requiresthe integral identity Z

D

Gij(x; x0) ni(x) dS(x) = 0; (4)

which suggests that any solution of the integral equation (2) may be enhanced withan arbitrary multiple of the unit normal vector. Thus, the integral equation has aninfinite number of solutions parametrized by an arbitrary scalar constant.

A symmetry property allows us to switch the arguments of the Green’s function,provided that we also switch the order of the indices. Using this property, we recastidentity (4) into the formZ

D

Gij(x; x0) nj(x0) dS(x0) = 0; (5)

which suggests the solvability conditionZCq

u1

j(x0) nj(x0) dl(x0) = 0: (6)

Condition (6) is satisfied for any incompressible incident flow.

NUMERICAL METHOD:

The particle surface is discretized into a collection of six-node curved triangles aris-ing from the successive subdivisions of an octahedron. Approximating the compo-nents of the traction with constant functions over each element, and applying theintegral equation (2) at collocation points located at the centroid of each element, weobtain the linear system

A w = b; (7)

where A is an influence matrix whose elements are defined in terms of integrals ofthe Green’s function over the boundary elements, and the unknown vectorw containsthe x, y, and z components of the traction over the boundary elements. The size ofsystem (7) is equal to three times the number of boundary elements.

In the case of shear flow past a two-dimensional particle array, as illustrated in Figureprtcl 3d.1(d), the scalar drift velocities U1x and U

1

y are appended to the vectorw, and the linear system is augmented with the two scalar constraints expressed by(3).

Page 408: Boundary Element Methods

BEMLIB: stokes/prtcl 3d 393

UNIQUENESS OF SOLUTION:

The discrete form of the integral identity (4) is

A e = 0; (8)

where e is the discrete right eigenvector consisting of the x, y, and z components ofthe normal vector at the mid-points of the boundary elements.

When the particle contour is polyhedral, the normal vector is constant over each el-ement and identity (8) is satisfied up to the numerical error due to the numericalintegration. More generally, (8) is satisfied up to the discretization error. In eithercase, the linear system (7) is precisely or nearly singular, and normalization or pre-conditioning is required.

SINGULAR PRECONDITIONING AND REGULARIZATION:

The discrete form of the solvability condition (6) is

v b = 0; (9)

where v is the discrete left eigenvector containing the x, y, and z components ofthe normal vector at the mid-points of the boundary elements multiplied by the el-ement surface areas. In further discussion, we shall tacitly assume that v has beennormalized so that its Euclidean norm is equal to unity.

When the particle contour is polyhedral and the vector b is constant, corresponding,for example, to a uniform incident flow, the left eigenvector v satisfies the discreteform of the solvability condition (9) to machine precision. More generally, (9) issatisfied up to the discretization error.

Using the integral identity (5), we derive the discrete identity

v A = 0; (10)

When the particle contour is polyhedral, the normal vector is constant over each ele-ment and identity (10) is satisfied up to the numerical error incurred by the numericalintegration. More generally, (10) is satisfied up to the discretization error.

One way to regularize the linear system (7) is by applying “singular precondition-ing”, implemented by premultiplying both sides by the preconditioning matrix

P I vv: (11)

After singular preconditioning, system (7) is transformed into

AP w = b

P; (12)

Page 409: Boundary Element Methods

394 A Practical Guide to Boundary-Element Methods

where

AP P A; b

P P b: (13)

Note that v is an exact left eigenvector of the singular matrix AP corresponding tothe vanishing eigenvalue, and the solvability condition

V(q) bP = 0 (14)

is satisfied to machine accuracy. Thus, singular preconditioning guarantees the exactsatisfaction of the discrete solvability condition (9) while representing the mildestpossible modification of the discretized governing equations.

After singular preconditioning, the master linear system is regularized by discardingone linear equation corresponding to an arbitrary collocation point over the particle,and replacing it with the discrete form of the integral constraint

ZD

f n dS = 1: (15)

Regularization removes the one-parameter degree of freedom in the solution of theintegral equation, and allows us to solve a well-posed problem.

Singular preconditioning is activated by setting the input flag: Iprec = 1. Regular-ization is activated by setting the input flag: Ireg = 1.

Main program: flow 2d

The main program solves an integral equation of the first kind for the distribution ofthe traction over the particle surface, and computes various quantities relevant to theselected type of flow.

In the case of flow due to the motion of a particle, the program computes the grandresistance tensor [55].

Files to be linked:

1. cond numCondition number of a matrix.

2. gauss legBase points and weights for the Gauss-Legendre quadrature.

3. gauss trglBase points and weights for integrating over a triangle.

4. gel mrhsGauss elimination of a linear system with multiple right-hand sides.

Page 410: Boundary Element Methods

BEMLIB: stokes/prtcl 3d 395

5. gel powerGauss elimination required by the power method for inverse iterations.

6. prtcl 3d geoVarious assisting subroutines concerning geometry.

7. prtcl 3d precPreconditioning of the linear system resulting from the boundary-element method.

8. powerPower method for computing eigenvalues, required by cond num.

9. prtcl 3d slpComputes the single-layer potential over the boundary elements.

10. sgf 3d fsGreen’s function of Stokes flow in free space.

11. sgf 3d wGreen’s function for semi-infinite flow bounded by a plane wall.

12. sgf 3d 3pGreen’s function for triply periodic flow.

13. sgf 3d 2pGreen’s function for doubly periodic flow.

14. trgl octaTriangulation of a sphere based on the successive subdivisions of an octahe-dron.

Input file:

1. prtcl 3d.datProblem selection and specification of input parameters.

Output file:

1. prtcl 3d.outVarious recordings.

Page 411: Boundary Element Methods
Page 412: Boundary Element Methods

Appendix A

Mathematical supplement

A.1 INDEX NOTATION

In index notation, a vector u in the N th dimensional space is denoted as ui, wherei = 1; : : : ; N , a two-dimensional matrix A is denoted as Aij , where the indices runover appropriate ranges, and a three-dimensional matrixT is denoted as Tijk ; similarnotation is used for higher-dimensional matrices.

Einstein’s repeated-index summation convention states that, if a subscript appearstwice in an expression involving products, then summation over that subscript isimplied in its range. Under this convention,

ui vi u1 v1 + u2 v2 + : : :+ uN vN ;

(A.1.1)

Aii A11 +A22 + : : :+ANN ;

where N is the maximum value of the index i. The first expression defines the innerproduct of the pair of vectors u and v.

A.2 KRONECKER’S DELTA

Kronecker’s delta Æij represents the identity or unit matrix: Æij = 1 if i = j, andÆij = 0 if i 6= j. Using this definition, we find

ui Æij = uj ; Aij Æjk = Aik; Æij Ajk Ækl = Ail;

(A.2.1)

Æij Æjk Ækl = Æil; Æii = N;

where N is the maximum value of the index i.

If xi is a set of N independent variables, then

@xi

@xj= Æij ;

@xi

@xi= N: (A.2.2)

397

Page 413: Boundary Element Methods

398 A Practical Guide to Boundary-Element Methods

A.3 ALTERNATING TENSOR

The alternating tensor ijk , where all three indices range over 1, 2, and 3, is definedsuch that ijk = 0 if any two indices have the same value, ijk = 1 if the indicesare arranged in one of the cyclic orders 123, 312, or 231, and ijk = 1 otherwise.Thus,

132 = 1; 122 = 0; ijj = 0;

ijk = jki = kij : (A.3.1)

Two useful properties of the alternating matrix are

ijk ijl = 2 Ækl;

(A.3.2)

ijk ilm = Æjl Ækm Æjm Ækl:

A.4 TWO- AND THREE-DIMENSIONAL VECTORS

The inner product of a pair of two- or three-dimensional vectors a and b is a scalardefined as s a b = ai bi. If the inner product vanishes, then the two vectorsare orthogonal. The inner product is equal to the product of the lengths of the twovectors and the cosine of the angle subtended between the vectors in their plane.

The outer product of a pair of two- or three-dimensional vectors a and b is a newvector c a b given by the determinant of a matrix,

c

24e1 e2 e3a1 a2 a3b1 b2 b3

35 ; (A.4.1)

where ei are unit vectors in the subscripted directions. If the outer product vanishes,then the two vectors are parallel. The magnitude of the outer product is equal to theproduct of the lengths of the vectors a and b, and the sine of the angle subtendedbetween these vectors in their plane. The outer product is oriented normal to theplane of a and b, and its direction is determined by the right-handed rule applied tothe ordered triplet a;b, and c.

The triple scalar product of the ordered triplet of vectors a, b, and c is the scalars (a b) c = (c a) b = (b c) a, which is equal to the determinant ofthe matrix 2

4a1 a2 a3b1 b2 b3c1 c2 c3

35 : (A.4.2)

Page 414: Boundary Element Methods

Appendix A: Mathematical supplement 399

A.5 DEL OR NABLA OPERATOR

The Cartesian components of the del or nabla operator r are the partial derivativeswith respect to the corresponding coordinates,

r

@

@x;@

@y;@

@z

: (A.5.1)

In two dimensions, only the x and y derivatives appear.

A.6 GRADIENT AND DIVERGENCE

If f is a scalar function of position x, then its gradient rf is a vector defined as

rf = ex@f

@x+ ey

@f

@y+ ez

@f

@z; (A.6.1)

where ei are unit vectors in the directions of the subscripted axes.

The Laplacian of the scalar function f is a scalar defined as

r (rf) r2f =

@2f

@x2+

@2f

@y2+

@2f

@z2: (A.6.2)

The Laplacian is equal to the divergence of the gradient. The divergence of a vectorfunction of position F = (Fx; Fy; Fz) is a scalar defined as

r F =@Fi

@xi=

@Fx

@x+

@Fy

@y+

@Fz

@z: (A.6.3)

If r F vanishes at every point, then the vector field F is called solenoidal.

The gradient of the vector field F, denoted by U rF, is a two-dimensional matrixwith elements

Uij =@Fj

@xi: (A.6.4)

The divergence of F is equal to the trace of U, which is equal to the sum of thediagonal elements.

The curl of the vector field F, denoted as r F, is another vector field computedaccording to the usual rules of the outer vector product, treating the del operator as aregular vector, yielding

r F = ex

@Fz

@y

@Fy

@z

+ ey

@Fx

@z

@Fz

@x

+ ez

@Fy

@x

@Fx

@y

:

(A.6.5)

Page 415: Boundary Element Methods

400 A Practical Guide to Boundary-Element Methods

A.7 VECTOR IDENTITIES

If f is a scalar function and F, G are two vector functions, we can show by workingin index notation that

r (f F) = f r F + F rf; (A.7.1)

r (F G) = F rG + G rF + F (rG) + G (r F) ; (A.7.2)

r (FG) = G r F F r G; (A.7.3)

r (FG) = F r G Gr F + G rF F rG; (A.7.4)

r (rf) = 0; (A.7.5)

r (r F) = 0; (A.7.6)

r (r F) = r (r F) r2F: (A.7.7)

A.8 DIVERGENCE THEOREM IN SPACE

Let Vc be an arbitrary control volume that is bounded by the closed surface D, andn be the unit vector that is normal to D pointing outward.

The Gauss divergence theorem states that the volume integral of the divergence ofany differentiable vector function F = (Fx; Fy ; Fz) over Vc is equal to the flow rateof F across D,

ZVc

r F dV =

ZD

F n dS: (A.8.1)

Making the three sequential choices F = (f; 0; 0), F = (0; f; 0), and F =

(0; 0; f), where f is a differentiable scalar function, we obtain the vector form ofthe divergence theorem

ZVc

rf dV =

ZD

f n dS: (A.8.2)

The particular choices f = x, f = y, or f = z yield the volume of Vc in terms ofa surface integral of the x, y, or z component of the normal vector.

Page 416: Boundary Element Methods

Appendix A: Mathematical supplement 401

Setting F = a G, where a is a constant vector and G is a differentiable function,and then discarding the arbitrary constant a, we obtain the new identity

ZVc

rG dV =

ZD

n G dS: (A.8.3)

A.9 DIVERGENCE THEOREM IN THE PLANE

Let Ac be an arbitrary control area in the xy plane that is bounded by the closedcontour C, and n be the unit vector that is normal to C pointing outward.

The Gauss divergence theorem states that the areal integral of the divergence of anytwo-dimensional differentiable vector function F = (Fx; Fy) over Ac is equal to theflow rate of F across C, Z

Ac

r F dA =

ZC

F n dl; (A.9.1)

where l is the arc length along C.

Making the sequential choices F = (f; 0) and F = (0; f), where f is a differen-tiable scalar function, we obtain the vector form of the divergence theorem

ZAc

rf dA =

ZC

f n dl: (A.9.2)

The particular choices f = x or f = y yield the area of Ac in terms of a lineintegral of the x or y component of the normal vector.

A.10 STOKES’ THEOREM

Let C be an arbitrary closed loop with unit tangent vector t, D be an arbitrary surfacebounded by C, and n be the unit vector that is normal to D and is oriented accordingto the right-handed rule with respect to t and with reference to a designated side ofD. As we look at the designated side of D, the normal vector points towards us andthe tangent vector describes a counterclockwise path.

Stokes’ theorem states that the circulation of a differentiable vector function F alongC is equal to the flow rate of the curl of F across D,

ZC

F t dl =

ZD

(r F) n dS; (A.10.1)

where l is the arc length along C.

Setting F = a G, where a is a constant vector and G is a differentiable function,expanding out the integrand on the right-hand side of (A.10.1), and then discarding

Page 417: Boundary Element Methods

402 A Practical Guide to Boundary-Element Methods

the arbitrary constant a, we obtain the new identityZC

G t dl =

ZD

[n r G (rG) n] dS: (A.10.2)

Page 418: Boundary Element Methods

Appendix B

Gauss elimination and linear solvers

Consider a system of N linear algebraic equations for the N unknown scalar vari-ables x1; x2; : : : ; xN ,

A1;1 x1 +A1;2 x2 + : : :+A1;N1 xN1 +A1;N xN = b1;

A2;1 x1 +A2;2 x2 + : : :+A2;N1 xN1 +A2;N xN = b2;

: : : ; (B.1)

AN;1 x1 +AN;2 x2 + : : :+AN;N1xN1 +AN;N xN = bN ;

where Ai;j , i = 1; 2; : : : ; N and j = 1; 2; : : : ; N , are given coefficients, and bi aregiven constants. In matrix notation, the system (B.1) takes the compact form

A x = b; (B.2)

where A is the N N coefficient matrix

A =

266664

A1;1 A1;2 : : : A1;N1 A1;N

A2;1 A2;2 : : : A2;N1 A2;N

: : :

AN1;1 AN1;2 : : : AN1;N1 AN1;N

AN;1 AN;2 : : : AN;N1 AN;N

377775 ; (B.3)

and b is the N -dimensional vector

b =

266664

b1b2: : :

bN1

bN

377775 : (B.4)

The most general way of solving system (B.2) is by the method of Gauss elimination.The idea is to solve the first equation in (B.1) for the first unknown x1, and use theexpression for x1 thus obtained to eliminate x1 from all subsequent equations. Wethen retain the first equation as is, and replace all subsequent equations with theirdescendants that do not contain x1.

At the second stage, we solve the second equation for the second unknown x2, anduse the expression for x2 thus obtained to eliminate x2 from all subsequent equations.

403

Page 419: Boundary Element Methods

404 A Practical Guide to Boundary-Element Methods

We then retain the first and second equations, and replace all subsequent equationswith their descendants, which do not contain x1 or x2. Continuing in this manner,we arrive at the last equation, which contains only the last unknown xN .

Having completed the elimination, we compute the unknowns by the method of back-ward substitution. First, we solve the last equation for xN , which thus becomes aknown. Second, we solve the penultimate equation for xN1, which also becomes aknown. Continuing in the backward direction, we scan the reduced system until wehave evaluated all unknowns.

Immediately before the mth equation has been solved for the mth unknown, wherem = 1; : : : ; N 1, the linear system takes the form

26666666664

A(m)1;1 A

(m)1;2 : : : : : : : : : A

(m)1;N

0 A(m)2;2 : : : : : : : : : A

(m)2;N

0 0 : : : : : : : : : : : :

0 0 A(m)m1;m1 A

(m)m1;m : : : A

(m)m1;N

0 : : : 0 A(m)m;m : : : A

(m)m;N

0 : : : 0 : : : : : : : : :

0 : : : 0 A(m)N;m

: : : A(m)N;N

37777777775

2666666664

x1

x2

x3

: : :

: : :

xN1

xN

3777777775=

26666666664

b(m)1

b(m)2

b(m)3

: : :

: : :

b(m)N1

b(m)N

37777777775

; (B.5)

where A(m)i;j are intermediate coefficients, and b

(m)i are intermediate right-hand

sides. The first equation of (B.5) is identical to the first equation of (B.1) for anyvalue of m; subsequent equations are different, except at the first step correspondingto m = 1.

A difficulty arises when the diagonal element A(m)m;m is nearly or precisely equal

to zero, for then we may no longer solve the mth equation for xm, as required.The failure of the method, however, does not imply that the system does not have asolution. To circumvent this difficulty, we simply rearrange the equations or relabelthe unknowns so as to bring the mth unknown to the mth equation, using the methodof pivoting. If there is no way we can make this happen, then the matrixA is singular,and the linear system has either no solution or an infinite number of solutions.

In the method of row pivoting, potential difficulties are bypassed by switching themth equation in the system (B.5) with the subsequent kth equation, where k > m.The value k is chosen so that jA(m)

k;mj is the maximum value of the elements in the

mth column below the diagonal, A(m)i;m , for i m. If A(m)

i;m = 0 for all i m, thenthe linear system does not have a unique solution, and the matrix A is singular.

In practice, the size of the system (B.1) can be on the order of 104 104 or evenhigher. For such large systems, the method of Gauss elimination requires a pro-hibitive amount of computational time. The practical need for solving systems oflarge size has motivated the development of a host of alternative numerical methodsfor general or specific applications (e.g., [60]).

Page 420: Boundary Element Methods

Appendix B: Gauss elimination and alternatives 405

A class of iterative methods search for the solution vector x by making steps in theN -dimensional space toward carefully chosen or even optimal directions. Subdirec-tory 03 lin eq of directory num meth of BEMLIB includes programs that solvelinear systems with symmetric coefficient matrices by the method of conjugate gra-dients, and linear systems with non-symmetric coefficient matrices using the methodof biconjugate gradients (e.g., [60]).

The generalized minimal residual method (GMRES) [64] has been used successfullyfor solving large linear systems arising from boundary element implementations in avariety of applications.

Page 421: Boundary Element Methods
Page 422: Boundary Element Methods

Appendix C

Elastostatics

The theory of elasticity is discussed in texts of solid mechanics and continuum me-chanics, including Love’s classical treatise [43]. In this appendix, we review thefundamental equations of steady-state linear elasticity required for developing theboundary integral formulation.

C.1 DISPLACEMENT, TRACTION, AND EQUILIBRIUM

An elastic medium initially at equilibrium deforms to a new configuration under theaction of forces acting over its volume or at the boundary. After deformation, amaterial point particle initially at X is displaced to the new position X+ v, wherev is the displacement vector.

Consider an infinitesimal surface in the medium that is perpendicular to the unitnormal vectorn in the deformed state. The force per unit area exerted on this surface,denoted by t, is called the traction. The traction vector depends on position x andorientation of the infinitesimal surface determined by the unit normal vector n. Tosignify this dependence, we write t(x;n).

Analysis shows that the traction depends linearly on the unit normal vector,

tj = ni ij ; (C.1.1)

where the matrix of proportionality coefficients ij is the Cauchy stress tensor. Sum-mation over the repeated index i with respect to the spatial coordinates x, y, and z isimplied on the right-hand side of (C.1.1).

A balance of forces requires that, at steady state, the Cauchy stress tensor satisfy theequilibrium equation

@ij

@xj+ bi = 0; (C.1.2)

where is the density, and summation over the repeated index j is implied on the left-hand side. The last term bi expresses the effect of a long-range body force actingon the material. In the case of the gravitational force field, b is the acceleration ofgravity.

407

Page 423: Boundary Element Methods

408 A Practical Guide to Boundary-Element Methods

In vector notation, the equilibrium equation (C.1.2) reads

r + b = 0: (C.1.3)

C.2 LINEAR ELASTICITY

The distribution of stresses in a deformed body depends on the displacement fieldand on the properties of the material. If the body behaves like a linearly elasticmedium, then the constitutive equation relating stress to deformation takes the form

ij = Æij@vk

@xk+

@vi

@xj+

@vj

@xi

; (C.2.1)

where , are the Lame constants. Summation over the repeated index k is impliedin the first term on the right-hand side of (C.2.1). In terms of the modulus of elasticityE and Poisson’s ratio , the Lame constants are given by

=E

2 (1 + ); =

E

(1 + )(1 2): (C.2.2)

Poisson’s ratio for homogeneous materials takes values in the range [1; 1=2]. If thematerial is incompressible, = 1=2.

Substituting the constitutive equation (C.2.1) into the equilibrium equation (C.1.3),we derive Navier’s equation

r2v + (+ )r+ b = 0; (C.2.3)

where

r v (C.2.4)

is the dilatation due to the deformation.

Using the relations in (C.2.2), we find + = E=[2(1+)(12)] = =(12),and derive the alternative form of Navier’s equation

r2v +

1 2 r+ b = 0: (C.2.5)

C.3 THE GALERKIN VECTOR

It is sometimes convenient to express the displacement field in terms of the Galerkinvector g defined by the relation

v 1

r

2g

1

2 (1 )r (r g)

: (C.3.1)

Page 424: Boundary Element Methods

Appendix C: Elastostatics 409

Substituting this expression into Navier’s equation (C.2.5), we find that the Galerkinvector satisfies the inhomogeneous biharmonic equation

r4g + b = 0; (C.3.2)

where r4 r2 r2 is the biharmonic operator in two or three dimensions.

C.4 BETTI’S RECIPROCAL RELATION

Consider two unrelated deformed states of a material with displacement fields v andv0 and corresponding stress fields by and 0. Straightforward analysis following

the discussion of Section 7.2 for Stokes flow yields the counterpart of Green’s secondidentity

v0j@ij

@xi vj

@0ij

@xi=

@

@xi

v0j ij vj

0

ij

: (C.4.1)

In the absence of a body force, b = 0, the equilibrium equation (C.1.3) requires thatthe left-hand side vanish, yielding Betti’s reciprocal relation

@

@xi

v0j ij vj

0

ij

= 0: (C.4.2)

C.5 GREEN’S FUNCTIONS

The Green’s functions of linear elasticity represent the displacement and stress fieldsinduced by a point load. By definition, these singular fields satisfy the forced equi-librium equation

r2v +

1 2 r+ c Æn(x x0)

= r + c Æn(x x0) = 0; (C.5.1)

where rv is the dilatation, c is an arbitrary constant vector, and Æn is the deltafunction in two or three dimensions, n = 2 or 3.

For convenience, we express the solution of (C.5.1) in the form

vi =1

8(1 )Gij(x;x0) cj ;

(C.5.2)

ik =1

8(1 )Tijk(x;x0) cj ;

Page 425: Boundary Element Methods

410 A Practical Guide to Boundary-Element Methods

in two dimensions (n = 2), and

vi =1

16(1 )Gij(x;x0) cj ;

(C.5.3)

ik =1

16(1 )Tijk(x;x0) cj ;

in three dimensions (n = 3).

Substituting these expressions into (C.5.1) and discarding the arbitrary constants cj ,we find

r2Gij(x;x0) +

1

1 2

@2Gkj(x;x0)

@xi@xk= 8 (1 ) Æij Æ2(x x0);

(C.5.4)@Tijk(x;x0)

@xk= 8 (1 ) Æij Æ2(x x0);

in two dimensions (n = 2), and

r2Gij(x;x0) +

1

1 2

@2Gkj(x;x0)

@xi@xk= 16 (1 ) Æij Æ3(x x0);

(C.5.5)@Tijk(x;x0)

@xk= 16 (1 ) Æij Æ3(x x0);

in three dimensions (n = 3).

C.6 FREE-SPACE GREEN’S FUNCTION IN TWO DIMENSIONS (KELVIN STATE)

The free-space Green’s function in two dimensions is given by

Gij(x x0) = Æij (3 4) ln r +xi xj

r2; (C.6.1)

where is the Poisson ratio, x x x0, and r = jxj.

The associated stress tensor is

Tijk(x x0) = 2 (1 2 )Æik xj Æij xk Ækj xi

r2 4

xixj xk

r4: (C.6.2)

When = 1=2, these Green’s functions reduce to the free-space velocity and stressGreen’s functions of two-dimensional Stokes flow.

Page 426: Boundary Element Methods

Appendix C: Elastostatics 411

C.7 FREE-SPACE GREEN’S FUNCTION IN THREE DIMENSIONS (KELVIN STATE)

The free-space Green’s function in three dimensions is given by

Gij(x x0) = (3 4 )Æij

r+

xi xj

r3; (C.7.1)

where is the Poisson ratio, x x x0, and r = jxj.

The associated stress tensor is

Tijk(x x0) = 2 (1 2 )Æik xj Æij xk Ækj xi

r3 6

xixj xk

r5: (C.7.2)

When = 1=2, these Green’s functions reduce to the free-space velocity and stressGreen’s functions of three-dimensional Stokes flow.

C.8 INTEGRAL REPRESENTATION IN TWO DIMENSIONS

(SOMIGLIANA’S IDENTITY)

In the absence of a body force, the boundary-integral representation of the displace-ment field in two dimensions takes the form

vj(x0) = 1

8(1 )

ZC

Gij(x;x0) ti(x) dl(x)

+1

8(1 )

ZC

vi(x) Tijk(x;x0) nk(x) dl(x); (C.8.1)

where C is the contour of a selected control area, the unit normal vector n pointsinto the control area, and the point x0 lies inside the control area. If the point x0 liesoutside the control area, the left-hand side of (C.8.1) is equal to zero.

The associated integral equation is

vj(x0) = 1

4(1 )

ZC

Gij(x;x0) ti(x) dl(x)

+1

4(1 )

Z PV

C

vi(x) Tijk(x;x0) nk(x) dl(x); (C.8.2)

where the point x0 lies on a locally smooth contour C, PV denotes the principal-value integral, and the unit normal vector n points into the control area enclosed bythe contour C.

Page 427: Boundary Element Methods

412 A Practical Guide to Boundary-Element Methods

C.9 INTEGRAL REPRESENTATION IN THREE DIMENSIONS

(SOMIGLIANA’S IDENTITY)

In the absence of a body force, the boundary-integral representation of the displace-ment field in three dimensions takes the form

vj(x0) = 1

16(1 )

ZD

Gij(x;x0) ti(x) dS(x)

+1

16(1 )

ZD

vi(x) Tijk(x x0) nk(x) dS(x); (C.9.1)

where D is the boundary of a selected control volume, the unit normal vector npoints into the control volume, and the point x0 lies inside the control volume. Ifthe point x0 lies outside the control volume, the left-hand side of (C.9.1) is equal tozero.

The associated integral equation is

vj(x0) = 1

8(1 )

ZD

Gij(x;x0) ti(x) dS(x)

+1

8(1 )

Z PV

D

vi(x) Tijk(x;x0) nk(x) dS(x); (C.9.2)

where the point x0 lies on a locally smooth surface D, PV denotes the principal-value integral, and the unit normal vector n points into the control volume enclosedby the surface D.

Page 428: Boundary Element Methods

413

References

[1] ABE, K. and SAKURABA, S., 1999, An hr-adaptive boundary element forwater free-surface problems, Eng. Anal. Bound. Elem., 23, 223-232.

[2] ABRAMOWITZ, M. and STEGUN, I. A., 1965, Handbook of MathematicalFunctions, Dover, New York.

[3] ATKINSON, K. E., 1990, A survey of boundary integral equation methods forthe numerical solution of Laplace’s equation in three dimensions, in NumericalSolution of Integral Equations, Goldberg, M. A., Editor, Plenum Press, NewYork.

[4] ATKINSON, K. E., 1997, The Numerical Solution of Integral Equations of theSecond Kind, Cambridge University Press.

[5] BEENAKKER, C. W. L., 1986, Ewald sums of the Rotne-Prager tensor, J.Chem. Phys., 85, 1581-1582.

[6] BEYER, W. H., 1986, Standard Mathematical Tables, 27th Edition, CRCPress, Boca Raton, FL.

[7] BLAKE, J. R., 1971, A note on the image system for a Stokeslet near a no-slipboundary, Proc. Camb. Phil. Soc., 70, 303-310.

[8] BLAKE, J. R. and CHWANG, A. T., 1974, Fundamental singularities of vis-cous flow, J. Eng. Math., 8, 23-29.

[9] BREBBIA, C. A., 1978, The Boundary Element Method for Engineers, PentechPress, London.

[10] BREBBIA, C. A. and WALKER, S., 1980, Boundary Element Techniques inEngineering, Newnes-Butterworths, London.

[11] CHEN, C. S., RASHED, Y. F., and GOLBERG, M. A., 1998, A mesh freemethod for linear diffusion equations, Num. Heat Transf., 33, 469-486.

[12] COWPER, G. R., 1973, Gaussian quadrature formulas for triangles, Int. J.Num. Meth. Eng., 7, 405-408.

[13] DAVEY, K. and HINDUJA, S., 1989, Analytical integration of linear three-dimensional triangular elements in BEM, Appl. Math. Model., 13, 450-461.

[14] DAVIES, B. and MARTIN, B., 1979, Numerical inversion of Laplace trans-form: a survey and comparison of methods, J. Comp. Phys., 33, 1-32.

[15] DUBINER, M., 1991, Spectral methods on triangles and other domains, J. Sci.Comp., 6, 345-390.

Page 429: Boundary Element Methods

414 A Practical Guide to Boundary-Element Methods

[16] DUNAVANT, D. A., 1985, High degree efficient symmetrical Gaussian rulesfor the triangle, Int. J. Num. Meth. Eng., 21, 1129-1148.

[17] FLOREZ, W. F. and POWER, H., 2001, Comparison between continuous anddiscontinuous boundary elements in the multidomain dual reciprocity methodfor the solution of the two-dimensional Navier-Stokes equations, Eng. Anal.Bound. Elem., 25, 57-69.

[18] GARABEDIAN, P. R., 1964, Partial Differential Equations, John Wiley &Sons, New York.

[19] GOLBERG, M. A., 1995, The numerical evaluation of particular solutions inthe BEM – a review, Bound. Elem. Comm., 6, 99-106.

[20] GOLBERG, M. A. and CHEN, C. S., 1994, The theory of radial basis functionsapplied to the BEM for inhomogeneous partial differential equations, Bound.Elem. Comm., 5, 57-61.

[21] GOLBERG, M. A. and CHEN, C. S., 2000, Preface to a special issue on thedual reciprocity method, Bound. Elem. Comm., 5, 5111-512.

[22] GOLBERG, M. A., CHEN, C. S., and BOWMAN, H., 1999, Some recent re-sults and proposals for the use of radial basis functions in the BEM. Eng. Anal.Bound. Elem. 23, 285-296.

[23] GRAY, L. J., 1998, Evaluation of singular and hypersingular Galerkin inte-grals: direct limits and symbolic computation, in Advances in Boundary El-ements, V. Sladek and J. Sladek, Editors, Computational Mechanics Publica-tions, Southampton.

[24] HANSEN, E. B., 1987, Stokes flow down a wall into an infinite pool, J. FluidMech., 178, 243-256.

[25] HANSEN E. B. and KELMANSON, M. A., 1994, An integral equation jus-tification of the boundary conditions of the driven-cavity problem, Comput.Fluids, 23, 225-240.

[26] HASIMOTO, H., 1959, On the periodic fundamental solutions of the Stokesequations and their application to viscous flow past a cubic array of spheres, J.Fluid Mech., 5, 317-328.

[27] HAUTMAN, J. and KLEIN, M. L., 1992, An Ewald summation method forplanar surfaces and interfaces, Molecular Phys., 75, 379-395.

[28] HIGDON, J. J. L., 1979, A hydrodynamic analysis of flagellar propulsion, J.Fluid Mech., 90, 685-711.

[29] INGBER, M. S. and MITRA, A. K., 1986, Grid optimization for the boundaryelement method, Int. J. Num. Meth. Fluids, 23, 2121-2136.

[30] INGBER, M. S. and MONDY, L. A., 1993, Direct second-kind boundary inte-gral formulation for Stokes flow problems, Comput. Mech., 11, 11-27.

Page 430: Boundary Element Methods

References 415

[31] JASWON, M. A., 1963, Integral equations methods in potential theory. I., Proc.Roy. Soc. A, 275, 23-32.

[32] KARNIADAKIS, G. E. and SHERWIN, S. J., 1999, Spectral/hp Element Meth-ods for CFD, Oxford University Press, New York.

[33] KELLOGG, O. D., 1929, Foundations of Potential Theory, Reprinted by Dover,New York (1954).

[34] KELMANSON, M. A., 1983, Modified integral equation solution of viscousflows near sharp corners, Comput. Fluids, 11, 307-324.

[35] KELMANSON, M. A., 1983, An integral equation method for the solution ofsingular Stokes flow problems, J. Comp. Phys., 51, 139-158.

[36] KELMANSON, M. A. and LONGSDALE, B., 1995, Annihilation of boundarysingularities via suitable Green’s functions, Comput. Math. Appl., 29, 1-7.

[37] KIM, S. and KARRILA, S. J., 1991, Microhydrodynamics: Principles andSelected Applications, Butterworth-Heinemann, Boston.

[38] KWAK, S. and POZRIKIDIS, C., 1998, Adaptive triangulation of evolving,closed or open surfaces by the advancing-front method, J. Comp. Phys., 145,61-88.

[39] LANCASTER, P. and SALKAUSKAS, K., 1986, Curve and Surface Fitting, AnIntroduction, Academic Press, San Diego.

[40] LESNIC, D., ELLIOTT, L., and INGHAM, D. B., 1994, Treatment of singulari-ties in exterior fluid domains with corners using the boundary-element method,Comput. Fluids, 23, 817-827.

[41] LIAPIS, S., 1994, A review of error estimation and adaptivity in the boundary-element method, Eng. Anal. Bound. Elem., 14, 315-323.

[42] LORENTZ, H. A., 1896, Eene algemeene stelling omtrent de beweging eenervloeistof met wrijving en eenige daaruit afgeleide gevolgen, Zit. K. Akad. W.Amsterdam, 5, 168-195; Ein allgemeiner satz, die bewegung einer reibendenflussigkeit betreffend, nebst einigen anwendungen desselben, Abhandlungenuber Theoretische Physik, Leipzig (1907), pp. 23-42; See also: A general the-orem concerning the motion of a viscous fluid and a few consequences derivedfrom it, H. A. Lorentz Collected Papers, Martinus Nijhoff Publishers, Haque(1937).

[43] LOVE, A. E. H., 1944, A Treatise on the Mathematical Theory of Elasticity,Reprinted by Dover, New York.

[44] MACKERLE, J., 1993, Mesh generation and refinement for FEM and BEM –a bibliography (1990 – 1993), Fin. Elem. Anal. Des., 15, 177-188.

[45] MORSE, P. M. and FESHBACH, H., 1953, Methods of Theoretical Physics,Part I., McGraw Hill, New York.

Page 431: Boundary Element Methods

416 A Practical Guide to Boundary-Element Methods

[46] MUCI-KUCHLER K. H. and MIRANDA-VALENZUELA J. C., 2001, Guest ed-itorial, Eng. Anal. Bound. Elem., 25, 477-487.

[47] NARDINI, D. and BREBBIA, C. A., 1982, A new approach to free vibrationanalysis using boundary elements, in Boundary Element Methods in Engineer-ing, Brebbia, C. A., Ed., Springer-Verlag, Berlin.

[48] NIGAM, S. D. and SRINIVASAN, V., 1975, No-slip images in a sphere, J.Math. Phys. Sci., 9, 389-398.

[49] OCCHIALINI, J. M., MULDOWNEY, G. P., and HIGDON, J. J. L., 1992,Boundary integral/spectral element approaches to the Navier-Stokes equations,Int. J. Num. Meth. Fluids, 15, 1361-1381.

[50] OSEEN, C. W., 1927, Hydrodynamik, Akademische Verlag, Leipzig.

[51] PARTRIDGE, P. W., BREBBIA, C.A., and WROBEL, L. C., 1992, The DualReciprocity Boundary Element Method, Computational Mechanics Publica-tions, Southampton.

[52] PINA, H. L. G., FERNANDES, J. L. M., and BREBBIA, C. A., 1981, Somenumerical integration formulae over triangles and squares with a 1=R singu-larity, Appl. Math. Model., 5, 209-211.

[53] POZRIKIDIS, C., 1990, The instability of a moving viscous drop, J. FluidMech., 210, 1-21.

[54] POZRIKIDIS, C., 1990, The deformation of a liquid drop moving normal to aplane wall. J. Fluid Mech., 215, 331-363.

[55] POZRIKIDIS, C., 1992, Boundary Integral and Singularity Methods for Lin-earized Viscous Flow, Cambridge University Press, Cambridge.

[56] POZRIKIDIS, C., 1992, The buoyancy-driven motion of a train of viscousdrops within a cylindrical tube, J. Fluid Mech., 237, 627-648.

[57] POZRIKIDIS, C., 1996, Computation of periodic Green’s functions of Stokesflow, J. Eng. Math., 30, 79-96.

[58] POZRIKIDIS, C., 1997, Unsteady heat or mass transport from a suspendedparticle at low Peclet number. J. Fluid Mech., 334, 111-133.

[59] POZRIKIDIS, C., 1997, Introduction to Theoretical and Computational FluidDynamics, Oxford University Press, New York.

[60] POZRIKIDIS, C., 1998, Numerical Computation in Science and Engineering,Oxford University Press, New York.

[61] POZRIKIDIS, C., 2001, Shear flow over a particular or fibrous plate, J. Eng.Math., 39, 3-24.

[62] POZRIKIDIS, C., 2001, Interfacial Dynamics for Stokes flow, J. Comp. Phys.,169, 250-301.

Page 432: Boundary Element Methods

References 417

[63] POZRIKIDIS, C., 2002, Boundary-element grid optimization for Stokes flowwith corner singularities, J. Fluids Eng., in press.

[64] SAAD, Y. and SCHULTZ, M. H., 1986, GMRES: a generalized minimal resid-ual algorithm for solving nonsymmetric linear systems, SIAM J. Sci. Stat. Com-put., 7, 856-869.

[65] STEHFEST, C., 1970, Numerical inversion of the Laplace transform, Commun.ACS, 13, 47-49; 624.

[66] SYMM, G. T., 1963, Integral equations methods in potential theory. II., Proc.Roy. Soc. A, 275, 33-46.

[67] TOOSE, E. M. et al., 1996, Axisymmetric non-Newtonian drops treated witha boundary-integral method, J. Eng. Math., 30, 131-150.

[68] VAN DE VORST, G. A. L., 1996, Integral formulation to simulate the viscoussintering of a two-dimensional lattice of periodic unit cells, J. Eng. Math., 30,97-118.

[69] XANTHIS, L. S., BERNAL, M. J. M., and ATKINSON, C., 1981, The treat-ment of singularities in the calculation of stress intensity factors using theboundary integral equation method, Comp. Meth. Appl. Mech. Eng., 26, 285-304.

[70] YAN, Y. and SLOAN, I. H., 1988, On integral equations of the first kind withlogarithmic kernels, J. Int. Eq. Appl., 1, 549-579.

[71] YON, S. and POZRIKIDIS, C., 1999, Deformation of a liquid drop adhering toa plane wall: Significance of the drop viscosity and the effect of an insolublesurfactant, Phys. Fluids, 11, 1297-1308.

[72] YOUNG, D. L., YANG, S. K., and ELDHO, T. I., 2000, Solution ofthe Navier-Stokes equations in velocity-vorticity form using a Eulerian-Lagrangian boundary element method, Int. J. Num. Meth. Fluids, 34, 627-650.

[73] ZHOU, H. and POZRIKIDIS, C., 1993, The flow of suspensions in channels:single files of drops, Phys. Fluids A, 5, 311-324.

Page 433: Boundary Element Methods

Index

BEMLIBdirectory contents, 193user guide, 191

acceleration parameter, 163advancing-front method, 113alternating tensor, 398assembly of the influence matrix, 84axisymmetric

harmonic functions, 106Stokes flow, 177

barycentric coordinates, 117Bernoulli’s equation, 281Betti’s reciprocal relation, 409biconjugate gradients, 405biharmonic equation

in three dimensions, 99in two dimensions, 33

body 2d, 270body ax, 276boundary element

at a corner, 83circular arc, 55, 67, 71constant, 64continuous, 83cubic splines, 56, 68, 71, 73curved triangle, 122discretization, 197flat triangle, 117non-singular, 65singular, 69straight, 53, 65, 70subdivision, 114uniform, 64

boundary-element methodfor Laplace’s equation

axisymmetric, 106

in three dimensions, 111in two dimensions, 53

for Stokes flow, 178Galerkin, 86

symmetric, 88global expansions, 89high order, 127

in two dimensions, 116boundary-integral equation

for Laplace’s equationat a corner, 31, 104axisymmetric, 107for the gradient, 42, 104in three dimensions, 102in two dimensions, 28

for Stokes flowaxisymmetric, 350for the pressure, 173, 176for the stress, 174, 177in three dimensions, 176in two dimensions, 173with an interface, 181

for the biharmonic equationin two dimensions, 36

in elasticity, 411, 412boundary-integral representation

completed, 48for Laplace’s equation

axisymmetric, 107for the gradient, 101in three dimensions, 100in two dimensions, 19with an interface, 23

for Stokes flowat a corner, 178axisymmetric, 350for the pressure, 173, 176

418

Page 434: Boundary Element Methods

Index 419

for the stress, 174, 177in three dimensions, 176in two dimensions, 172

for the biharmonic equation, 35generalized, 47in elasticity, 411, 412indirect, 47

boundary-value equation, 8Brinkman’s equation, 183

complex, 188Burgers equation, 153

cardinal functionscubic splines, 77in one dimension, 136in two dimensions, 142

Cauchyequation of motion, 162stress tensor

in a fluid, 162in elasticity, 407

collocation methodin three dimensions, 116in two dimensions, 74

conjugate gradients, 405connectivity table, 85, 112contact conductance, 24continuity equation, 161continuous element, 83convection – diffusion

in one dimension, 6in three dimensions, 99in two dimensions, 18, 26, 150unsteady, 155

cornerelements, 83in Stokes flow, 178singularity

for Laplace’s equation, 31in Stokes flow, 179

Crank-Nicolson method, 159creeping flow, 164cubic splines, 56

clamped-end, 60isoparametric, 77

periodic, 58–60curl of a vector, 399

D’Arcy equation, 19del operator, 399delta function

in one dimension, 2in three dimensions, 93in two dimensions, 12

dilatation, 408dipole of a source

in three dimensions, 97in two dimensions, 16

Dirac delta functionin one dimension, 2in three dimensions, 93in two dimensions, 12

Dirichlet boundary condition, 9discretization

of a line in a plane, 198of a surface, 111of an integral equation

in three dimensions, 114in two dimensions, 63

divergenceof a vector function, 399theorem, 400

double-layer potentialof Laplace’s equation

gradient of, 50in three dimensions, 101in two dimensions, 21

of Stokes flowin three dimensions, 176in two dimensions, 172

dual reciprocity method, 133for viscous flow, 185in one dimension, 134in two and three dimensions, 141

Einstein summation convention, 397elasticity, 407

modulus of, 408elastostatics, 407explicit Euler method, 159

Page 435: Boundary Element Methods

420 A Practical Guide to Boundary-Element Methods

extra stress tensor, 187

finite part of an integral, 42flow

Navier-Stokes, 162oscillatory, 188, 296shear

past a periodic wall, 261past an array of cylinders, 261

Stokes, 164streaming, 18through a tube, 254unsteady Stokes, 164

flow 1d, 254flow 1d 1p, 261flow 1d osc, 296flow 2d, 265, 364Fredholm

-Riesz theory, 29, 30integral equation

hypersingular, 43, 105of the first kind, 29, 103of the second kind, 29, 103

Frenet relation, 49Froude number, 163

Galerkinboundary-element method, 86

symmetric, 88vector, 408

Gauss-Legendre quadrature, 66divergence theorem, 400elimination, 75, 76, 403

global expansion, 89gradient

of a scalar, 399of a vector, 399

Green’s functionin elasticity, 409

free-space, 410, 411of Brinkman’s equation, 184, 187,

188of D’Arcy’s equation, 19of Helmholtz’s equation

in one dimension, 5in three dimensions, 98in two dimensions, 17

of Laplace’s equationaxisymmetric, 108, 245dipole, 16, 97in one dimension, 2in three dimensions, 93, 230in two dimensions, 12, 209quadruple, 17, 98

of Stokes flow, 166axisymmetric, 349free-space, 168, 170in three dimensions, 329in two dimensions, 302oscillatory, 188

of the biharmonic equationin three dimensions, 99in two dimensions, 34

of the convection – diffusion equa-tion, 156

in one dimension, 6in two dimensions, 18, 27

of the unsteady diffusion equa-tion, 155

of the wave equation, 160symmetry, 4, 20, 26, 169unsteady, 155

Green’s identityfirst

in one dimension, 1in three dimensions, 91in two dimensions, 9

secondin one dimension, 2in three dimensions, 92in two dimensions, 10

thirdin three dimensions, 101in two dimensions, 21

gridon a surface, 112optimization, 85refinement, 85

grid 2d, 198

Page 436: Boundary Element Methods

Index 421

Hadamard part of an integral, 42Heaviside function, 5Helmholtz’s equation, 102, 148

in one dimension, 5in three dimensions, 98in two dimensions, 17, 26, 77inhomogeneous, 146

hypersingularintegral, 36, 104, 174integral equation, 42, 89

icosahedron, 114implicit Euler method, 159impulses, method of, 128index notation, 397influence

coefficients, 64, 114functions, 139

inhomogeneous equations, 131inner vector product, 397, 398integration quadrature

for log singularity, 73Gauss-Legendre, 66

interface, 23in a potential field, 23in Stokes flow, 180

interfacial dynamics, 180interpolation functions

for a six-node triangle, 122for a three-node triangle, 117

irrotational flow, 44isoparametric expansion, 127

Kelvin statein three dimensions, 411in two dimensions, 410

Kirchhoff transformation, 11Kronecker’s delta, 397

Lagrangeinterpolating polynomials, 80, 81

Lame constants, 408Laplace transform, 158Laplace’s equation, 207

in one dimension, 1

in three dimensions, 91, 287, 291in two dimensions, 9

Laplacian of a scalar, 399ldr 3d, 287least squares approximation

moving, 148Legendre polynomials, 66lgf 2d, 209lgf 2d 1p, 212lgf 2d 1p w, 218lgf 2d 1p ww, 221lgf 2d 1p www, 223lgf 2d crc, 227lgf 2d fs, 211lgf 2d w, 215lgf 3d, 230lgf 3d 2p, 240lgf 3d fs, 232lgf 3d sph, 237lgf 3d w, 234lgf ax, 245lgf ax fs, 249lgf ax w, 252lnm 3d, 291Lobatto polynomials, 82, 86, 89Lorentz reciprocal relation, 165

mappingof a curved triangle, 122of a flat triangle, 117

material derivative, 162, 281mean value theorem

in three dimensions, 102in two dimensions, 26

modulus of elasticity, 408

nabla operator, 399Navier equation, 408Navier-Stokes equation, 162, 182

time discretized, 182unsteady, 182

Neumann boundary condition, 9Newtonian fluid, 162Newtonian potential, 132, 135, 141,

185

Page 437: Boundary Element Methods

422 A Practical Guide to Boundary-Element Methods

non-dimensionalization, 163non-Newtonian flow, 187nonlinear equations, 131, 153

octahedron, 114outer vector product, 398

particular solutionfor viscous flow, 185in one dimension, 134in two and three dimensions, 141

Poisson’sequation

in one dimension, 134in two dimensions, 141, 146

ratio, 408potential flow, 44

in a tank, 281in an arbitrary domain, 265past a two-dimensional body, 270past an axisymmetric body, 276

pressure, 162modified, 164

prtcl 2d, 376prtcl 3d, 390prtcl ax, 385prtcl sw, 371

quadraturefor integrating over a triangle, 119for log singularity, 73Gauss-Legendre, 66

quadruple of a sourcein three dimensions, 98in two dimensions, 17

Radau polynomials, 83, 86radial basis functions, 145RBF, 145reciprocal relation

Betti’s in elasticity, 409for Helmholtz’s equation, 17for Laplace’s equation

in one dimension, 2in three dimensions, 92

in two dimensions, 10for Stokes flow, 165

refinementh-type, 85p-type, 85r-type, 85

regularizationof a hypersingular integral, 43of the double-layer potential, 126,

179Reynolds number, 163Robin boundary condition, 9

sgf 2d, 302sgf 2d 1p, 311sgf 2d 1p w, 315sgf 2d 1p ww, 319sgf 2d 2p, 323sgf 2d fs, 305sgf 2d w, 307sgf 3d, 329sgf 3d 2p, 340sgf 3d 3p, 343sgf 3d fs, 332sgf 3d sph, 338sgf 3d w, 334sgf ax, 349sgf ax 1p, 357sgf ax 1p ct, 361sgf ax fs, 353sgf ax w, 355shear flow, 261single-layer potential

of Laplace’s equationfor the gradient, 49in three dimensions, 101in two dimensions, 21

of Stokes flowin three dimensions, 176in two dimensions, 172

sloshing of a fluid in a tank, 281smoothing

of a corner, 83of a function, 285

solenoidal vector field, 399

Page 438: Boundary Element Methods

Index 423

Somigliana’s identity, 411spectral-element method

in three dimensions, 128in two dimensions, 82

splinescubic, 56thin-plate, 145, 148, 186

Stehfest’s method, 158Stokes flow, 161, 164, 301

axisymmetric, 177past particles, 385

in an arbitrary domain, 364oscillatory, 188swirling, 371three-dimensional

past particles, 390two-dimensional

past particles, 376unsteady, 164

Stokes’ theorem, 401Stokeslet, 168stresslet, 172

in three dimensionspressure of, 176stress of, 177

in two dimensionspressure of, 174stress of, 174

successive subdivision, 114

tank 2d, 281tetrahedron, 114thin-plate spline, 145, 148, 186Thomas’s algorithm, 61time-dependent problems, 154time-discretization, 159TPS, 145, 148, 186traction

in a fluid, 161in a solid, 407

trgl, 203triangle

curved, 122flat, 117

triangulation, 112, 203

adaptive, 113triple scalar vector product, 398tube flow, 254

vector identities, 400vector product

inner, 397, 398outer, 398triple scalar, 398

viscosity, 162viscous flow, 161

wave equation, 160