Download as pdf or txt
Download as pdf or txt
You are on page 1of 37

Chapter 6

Weighted Residual Methods

Weighted residual methods (WRM) assume that a solution can be approximated analytically or
piecewise analytically. In general a solution to a PDE can be expressed as a superposition of a base
set of functions

N
X
T (x, t) = aj (t)φj (x)
j=1

where the coefficients aj are determined by a chosen method. The method attempts to minimize
the error, for instance, finite differences try to minimize the error specifically at the chosen grid
points. WRM’s represent a particular group of methods where an integral error is minimized in
a certain way and thereby defining the specific method. Depending on the maximization WRM
generate

• the finite volume method,

• finite element methods,

• spectral methods, and also

• finite difference methods.

6.1 General Formulation


The starting point for WRM’s is an expansion in a set of base or trial functions. Often these are
analytical in which case the numerical solution will be analytical

N
X
T (x, y, z, t) = T0 (x, y, z, t) + aj (t)φj (x, y, z) (6.1)
j=1

81
CHAPTER 6. WEIGHTED RESIDUAL METHODS 82

with the trial functions φj (x, y, z). T0 (x, y, z, t) is chosen to satisfy initial or boundary conditions
and the coefficients aj (t) have to be determined. possible trial functions are
φj (x) = xj−1 or φj (x) = sin(jπx).
The expansion is chosen to satisfy a differential equation L(T ) = 0 (where T is the exact solution),
e.g.,

∂T ∂2T
L(T ) = −α 2 =0
∂t ∂x

However, the numerical solution is an approximate solution, i.e., T 6= T such that the operator L
applied to T produces a residual

L(T ) = R

The goal of WRM’s is to choose the coefficients aj such that the residual R becomes small (in fact
0) over a chosen domain. In integral form this can be achieved with the condition
Z Z Z
Wm (x, y, z)Rdxdydz = 0 (6.2)

where Wm is a set of weight functions (m = 1, ...M ) which are used to evaluate (6.2). The exact
solution always satisfies (6.2) if the weight functions are analytic. This is in particular true also for
any given subdomain of the domain for which a solution is sought.
There are four main categories of weight or test functions which are applied in WRM’s.

i) Subdomain method: Here the domain is divided in M subdomains Dm where



1 in Dm
Wm = (6.3)
0 outside

such that this method minimizes the residual error in each of the chosen subdomains. Note that the
choice of the subdomains is free. In many cases an equal division of the total domain is likely the
best choice. However, if higher resolution (and a corresponding smaller error) in a particular area
is desired, a non-uniform choice may be more appropriate.

ii) Collocation method: In this method the weight functions are chosen to be Dirac delta func-
tions

Wm (x) = δ(x − xm ) (6.4)

such that the error is zero at the chosen nodes xm .


CHAPTER 6. WEIGHTED RESIDUAL METHODS 83

iii) Least squares method: This method uses derivatives of the residual itself as weight functions
in the form

∂R
Wm (x) = . (6.5)
∂am
RRR 2
The motivation for this choice is to minimize R dxdydz of the computational domain. Note
that this choice of the weight function implies
Z Z Z

R2 dxdydz = 0
∂am
for all values of am .

iv) Galerkin method: In this method the weight functions are chosen to be identical to the base
functions.

Wm (x) = φm (x)
R
In particular if the base function set is orthogonal ( φm (x)φn (x) = 0 if m 6= n), this choice of
weight functions implies that the residual R is rendered orthogonal with the condition (6.2) for all
base functions.
Note that M weight functions yield M conditions (or equations) from which to determine the N
coefficients aj . To determine these N coefficients uniquely we need N independent condition
(equations).

Example: Consider the ordinary differential equation

dy
−y =0 (6.6)
dx
for 0 ≤ x ≤ 1 with y(0) = 1. Let us assume an approximate solution in the form of polynomials

N
X
y =1+ a j xj (6.7)
j=1

where the constant 1 satisfies the boundary condition. Substituting this expression into the differ-
ential equation (6.6) gives the residual

N
X 
R = −1 + aj jxj−1 − xj (6.8)
j=1

We can now compute the coefficients aj with the various methods.


CHAPTER 6. WEIGHTED RESIDUAL METHODS 84

Galerkin method:
Here we use the weight functions Wm = xm−1 . The maximization implies with (6.2)

Z " N
#
1 X 
m−1 j−1 j
x −1 + aj jx −x dx = 0
0 j=1

or

Z 1 N 
X  Z 1 Z 1 
m−1 m−1 j−1 m−1 j
− x dx + aj j x x dx − x x dx =0
0 j=1 0 0

which yields after integration

N  
1 X j 1
− + aj − =0 (6.9)
m j=1 m+j−1 m+j
j 1
With the matrix S (with elements smj = m+j−1
− m+j
) and the vector D (with the elements
dm = − m1 ) we can rewrite (6.9) as

SA = D (6.10)
The solution A of this set of equations requires to invert S. For N = 3 the system becomes
     
1/2 2/3 3/4 a1 1
 1/6 5/12 11/20   a2  =  1/2 
1/12 3/10 13/30 a3 1/3
For this set the approximate solution becomes

y = 1 + 1.0141x + 0.4225x2 + 0.2817x3


Least squares method:
Here the weight functions are

∂R
Wm (x) = = mxm−1 − xm
∂am
This gives the residual condition

Z " N
#
1  X 
mxm−1 − x m
−1 + aj jxj−1 − x j
dx =
0 j=1
N 
X Z 1 
1 m−1 m
 j−1 j

−1 + + aj mx −x jx − x dx = 0
m+1 j=1 0
CHAPTER 6. WEIGHTED RESIDUAL METHODS 85

or

N
X  
1 jm j+m 1
−1 + + aj − + =0
m + 1 j=1 m+j −1 m+j m+j+1

Subdomain method:
Weight functions:

1 x ∈ ( m−1
N
,m
N
]
Wm =
0 outside

Condition for the residual error:

Z m
" N
#
N X 
j−1 j
−1 + aj jx −x dx = 0
m−1
N j=1

Collocation method:
m−1
Collocation point (for the Dirac delta function): xm = N
.
Condition for the residual error:

Z " N
#
1 X 
δ(x − xm ) −1 + aj jxj−1 − x j
dx = 0
0 j=1

6.2 Finite Volume Method


This section illustrate the use of the finite volume method first for a PDE involving first order
derivatives and later for second order derivatives. The program FIVOL will be introduced which
can be used to solve Laplace’s equation or Poisson’s equation, i.e, equations of the elliptic type.

6.2.1 First order derivatives


Let us consider the equation
∂q ∂F ∂G
+ + =0 (6.11)
∂t ∂x ∂y

which is to be solved with the subdomain method on a domain given by coordinate line (j, k)
describing a curved coordinate system. This equation is a typical continuity equation like the
equations for conservation of mass, momentum etc.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 86

j+1 k+1

C k
j

B k-1
j-1 D

A
y

Figure 6.1: Illustration of the coordinate system to solve equation (6.11) with the finite volume
method.

Equation (6.11) is to be solved as an integral over any area ABCDas illustrated in Figure 6.1 =>
Z  
∂q ∂F ∂G
+ + dxdy = 0.
ABCD ∂t ∂x ∂y

With H = (F, G) such that ∂F/∂x + ∂G/∂y = ∇ · H this equation becomes (using Gauss’s
theorem) Z I
d
qdV + H · nds = 0
dt ABCD ∂ABCD

In Cartesian coordinates the surface element vector ds = (dx, dy) such that the normal vector
nds = (dy, −dx) and H · nds = F dy − Gdx. Thus the integral of (6.11) For the area ABCD
becomes

d X
(Ar qjk ) + (F ∆y − G∆x) = 0
dt ABCD

with Ar =area of ABCD. Using the notations ∆yAB = yB − yA , ∆xAB = xB − xA , and the
averages FAB = 0.5 (Fj,k−1 + Fj,k ), GAB = 0.5 (Gj,k−1 + Gj,k ) and applying these to all sections
of ABCDwe obtain

dqjk
Ar dt
+0.5 (Fj,k−1 + Fj,k ) ∆yAB −0.5 (Gj,k−1 + Gj,k ) ∆xAB
+0.5 (Fj,k + Fj+1,k ) ∆yBC −0.5 (Gj,k + Gj+1,k ) ∆xBC
(6.12)
+0.5 (Fj,k + Fj,k+1 ) ∆yCD −0.5 (Gj,k + Gj,k+1 ) ∆xCD
+0.5 (Fj−1,k + Fj,k ) ∆yDA −0.5 (Gj−1,k + Gj,k ) ∆xDA = 0
CHAPTER 6. WEIGHTED RESIDUAL METHODS 87

In case of a uniform grid parallel to the x, and the y axes the area is A r = ∆x∆y and equation
(6.12) reduces to
dqjk Fj+1,k − Fj−1,k Gj+1,k − Gj−1,k
+ + =0
dt 2∆x 2∆y
where the spatial derivative is equal to that for the centered space finite difference approximation.

6.2.2 Second order derivatives


To introduce the finite volume second derivatives let us consider Laplace’s equation

∂2φ ∂2φ
+ =0 (6.13)
∂x2 ∂x2

j+1 k+1

C k
j
C’
y (A)
B k-1
j-1 D
Y D’ B’

rXY
A
y
Z
A’

(B) x
rWZ
W X
x

Figure 6.2: Illustrations of the domain for the solution of Laplace’s equation (A), and of the grid
geometry to evaluate the second derivatives for the finite volume method.

We are seeking a solution for this equation in a domain as illustrated by the shaded area in
Figure~6.2. The appropriate coordinate system for this domain is a polar coordinate system with
the variable r and θ. The boundary conditions are

φ = 0 at boundary W X,

φ = sin θ/rxy at boundary XY ,

φ = 1/ryz at boundary Y Z,

φ = sin θ/rwz at boundary W Z.


CHAPTER 6. WEIGHTED RESIDUAL METHODS 88

With this choice of boundary conditions Laplace’s equation (6.13) has the exact solution
sin θ
φ=
r

To apply the finite volume method we determine the integral of the residual in the area given by
ABCD in Figure 6.2
Z Z   I
∂2φ ∂2φ
+ 2 dxdy = H · nds = 0 (6.14)
ABCD ∂x2 ∂y ∂ABCD

with H · nds = ∂φ
∂x
dy − ∂φ
∂y
dx. Note that H = (∂φ/∂x, ∂φ/∂y) and that the direction normal to
ds = (dx, dy) is nds = (dy, −dx). Using the geometry shown in Figure 6.2 equation (6.14) is
approximated with


∂φ ∂φ
∆yAB − ∆xAB
∂x j,k−1/2 ∂y j,k−1/2

∂φ ∂φ
+ ∆yBC − ∆xBC
∂x j+1,k ∂y j+1,k

∂φ ∂φ
+ ∆yCD − ∆xCD
∂x j,k+1/2 ∂y j,k+1/2

∂φ ∂φ
+ ∆yDA − ∆xDA = 0 (6.15)
∂x j−1,k ∂y j−1,k

The derivatives ∂φ/∂x and ∂φ/∂y at the midpoints of each section AB, BC, etc are determined
through averages over the appropriate section. For instance along AB the derivatives are
Z Z I
∂φ 1 ∂φ 1
= dxdy = φdy
∂x j,k−1/2 SAB A0 B 0 C 0 D 0 ∂x SAB ∂A0 B 0 C 0 D0
Z Z I
∂φ 1 ∂φ 1
= dxdy = − φdx
∂y j,k−1/2 SAB A0 B 0 C 0 D 0 ∂y SAB ∂A0 B 0 C 0 D0

with SAB as the area of A0 B 0 C 0 D 0 and


I
φdy = φj,k−1∆yA0 B 0 + φB ∆yB 0 C 0 + φj,k ∆yC 0 D0 + φA ∆yD0 A0
∂A0 B 0 C 0 D 0
I
φdx = φj,k−1∆xA0 B 0 + φB ∆xB 0 C 0 + φj,k ∆xC 0 D0 + φA ∆xD0 A0
∂A0 B 0 C 0 D 0

If the mesh is not too distorted we can approximate

∆yA0 B 0 ≈ −∆yC 0 D0 ≈ ∆yAB


∆yB 0 C 0 ≈ −∆yD0 A0 ≈ ∆yk−1,k
CHAPTER 6. WEIGHTED RESIDUAL METHODS 89



 ∆  



 ∆



−∆   ∆

Figure 6.3: Illustration of the geometry of the elements ABCD.

and similar for ∆x. Figure 6.3 shows that the area is approximated by

SAB = SA0 B 0 C 0 D0 = (∆xAB − ∆xk−1,k )(∆yAB + ∆yk−1,k )


−∆xAB ∆yAB + ∆xk−1,k ∆yk−1,k
= ∆xAB ∆yk−1,k − ∆yAB ∆xk−1,k

With this we obtain:



∂φ ∆yAB (φj,k−1 − φj,k ) + ∆yk−1,k (φB − φA )
=
∂x j,k−1/2 SAB

∂φ ∆xAB (φj,k−1 − φj,k ) + ∆xk−1,k (φB − φA )
= −
∂y j,k−1/2 SAB
CHAPTER 6. WEIGHTED RESIDUAL METHODS 90

Similarly we obtain

∂φ ∆yBC (φj+1,k − φj,k ) + ∆yj+1,j (φC − φB )
=
∂x j+1/2,k SBC

∂φ ∆xBC (φj+1,k − φj,k ) + ∆xj+1,j (φC − φB )
= −
∂y j+1/2,k SBC

∂φ ∆yCD (φj,k+1 − φj,k ) + ∆yk+1,k (φD − φC )
=
∂x j,k+1/2 SCD

∂φ ∆xCD (φj,k+1 − φj,k ) + ∆xk+1,k (φD − φC )
= −
∂y j,k+1/2 SCD

∂φ ∆yDA (φj−1,k − φj,k ) + ∆yj−1,j (φA − φD )
=
∂x j−1/2,k SDA

∂φ ∆xDA (φj−1,k − φj,k ) + ∆xj−1,j (φA − φD )
= −
∂y j−1/2,k SDA

Substitution back into equation (6.15) gives

QAB (φj,k−1 − φj,k ) + QBC (φj+1,k − φj,k ) + QCD (φj,k+1 − φj,k ) + QDA (φj−1,k − φj,k )
+PAB (φB − φA ) + PBC (φC − φB ) + PCD (φD − φC ) + PDA (φA − φD ) = 0

with

QAB = ∆x2AB + ∆yAB
2
/SAB , PAB = (∆xAB ∆xk−1,k + ∆yAB ∆yk−1,k ) /SAB
2 2

QBC = ∆xBC + ∆yBC /SBC , PBC = (∆xBC ∆xj+1,j + ∆yBC ∆yj+1,j ) /SBC

QCD = ∆x2CD + ∆yCD
2
/SCD , PCD = (∆xCD ∆xk+1,k + ∆yCD ∆yk+1,k ) /SCD

QDA = ∆x2DA + ∆yDA
2
/SDA , PDA = (∆xDA ∆xj−1,j + ∆yDA ∆yj−1,j ) /SDA

Finally we evaluate φA , xA , and yA as the average over the surrounding nodes, e.g.,

φA = 0.25(φj,k + φj−1,k + φj−1,k−1 + φj,k−1 )

Substitution into our main equation then yields

0.25 (PCD − PDA ) φj−1,k+1 + 0.25 (PBC − PCD ) φj+1,k+1


+0.25 (PAB − PBC ) φj+1,k−1 + 0.25 (PDA − PAB ) φj−1,k−1
+ [QCD + 0.25 (PBC − PDA )] φj,k+1 + [QDA + 0.25 (PCD − PAB )] φj−1,k
+ [QAB + 0.25 (PDA − PBC )] φj,k−1 + [QBC + 0.25 (PAB − PCD )] φj+1,k
− (QAB + QBC + QCD + QDA ) φj,k = 0 (6.16)

Here the coefficients can be determined initially and then used during the computation. Equation
(6.16) is solved in the program FIVOL using successive over-relaxation (SOR). The estimate for φ
is determined from (6.16)
CHAPTER 6. WEIGHTED RESIDUAL METHODS 91

φ?j,k = {0.25 (PCD − PDA ) φj−1,k+1 + 0.25 (PBC − PCD ) φj+1,k+1 (6.17)
+0.25 (PAB − PBC ) φj+1,k−1 + 0.25 (PDA − PAB ) φj−1,k−1
+ [QCD + 0.25 (PBC − PDA )] φj,k+1 + [QDA + 0.25 (PCD − PAB )] φj−1,k
+ [QAB + 0.25 (PDA − PBC )] φj,k−1 + [QBC + 0.25 (PAB − PCD )] φj+1,k }n
/ (QAB + QBC + QCD + QDA )

The iteration step is completed with

φn+1 n ? n
j,k = φj,k + ω(φj,k − φj,k ) (6.18)

Note that the discretized equation (6.16) reduces to centered finite differences on a uniform rect-
angular grid

φj−1,k − 2φj,k + φj+1,k φj,k−1 − 2φj,k + φj,k+1


+ =0 (6.19)
∆x2 ∆y 2

6.2.3 Program Fivol


The finite volume method as described above is implemented in the program Fivol. The program
parameter used are summarized in Table (6.1).

Table 6.1: Program parameter for the program Fivol.


Parameter Description
nr,ntheta Number of grid points in r and θ directions
niter Maximum number of iterations
eps Tolerance for the iterated solution
om Relaxation parameter ω
rms RMS error
rw, rx, ry, rz radial distance to points w, x, y, and z
theb, then Min and max values in the θ direction
x,y x and y coordinates of the grid
r,theta r and θ coordinates
dr,dtheta increments in the r and θ directions
qab, pab, qbc, pbc, qcd, pcd, qda, pda Weights for the iterations
phi Iterated solution
phix Exact solution

The program reads the input parameters niter, rw, rx, ry, rz, theb, then, eps, om from the data
file fivol.dat. Program parameters are defined in the include file fivin. The program then writes
parameters to a data file fivol.out, generates the grid, initializes the iteration through an initial state
(for phi), boundary conditions, and calculates the matrix coefficients. Subsequently a subroutine
CHAPTER 6. WEIGHTED RESIDUAL METHODS 92

SOR is called until the iterated solution tolerance is reached. The result is written to a binary file
which can serve as input for the plotting routine plofivol.
The solution error for the finite volume method is listed in Table (6.2) for different number of grid
points in the same domain. The table illustrates that the solution error is second order. This is to
be expected from the centered differences to which the finite volume method reduces on a uniform
rectangular grid. However, for strongly distorted grids the solution error is larger than second
order.

Table 6.2: Solution errors for the finite volume method in program Fivol2.f
Grid |φ − φexact |rms No of iterations
6×6 0.1326 15
11×11 0.0471 19
21×21 0.0138 51

The finite volume method is well suited for for somewhat irregular grid domains and does not
require an orthogonal grid. The number of iterations for convergence depends on the domain size.

6.3 Finite Element Method


Finite element methods are used mostly in engineering. For many problems the finite element
method can be interpreted as a maximization of the potential energy of a system. In most applica-
tions the finite element method is used with the Galerkin formulation for the weighted residuals.
The approximating functions are simple polynomials defined in local domains.

N
X
T = Tj φj (x, y, z) (6.20)
j=1

Where for a suitable set of functions the local domains can be of any shape. Since the finite element
method is used with local coordinates the domains can be subdivided (into same shape domains)
to increase the resolution where it is desired. The interpolating functions are called trial or shape
functions.

6.3.1 Basic formulation


a) Linear Interpolation

The linear interpolation uses linear functions which are 1 at the nodal point, assume 0 at the neigh-
boring points, and are identical to 0 outside the domains (xj−1 , xj+1 ) as illustrated in Figure 6.4.
The shape function for the nodal point j is
CHAPTER 6. WEIGHTED RESIDUAL METHODS 93

φ φ  φ 


φ  φ φ 


              

Figure 6.4: Illustration of one-dimensional linear finite elements.

( x−xj−1
xj −xj−1
f or xj−1 ≤ x ≤ xj (element A)
φj = xj+1 −x (6.21)
xj+1 −xj
f or xj ≤ x ≤ xj+1 (element B)

and φj = 0 outside of elements A and B. The shape function φj overlaps only with its direct
neighbors and the superposition of elements between nodal points yields a linear function in these
regions

in A : T = Tj−1 φj−1 + Tj φj (6.22)


in B : T = Tj φj + Tj+1 φj+1 (6.23)

In any given element only two shape functions overlap. In element A φ j is given element by (6.21)
and φj−1 is given by

xj − x
φj−1 =
xj − xj−1
Similar for any element B φj is given element by (6.21) and φj+1 is given by

x − xj
φj+1 = .
xj+1 − xj
The particular form of the trial functions makes it straightforward to use them to approximate any
given function f (x). Since the trial functions are 1 at the nodal points and all except for one trial
functions are 0 at any nodal point Thus the expansion of a function f (x) in terms of the shape
functions is given by

N
X
f (x) = fj φj (x) (6.24)
j=1

with the coefficients

fk = f (xk ) (6.25)
CHAPTER 6. WEIGHTED RESIDUAL METHODS 94
PN
where the xk are the nodal points. Formally this is seen by f (xk ) = j=1 fj φj (xk ) = fk
The method is illustrated using the function

f (x) = 1 + cos(πx/2) + sin(πx) (6.26)

f
quadratic
2.0 interpolation

1.0
linear interpolation

0.5 1.0 x

Figure 6.5: Linear (dashed)and quadratic (dotted) finite element approximation of function (6.26).

in the range [0, 1]. With two elements and nodal points at (0, 0.5, 1.0) the expansion coefficients
are f1 = 2, f2 = 2.7071, and f3 = 0. Figure (6.5) shows the function f (x) and the finite element
interpolation for linear and quadratic elements.

b) Quadratic interpolation

Quadratic interpolation requires simple quadratic polynomials for trial function. Again a trial
function should be 1 only at the corresponding nodal point and 0 at all other nodes.

φ     
 
φ  φ 
φ
φ   φ  
 


   
 

Figure 6.6: Illustration of one-dimensional linear finite elements.

Following the illustration 6.6 the trial functions are defined by




 0 f or x ≤ xj−2 , x ≥ xj+2
x−xj−2 x−xj−1
φj = xj −xj−2 xj −xj−1
f or xj−2 ≤ x ≤ xj , element A (6.27)

 x−xj+2 x−xj+1
xj −xj+2 xj −xj+1
f or xj ≤ x ≤ xj+2 , element B

With this form φj (xj ) = 1 and φj (xj−2 ) = φj (xj−1 ) = φj (xj+1 ) = φj (xj+1 ) = 0. The trial
functions of this form extend over 5 nodes. such that in a given interval 4 trial functions overlap
CHAPTER 6. WEIGHTED RESIDUAL METHODS 95

if they were all chosen of the same form. This is improved by choosing different trial functions at
xj−1 and at xj+1 of the form:

x − xj−1 x − xj+1
φj = f or xj−2 ≤ x ≤ xj (6.28)
xj − xj−1 xj − xj+1

and 0 otherwise. Note that this creates a structure where all odd nodes have elements of the form
of (6.27) and all even elements are of the form (6.28) where we start with an index of 1 for the first
node (xmin boundary).
Similar to the linear elements it is straightforward to expand any given function in term of these
shape functions

N
X
f (x) = fj φj (x)
j=1

with the coefficients fk = f (xk ) as in the case of the linear elements.


with Tj = f (xj ). With these functions the interpolation in elements A and B take the following
form

Tj−2 φj−2 + Tj−1 φj−1 + Tj φj in element A
T =
Tj φj + Tj+1 φj+1 + Tj+2 φj+2 in element B

The specific form of the shape functions which are nonzero in any element A is

  
x − xj x − xj−1
φj−2 =
xj−2 − xj xj−2 − xj−1
  
x − xj−2 x − xj
φj−1 =
xj−1 − xj−2 xj−1 − xj
  
x − xj−2 x − xj−1
φj =
xj − xj−2 xj − xj−1

For the special function (6.26) with only three nodes we have only one element A and no element
B. As before the expansion coefficients are f1 = 2, f2 = 2.7071, and f3 = 0.
The errors for the linear and quadratic finite element approximation of function (6.26) is listed in
Table 6.3. While the linear approximation scales quadratic in the error the quadratic interpolation
scales cubic in the resolution (inverse number of nodes).

c) Two-dimensional interpolation

Linear elements: The particular strength of finite elements is there flexibility in two and three
dimensions. Based on the previous introduction we want to illustrate the use of linear and quadratic
CHAPTER 6. WEIGHTED RESIDUAL METHODS 96

Table 6.3: Error for linear and quadratic finite element interpolation for the function in (6.26).
Linear Interpolation Quadratic interpolation
No of elements RMS error No of elements RMS error
2 0.18662 1 0.04028
4 0.04786 2 0.01599
6 0.02138 3 0.00484
8 0.01204 4 0.00206

finite elements in two and three dimensions. In two dimensions a trial function centered at (x j , yj )
spans four elements A, B, C, and D. The approximate solution in this region can be conveniently
written with local element based coordinates (ξ, η) as
4
X
T = Tl φl (ξ, η) (6.29)
l=1

with −1 ≤ ξ ≤ 1 and −1 ≤ η ≤ 1. The approximating functions φl (ξ, η) in each element are of


the form
φl (ξ, η) = 0.25(1 + ξl ξ)(1 + ηl η) (6.30)

with ξl = ±1 and ηl = ±1 or explicit

φ1 = 0.25(1 − ξ)(1 − η)
φ2 = 0.25(1 + ξ)(1 − η)
φ3 = 0.25(1 + ξ)(1 + η)
φ4 = 0.25(1 − ξ)(1 + η)

The nodal geometry and local coordinate systems are illustrated in Figure 6.7.

 η=−1 η=1


ξ=1
ξ

  η

ξ=−1




   

Figure 6.7: Illustration of the nodal geometry and sketch of the two-dimensional linear trial func-
tions.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 97

A solution is constructed separate in each element A, B, C, and D where continuity is provided by


the overlapping shape functions. For instance a solution in element A implies that shape functions
with values of 1 along the boundary to element B overlap into the region of element B and similar
for all other boundaries of element A.
Bi-quadratic elements:
Similar to the bilinear elements the approximate solution for bi-quadratic elements in this region
can be conveniently written with local element based coordinates (ξ, η) as
9
X
T = Tl φl (ξ, η) (6.31)
l=1

with −1 ≤ ξ ≤ 1 and −1 ≤ η ≤ 1. The approximating functions φl (ξ η) in each element depend


on the location.
 

ξ
 
η
 








     

Figure 6.8: Illustration of the nodal geometry for bi-quadratic elements.

Specifically the form of the shape function depends on how they are centered, i.e., where they
assume a value of 1.

φl (ξ, η) = 0.25ξl ξ(1 + ξl ξ)ηl η(1 + ηl η) corner nodes (6.32)


φl (ξ, η) = 0.5(1 − ξ 2 )ηl η(1 + ηl η) midside nodes (ξl = 0) (6.33)
φl (ξ, η) = 0.5(1 − η 2 )ξl ξ(1 + ξl ξ) midside nodes (ηl = 0) (6.34)
φl (ξ, η) = 0.5(1 − η 2 )(1 − ξ 2 ) internal nodes (6.35)

Again solutions are constructed in each element A, B, C, and D where the shape functions on the
side and corner nodes overlap into the adjacent region. Note that quadratic elements require at 3
nodes in each direction and the total number of nodes has to be odd to accommodate quadratic
elements.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 98

6.3.2 Finite element method applied to the Sturm-Liouville equation


Here we will use the Galerkin finite element method to discretize and solve the Sturm-Liouville
equation

d2 y
+ y = F (x) (6.36)
dx2
subject to boundary conditions y(0) = 0 and dy/dx(1) = 0 and
L
X
F (x) = − al sin ((l − 0.5)πx) . (6.37)
l=1

The exact solution to this problem for F (x) is given by


L
X al
y(x) = − sin ((l − 0.5)πx) . (6.38)
l=1
1 − ((l − 0.5)π)2

The trial solution is as before


N
X
ye = y j φj .
j=1

Linear Interpolation:
In an element based coordinate system we use local coordinates with
“ x +x

2 x− j−12 j
φj = 0.5(1 + ξ) and ξ = ∆xj
f or element A
“ xj +xj+1

2 x− 2
φj = 0.5(1 − ξ) and ξ = ∆xj+1
f or element B

with ∆xj = xj − xj−1 , and ∆xj+1 = xj+1 − xj . The residual is

d2 ye
R= + ye − F (x)
dx2

and the weight function for the weighted residual is wm = φm which yields the equation
Z 1  2 
d ye
φm (x) + ye − F (x) dx = 0
0 dx2

One can integrate the first term brackets by parts


Z 1  1 Z 1
d2 ye de
y dφm de
y
φm 2 dx = φm − dx
0 dx dx 0 0 dx dx
CHAPTER 6. WEIGHTED RESIDUAL METHODS 99
h i1
de
y
because the boundary conditions imply φ1 = 0 and dy/dx(1) = 0 such that φm dx = 0 such
0
that the residual equation becomes
XN  Z 1   Z 1
dφm dφj
yj − + φm φj dx = φm F (x)dx
j=1 0 dx dx 0

or in matrix form
BY = G
with the elements
Z 1  
dφm dφj
bmj = − + φm φj dx
0 dx dx
Z 1
gm = φm F (x)dx.
0

In the computation of these elements it is convenient to make use of the local coordinates. It
should also be noted that the residual equation only has contributions for j = m − 1, j = m, and
m = j + 1. With the transformation to local coordinates we have in element A

d dξ d 2 d
= =
dx dx dξ ∆xj dξ
dx ∆xj
dx = dξ = dξ
dξ 2
and in element B

d dξ d 2 d
= =
dx dx dξ ∆xj+1 dξ
dx ∆xj+1
dx = dξ = dξ
dξ 2
with ∆xj = xj − xj−1 and ∆xj+1 = xj+1 − xj .
Element bm,m−1 : A contribution exists only in region A for node m (corresponding to a region B
for node m − 1). Thus

Z 1  
dφm dφm−1
bm,m−1 = − + φm φm−1 dx
0 dx dx
Z 1 
dξA dφA dφB dx
= − + φA φB dξ
−1 dx dξ dξ dξA
Z 1 Z
1 ∆xm 1
= dξ + (1 − ξ 2 )dξ
2∆xm −1 8 −1
1 ∆xm
= +
∆xm 6
CHAPTER 6. WEIGHTED RESIDUAL METHODS 100

Similar the element bm,m+1 involves only overlap in region B of element φm with region A of
element φm+1 . The expression is the same only that it regards the interval ∆xm+1 . Thus

1 ∆xm+1
bm,m+1 = +
∆xm+1 6

Element bm,m : Here we have overlap of φm with itself in regions A and B:

Z 1  
dφm dφm
bm,m = − + φm φm dx
0 dx dx
Z 1  2 ! Z 1  2 !
dξ dφA dx 2 dξ dφB dx 2
= − + φA dξ + − + φB dξ
−1 dx dξ dξ −1 dx dξ dξ
A B
Z 1  2  2 !
2 1 ∆xm 1 + ξ
= − + dξ
−1 ∆xm 2 2 2
A
Z 1  2  2 !
2 1 ∆xm+1 1 − ξ
+ − + dξ
−1 ∆xm+1 2 2 2
A
Z Z 1
1 1 ∆xm 1 2 ∆x m+1
= − − + (1 + ξ) dξ + (1 − ξ)2 dξ
∆xm ∆xm+1 8 −1 8 −1
1 1 ∆xm + ∆xm+1
= − − +
∆xm ∆xm+1 3

In summary the nonzero elements bmj for 2 ≤ m ≤ N − 1 are

1 ∆xm
bm,m−1 = +
∆xm 6
 
1 1 ∆xm + ∆xm+1
bm,m = − + +
∆xm ∆xm+1 3
1 ∆xm+1
bm,m+1 = +
∆xm+1 6

for m = N

1 ∆xN
bN,N −1 = +
∆xN 6
1 ∆xN
bN,N = − +
∆xN 6
bN,N +1 = 0.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 101
R1
The inhomogeneity F (x) is known analytically such that one can evaluate 0 φm F (x)dx directly.
However, in more complex situations it is more convenient to interpolate F (x) through the trial
functions
XN
F (x) = F j φj .
j=1

such that

N
X Z 1
gm = Fj φm φj dx
j=1 0

For the linear interpolation this yields

∆xm ∆xm + ∆xm+1 ∆xm+1


gm = Fm−1 + Fm + Fm+1
6 3 6
Finally consider the special case of a uniform grid with ∆xm = ∆xm+1 = ∆x. In this case the
equation for the coefficients becomes
   
ym−1 − 2ym + ym+1 1 2 1 1 2 1
+ ym−1 + ym + ym+1 = Fm−1 + Fm + Fm+1
∆x2 6 3 6 6 3 6

Exercise: Determine the elements at the min and max boundary, i.e., b 1,1 , b1,2 , and b2,1 .

Elements with m = 1 (y1 = 0): There is no equation for y1 needed because y1 = 0 such that the
indices for the array dimensions decrease by 1.
Elements with m = 2
Z 1   Z 1  Z 1
dφ2 dφ2 dφ2 dφ3
y2 − + φ2 φ2 dx + y3 − + φ2 φ3 dx = φ2 F (x)dx
0 dx dx 0 dx dx 0

Elements with m = N

Z 1   Z 1  Z 1
dφN dφN −1 dφN dφN
yN −1 − + φN φN −1 dx + yN − + φN φN dx = φN F (x)dx
0 dx dx 0 dx dx 0

Quadratic interpolation:
The program offers the possibility to use a linear or quadratic finite element interpolation. For the
second case the equations for the bmj are
CHAPTER 6. WEIGHTED RESIDUAL METHODS 102

1 ∆xm
bm,m−2 = − −
6∆xm 15
4 2∆xm
bm,m−1 = +
3∆xm 15
 
7 1 1 4
bm,m = − + + (∆xm + ∆xm+1 )
6 ∆xm ∆xm+1 15
4 2∆xm+1
bm,m+1 = +
3∆xm+1 15
1 ∆xm+1
bm,m+1 = − +
6∆xm+1 15

and

∆xm 2∆xm 4
gm = − Fm−2 + Fm−1 + (∆xm + ∆xm+1 ) Fm
15 15 15
2∆xm+1 ∆xm
+ Fm+1 − Fm+2
15 15

A the boundary m = N one obtains

1 ∆xN
bN,N −2 = − −
6∆xN 15
4 2∆xN
bN,N −1 = +
3∆xN 15
7 1 4
bN,N = − + ∆xN
6 ∆xN 15
∆xN 2∆xN 4
gN = − FN −2 + FN −1 + ∆xN FN
15 15 15

For the equations at midside nodes one obtains

4 2∆xm
bm,m−1 = +
3∆xm 15
8 16∆xm
bm,m = − +
3∆xm 15
4 2∆xm+1
bm,m+1 = +
3∆xm+1 15
2∆xm 16∆xm 2∆xm
gm = Fm−1 + Fm + Fm+1
15 15 15
CHAPTER 6. WEIGHTED RESIDUAL METHODS 103

The program Sturm solves the Sturm-Liouville equation (6.36) for the boundary condition and
the inhomogeneity defined at the beginning of this section. The parameter int determines linear
or quadratic finite element interpolation. The matrix inversion forBY = G is solved with the
Thomas algorithm (explained in Chapter 7) which is a special case of Gauss elimination for the
case of tridiagonal banded matrices. The subroutines Bianca and ban sol factorize and solve banded
matrices (tridiagonal or pentadiagonal;. The program can be downloaded from the website. For
the program the following values for ai were chosen:

a1 = 1.0, a2 = −1.3, a3 = 0.8, a4 = −0.2, a5 = 1.6

The RMS error is defined as

" N −1
#1/2
1 X
||y − yexact || = (yi − yexact,i )2
N − 1 i=1

Table summarizes the solution error for the Sturm-Liouville equation.

Table 6.4: RMS solution error for the Sturm Liouville equation.
Grid ∆x Linear interpolation Quadratic interpolation
1/4 0.014 0.30
1/8 0.0039 0.0017
1/16 0.00093 0.000072
1/24 0.00040 0.000022

Notes:

• Higher order interpolation on a coarse grid is not much better or can be worse than linear
interpolation.
• The solution error for linear interpolation decreases approximately with ∆x 2 and for quadratic
interpolation it decreases with ∼ ∆x3 .
• Smaller grid spacing than listed in the table requires higher machine accuracy (i. e., variables
need to be defined as double precision.
Sturm-Liouville problem, fem: quadratic interpolation
nx= 9 a= 0.10E+01 -0.13E+01 0.80E+00 -0.20E+00 0.16E+01
i= 2 x=0.12500 y=0.11654 yex+0.11611 dy=0.00044
i= 3 x=0.25000 y=0.21361 yex+0.21262 dy=0.00099
i= 4 x=0.37500 y=0.31541 yex+0.31575 dy=-.00034
i= 5 x=0.50000 y=0.43428 yex+0.43608 dy=-.00180
i= 6 x=0.62500 y=0.54579 yex+0.54528 dy=0.00051
i= 7 x=0.75000 y=0.64174 yex+0.63904 dy=0.00270
i= 8 x=0.87500 y=0.72503 yex+0.72543 dy=-.00040
i= 9 x=1.00000 y=0.76235 yex+0.76568 dy=-.00333
rms= 0.171E-02 nx= 9
CHAPTER 6. WEIGHTED RESIDUAL METHODS 104

Table 6.5: Parameters used in program Sturm.f


Parameter Description
nx number of grid points
nterm number of terms in the inhomogeneity
x grid for x
y, yex numerical and exact solution
b coefficients matrix
g coefficients for the inhomogeneity
f function F
a coefficients a
fd only used in ban sol

6.3.3 Further applications of the finite element method


Diffusion equation

Consider the diffusion equation

∂T ∂2T
−α 2 =0
∂t ∂x
and linear finite element interpolation on a uniform grid. In this case the second derivative is treated
as the second derivative in the Sturm-Liouville equation. The time derivative can be taken out of
the integrals for the shape functions such that it is treated as the second term or the inhomogeneity
in the Sturm-Liouville equation. Thus the linear finite element method leads to the equation

1 dT 2 dT 1 dT α
+ + − (Ti−1 − 2Ti + Ti+1 ) = 0
6 dt i−1 3 dt i 6 dt i ∆x2

Here the form of the time derivative has not yet been specified. Also this form allows the freedom
to evaluate the second derivative at a suitable time level. Defining ∆T n+1 = T n+1 − T n and time
derivatives as dT /dt = ∆T n+1 /∆t and using a parameter β to control the time level at which the
second derivative is evaluated we obtain

n+1 n+1
1 ∆Ti−1 2 ∆Tin+1 1 ∆Ti+1
+ +
 6 ∆t 3 ∆t 6 ∆t
n+1 n+1 
n n n
Ti−1 − 2Ti + Ti+1 Ti−1 − 2Tin+1 + Ti+1
−α (1 − β) +β = 0 (6.39)
∆x2 ∆x2

Defining operators
CHAPTER 6. WEIGHTED RESIDUAL METHODS 105

 
1 2 1
Mx = , ,
6 3 6
 
1 −2 1
Lxx = , ,
∆x2 ∆x2 ∆x2

we can write (6.39) in a more compact form

Mx ∆Tin+1  
− α (1 − β) Lxx Tin + βLxx Tin+1 = 0 (6.40)
∆t
Comparison with the finite difference method suggests that the main difference to the finite ele-
ment method is the distribution of the time derivative over adjacent nodes. The above equation is
reminiscent of the general two-level scheme introduced earlier. This scheme is recovered by using
the finite difference mass operator

Mxf d = (0, 1, 0)

Finally (6.40) can be cast into the equation

(Mx − ∆tαβLxx ) Tin+1 = [Mx − ∆tα (1 − β) Lxx ] Tin (6.41)

which is an implicit equation for T n+1 . Note

• for β = 0 the finite difference method generates an explicit method while the finite element
method yields an implicit algorithm;
• the matrix defined by Mx − ∆tαβLxx is tridiagonal and can be solved by the Thomas algo-
rithm (as in the case of Sturm.f);
• the symmetry of Mx and Lxx allows to construct an explicit scheme for ∆t = ∆x2 / (6αβ);
• equation (6.41) is consistent with the diffusion equation and unconditionally stable for β ≥
0.5.

Viscous flow

Stationary viscous flow through a rectangular cross section (in the x, y plane, Figure ) can be
described by the the z component of the momentum equation
 
∂p ∂2w ∂2w
=µ + (6.42)
∂z ∂x2 ∂y 2
where the first term is the pressure gradient which drives the flow and w is the velocity profile of
the flow. The problem is actual three-dimensional but is the pressure gradient is known or can be
CHAPTER 6. WEIGHTED RESIDUAL METHODS 106

prescribed one can use (6.42) to determine the flow profile in the cross section of the duct. In many
problems it is an advantage to normalize the basic equation. Since x ∈ [−a, a] and y ∈ [−b, b] we
use as normalization

x y w
x
e= , ye = , w
e=
a b w0
substitution in (6.42) yields
 2 2 !
2
∂p µw0 b ∂ we ∂ w e
= 2 2
+
∂z b a ∂e
x y2
∂e

such that the choice w0 = −µ/ (b2 ∂p/∂z) yields


 2 2
b ∂ we ∂2w e
2
+ +1=0 (6.43)
a ∂e
x y2
∂e
with the boundary conditions w
e = 0 at x = ±1 and y = ±1.

Similar to the procedure for the Sturm-Liouville equation and the diffusion equation we introduce
the solution

N
X
w
e= wi φi (x, y)
i=1
P  
This yields the residual R = N 2 2 2 2
i=1 wi (b/a) ∂ φi /∂x + ∂ φi /∂y
2
+ 1 and using the Galerkin
method generates the equation

N Z  2 2
Z ! Z 1Z 1
X 1
b 1
∂ φi ∂ 2 φi
wi + φm dxdy = − φm dxdy
i=1 −1 −1 a ∂x2 ∂y 2 −1 −1

N
"Z   x=1 Z 1 y=1 # or
X 1 2
b ∂φi ∂φi
wi φm dy + φm dx
i=1 −1 a ∂x x=−1 −1 ∂y y=−1
N Z 1 Z 1  2 ! Z 1Z 1
X b ∂φi ∂φm ∂φi ∂φm
− wi + dxdy = − φm dxdy.
i=1 −1 −1 a ∂x ∂x ∂y ∂y −1 −1
CHAPTER 6. WEIGHTED RESIDUAL METHODS 107

For the chosen boundary conditions the first two integral are zero such that the resulting equation
can be written as

BW = G (6.44)
with

Z Z  2 !
1 1
b ∂φi ∂φm ∂φi ∂φm
bmi = − + dxdy (6.45)
−1 −1 a ∂x ∂x ∂y ∂y
Z 1 Z 1
gm = φm dxdy (6.46)
−1 −1

In the following we replace the single index i with a pair k, l representing the x and y coordinates.
The indices k and l range from 2 to nx−1 and from 2 to ny−1 respectively because the boundary
condition imply that the coefficient of the shape function at the boundaries is zero. The x integra-
tion of the first term in (6.45) yields the operator Lxx and the y integration of this term yield the
operator My with

wk−1,l − 2wk,l + wk+1,l


Lxx wk,l = (6.47)
∆x2
1 2 1
My wk,l = wk,l−1 + wk,l + wk,l+1 (6.48)
6 3 6
such that equation (6.44) assumes the form
"  #
2
b
My ⊗ Lxx + Mx ⊗ Lyy wk,l = −1 (6.49)
a

with

   
1 wk−1,l−1 − 2wk,l−1 + wk+1,l−1 2 wk−1,l − 2wk,l + wk+1,l
My ⊗ Lxx wk,l = +
6 ∆x2 3 ∆x2
 
1 wk−1,l+1 − 2wk,l+1 + wk+1,l+1
+ (6.50)
6 ∆x2
   
1 wk−1,l−1 − 2wk−1,l + wk−1,l+1 2 wk,l−1 − 2wk,l + wk,l+1
Mx ⊗ Lyy wk,l = +
6 ∆y 2 3 ∆y 2
 
1 wk+1,l−1 − 2wk+1,l + wk+1,l+1
+ (6.51)
6 ∆y 2

and similar for Mx ⊗Lyy wk,l . In a corresponding finite difference approach we would have M x,f d =
(0, 1, 0).
Notes:
CHAPTER 6. WEIGHTED RESIDUAL METHODS 108

• The operator Lxx and My are commutative. The result does not depend on the order the
integration in (6.47) is executed.

• The method provides a straightforward way to employ finite element methods similar to
finite difference methods.

The result provides a simple equation which can be used with SOR to solve the coefficients for the
shape functions. Solving equation (6.49) for wk,l yields

∗ 3
wk,l = [1. + c1 (wk−1,l−1 + wk+1,l−1 + wk−1,l+1 + wk+1,l+1 )
4c0
+ c2 (wk−1,l + wk+1,l ) + c3 (wk,l−1 + wk,l+1 )]

with

 2
b 1 1
c0 = 2
+
a ∆x ∆y 2
1
c1 = c0
6
 2
b 2 1
c2 = 2

a 3∆x 3∆y 2
 2
b 1 2
c3 = − +
a 3∆x2 3∆y 2

With the usual SOR method the solution is iterated using

n+1 n ∗ n

wk,l = wk,l + λ wk,l − wk,l

The program duct.f can be found on the course web page. To provide a reference for the approxi-
mate solution the exact solution is given by
 
 2 XN N
X (i+j)/2−1    
8 (−1)
 h iπx jπy 
w
e= i cos cos
π 2 i=1,3,5.. j=1,3,5.. ij ib 2 + j 2 2 2
a

A second important measure for this problem is the total flow rate q, i.e., the flow integrated over
the cross sectional area
 
 3 X N N
X
8  1
q=2 2
h  i
π 2
i=1,3,5.. j=1,3,5.. i j
2 ib 2
+j 2
a
CHAPTER 6. WEIGHTED RESIDUAL METHODS 109

Table 6.6: Input parameters for the program duct.f


Variable Value Description
me 2 method: 1-linear elements, 2-3pt cent dif:
nem 25 no terms in exact solution
ipr 1 ipr=0, prints solutions to the output file duct.out
niter 800 max no iterations for SOR
bar 1.0e-0 aspect ratio a/b for channel
eps .1e-5 tolerance par for SOR
om 1.5e0 relaxation parameter (SOR), λ

The structure is similar to that of Fivol.f. The program package uses an include file ductin which
declares all variables and common blocks and it make use of a parameter file duct.dat. Variables
declared in the parameter file are summarized in Table 6.6.
Additional variables used in the program are listed in Table 6.7.

Table 6.7: Other variables used in the program duct.f


Variable Description
nx, ny Number of nodes in the x and y directions
x, y x and y coordinates
dx, dy grid separation in the x and y directions
flow, flowex iterated flow rate and exact flow rate
f, fexact iterated and exact solutions
rms RMS error

The program generates an ASCII output file which lists basic parameter and results including the
iterated solution and the exact solution and the correspond flow rates and errors. In addition the
program generates a binary file which can be used as input for graphics routines. The supplied IDL
program product.pro reads this this file and plots the iterated and exact solutions.
The results of this program indicate that the error decreases with ∆x2 and ∆y 2 . The result for using
the finite element method (fem) are very similar to those of the finite difference method (fdm). The
error is very similar with slightly smaller errors for fdm while the flow rate is slightly closed to the
exact flow rate for fem.

Distorted computational domains - Isoparametric mapping

The finite element method is very comparable to finite differences for Cartesian grids. However the
strength or the finite element method is the ease to apply it to distorted domains and complicated
geometries. It is illustrated that the introduction of local coordinates is a particular strength to eval-
uate the integrals involving shape functions. There are various geometries to choose basic elements
such as triangular, rectangular, or tetrahedral. The various method allow a simple grid refinement
technique by just dividing a basic element into several new element of the same geometry.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 110

The advantage of the finite element method is that the coordinates themselves can be described by
the shape functions. Figure shows a distorted grid with rectangular elements and the mapping into
a local (ξ, η) coordinate system.

η=+1



η


ξ=+1

ξ=−1
ξ


η=−1


Figure 6.9: Isoparametric mapping.

The transformation between (x, y) coordinates and (ξ, η) can be defined by

4
X 4
X
x= φl (ξ, η) xl and y = φl (ξ, η) yl (6.52)
l=1 l=1

with (xl , yl ) as the x, y coordinates of the corner numbered l and φl (ξ, η) is the shape function with
the value of 1 at the corner l. The transformation affects the evaluation of the weighted residual
integral. Consider Laplace’s equation ∆Ψ = 0 as an example. The Galerkin fem produces a
system of linear equations

BW = G

with
Z  
∂φi ∂φm ∂φi ∂φm
bm,i = + dxdy
area ∂x ∂x ∂y ∂y

Let us consider the first term


Z Z
∂φi ∂φm
I= dxdy
∂x ∂x

The derivative ∂/∂x can be computed as

∂ ∂x ∂ ∂y ∂
= +
∂ξ ∂ξ ∂x ∂ξ ∂y
CHAPTER 6. WEIGHTED RESIDUAL METHODS 111

such that ∂φ/∂x and ∂φ/∂y are related to ∂φ/∂ξ and ∂φ/∂η by

  
∂φ/∂ξ ∂φ/∂x
= [J] (6.53)
∂φ/∂η ∂φ/∂y
 
∂x/∂ξ ∂y/∂ξ
with [J] = (6.54)
∂x/∂η ∂y/∂η

where [J] is the Jacobian. The derivatives in the Jacobian can easily be computed from the map-
ping (6.52), e.g.,

4  
∂y X ∂φl
= (ξ, η) yl
∂ξ ∂ξ
l=1

From (6.53) one can determine the following explicit formulation for ∂φ/∂x
 
∂φi 1 ∂y ∂φi ∂y ∂φi
= − (6.55)
∂x det J ∂ξ ∂η ∂η ∂ξ

Exercise: Derive equation (6.55).

Using dxdy = det J dξdη one obtains


Z 1 Z 1   
1 ∂y ∂φi ∂y ∂φi ∂y ∂φm ∂y ∂φm
I= − − dξdη
−1 −1 det J ∂ξ ∂η ∂η ∂ξ ∂ξ ∂η ∂η ∂ξ

All derivatives in this formulation are known because of the simple form that the φ l assume. The
integral can evaluated numerically or analytically.

6.4 Spectral method


The Galerkin spectral method is similar to the traditional Galerkin method but uses a suitable set
of orthogonal functions such that
Z 
6= 0 for k =
6 l
φk φl dx
= 0 for k = l

Example for such functions are Fourier series, Legendre, or Chebyshev polynomials. In this sense
the spectral methods can be considered global methods rather than local as in the case of finite
differences or finite elements.
CHAPTER 6. WEIGHTED RESIDUAL METHODS 112

6.4.1 Diffusion equation


Consider as an example the diffusion equation

∂T ∂2T
=α 2
∂t ∂x
for x ∈ [0, 1] and the boundary and initial conditions

T (0, t) = 0, T (1, t) = 1, and T (x, 0) = sin (πx) + x

Approximate solution

N
X
T = sin (πx) + x + aj (t) sin (jπx)
j=1

where the aj (t) are the unknown coefficients which need to be determined. This yields the residual

N 
X 
daj 2
R= + α (jπ) aj sin (jπx) + απ 2 sin (πx)
j=1
dt
R
Evaluation of the weighted integral R sin (mπx) dx yields

N 
X Z 1 Z 1
daj 2 2
+ α (jπ) aj sin (jπx) sin (mπx) dx + απ sin (πx) sin (mπx) dx = 0
j=1
dt 0 0

The integral yield

Z 1 
1/2 for j = m
sin (jπx) sin (mπx) dx =
0 0 for j 6= m
Z 1 
1/2 for m = 1
sin (πx) sin (mπx) dx =
0 0 for m 6= 1

which yields

dam
+ α (jπ)2 am + rm = 0, m = 1, ..., N
dt 
απ 2 for m = 1
rm =
0 for m 6= 1
CHAPTER 6. WEIGHTED RESIDUAL METHODS 113

with the solution

2
a1 = e−απ t − 1
am = 0

The solution for T is therefore

2
T = sin (πx) e−απ t + x

This is in fact the exact solution, however, this has been obtained for this particular set of initial
and boundary conditions. For a more realistic case of

T (x, 0) = 5x − 4x2

and replacing sin (πx) + x with 5x − 4x2 in the trial solution one obtains
 16α
m
for m = 1, 3, 5, ...
rm =
0 for m = 2, 4, 6, ...

With forward time differencing dam /dt = (an+1 n


m − am ) /∆t one obtains

 
an+1
m = anm − ∆t α (jπ)2 anm + rm

Table 6.8: Value of the solution at x = 0.5 for different times


t N=1 N=3 n=5 Exact solution
0 1.5 1.5 1.5 1.5
0.1 0.851 0.889 0.881 0.885
0.2 0.610 0.648 0.640 0.643

Table 6.8 shows the value of T for selected times and different values of N at x = 0.5. Note that
the error is caused by two sources one of which is the limited accuracy of the representation in
terms of the base functions and the other is the error in the temporal integration.
Notes:

• The spectral method achieves relatively high accuracy with relatively few unknowns.

• For Dirichlet conditions the method reduces the problem to a set of ordinary differential
equations

• Treatment of nonlinear terms is not yet clear (and can be difficult)


CHAPTER 6. WEIGHTED RESIDUAL METHODS 114

6.4.2 Neumann boundary conditions


Let us now consider the diffusion equation again, however, for Neumann boundary conditions.
Specifically the initial and boundary conditions are

T (x, 0) = 3 − 2x − 2x2 + 2x3 ,


∂T
(0, t) = −2.0 and T (1, t) = 1.0
∂x

Different from the prior example it is not attempted to incorporate the initial and boundary condi-
tions into the approximate solution. Rather a general trial solution is used

N
X
T (x, t) = b0 (t) + [aj (t) sin (j2πx) + bj (t) cos (j2πx)]
j=1

The boundary conditions require the following relations for the coefficients

N
X N
X
aj 2πj = −2 , bj = 1
j=1 j=0

which can be used to eliminate aN and bN from the the approximate solution:

X j N −1 N
X −1
1
aN = − − aj , bN = 1 − bj
πN j=1
N j=0

This yields for the approximate solution

N
X −1  
1 j
T (x, t) = cos (N 2πx) − sin (N 2πx) + aj (t) sin (j2πx) − sin (N 2πx)
πN j=1
N
N
X −1
+ bj (t) [cos (j2πx) + cos (N 2πx)]
j=0

This implies that the terms in square brackets now need to be considered as the base functions or

m
wma = sin (m2πx) − sin (N 2πx) , 1 ≤ m ≤ N − 1
N
w mb = cos (m2πx) + cos (N 2πx) , 0 ≤ m ≤ N − 1
CHAPTER 6. WEIGHTED RESIDUAL METHODS 115

Substitution into the the diffusion equation yields the residual

N
X −1     
daj 2 daj 2 j
R = + α (2πj) aj sin (2πjx) − + α (2πN ) aj sin (2πN x)
j=1
dt dt N
N
X −1     
dbj 2 dbj 2
+ + α (2πj) bj cos (2πjx) + + α (2πN ) bj cos (2πN x)
j=0
dt dt
+α (2πN )2 cos (2πN x) − α4πN sin (2πN x)

Evaluating the weighted residuals yields

N −1  
dam 2 m X j daj 2
+ α (2πm) am + + α (2πN ) aj = −α4πN (6.56)
dt N j=1 N dt
N
X −1  
dbm 2 dbj
+ α (2πm) bm + + α (2πN ) bj = α (2πN )2
2
(6.57)
dt j=0
dt
N −1  
db0 X dbj
2 + + α (2πN ) bj = α (2πN )2
2
(6.58)
dt j=0
dt

Equations (6.56) for am are linearly independent from equations (6.57) and can be solved indepen-
dently. To solve for the time integration it is necessary, however, to factorize the the system and
carry out a matrix multiplication for each time step. Start values for am and bm are easily obtained
using the trial solution for the initial condition.
Note, since the problem is linear the factorization is only needed once because the subsequent time
steps always use the same matrix (coefficients in equations (6.56) to (6.58) are constant).

6.4.3 Pseudospectral method


Main disadvantage of spectral method is large computational effort particularly for nonlinear prob-
lems. An alternative to Galerkin method which basically solve the diffusion equation in spectral
space is to use a mixture of spectral and real space. An frequently used method in this category is
the pseudospectral approach which uses the collocation method. The example is again the diffusion
equation

∂u ∂2u
−α 2 =0
∂t ∂x
subject to the boundary and initial conditions

u (−1, t) = −1, u (1, t) = 1, u (x, 0) = sin πx + x


CHAPTER 6. WEIGHTED RESIDUAL METHODS 116

When compared to the spectral method, the pseudospectral method does not determine the solution
entirely in spectral space. Recall that the solution for the Galerkin spectral method is found by
integrating the spectral coefficients. For a linear problem this is feasible but a nonlinear problem
requires the inversion of a large matrix for each time step.
The pseudo spectral method often uses an expansion

N
X +1
u (x, t) = ak (t) Tk−1 (x)
k=1

consists of three basic steps:

• Given a solution unj one determines the spectral coefficients ak . This transforms the problem
from physical to spectral space. Using Chebichev Polynomials the step  canbe done with a
fast Fourier Transform (FFT) if the collocation points are xj = cos π(j−1) N
(time efficient
with number of operations proportional to N log N ).

• The next step is to evaluate the second derivative ∂ 2 u/∂x2 from the coefficients ak which
makes use of recurrence relations and is also very efficient:

N
X +1
∂u (1)
= ak Tk−1 (x)
∂x k=1
N
X +1
∂2u (2)
= ak Tk−1 (x)
∂x2 k=1

• The final step then is to integrate in time. Different from the Galerkin spectral method this is
n
∂2u
done in real space directly for u: un+1
j = u n
j + α∆t ∂x2 thereby avoiding to have to solve
j
a large system of equations for the time derivatives of dak /dt.

6.5 Summary on different weighted residual methods:


• local approximations: finite difference, finite volume, finite element

– irregular domains
– variable grid resolution
– boundary conditions relatively simple

• global base function: spectral methods

– high accuracy
CHAPTER 6. WEIGHTED RESIDUAL METHODS 117

– arbitrary often differentiable


– Galerkin method computationally expensive for nonlinear problems
– Pseudospectral method employs spectral space only to determine spatial derivatives
(much more efficient)

You might also like