DOUBLE EXPONENTIAL
TRANSFORMATION METHODS IN
NUMERICAL INTEGRATION WITH
APPLICATIONS IN VOLTERRA
INTEGRAL EQUATIONS
Final year project submitted to the Dept. of Mathematics of the
University of Portsmouth
May 2006
By
Sean Male
B.Sc. (Hons) Mathematics with Computing
Supervisor: Dr. Athena Makroglou
Second Reader: Dr. Patrick Beullens
Contents
Abstract
8
Acknowledgements
9
1 Introduction
1.1 Numerical Integration . . . . . . . . . . . . . .
1.1.1 Regions involving ∞ (and −∞) . . . . .
1.2 Use of Computers . . . . . . . . . . . . . . . . .
1.3 Quadrature . . . . . . . . . . . . . . . . . . . .
1.4 Newton-Cotes Quadrature . . . . . . . . . . . .
1.4.1 Types of Newton-Cotes Formula . . . . .
1.4.2 Closed Newton-Cotes . . . . . . . . . . .
1.4.3 Open Newton-Cotes . . . . . . . . . . .
1.5 Trapezium Rule . . . . . . . . . . . . . . . . . .
1.6 Simpson’s Rule . . . . . . . . . . . . . . . . . .
1.6.1 Simple Simpson’s Rule . . . . . . . . . .
1.6.2 Composite Simpson’s Rule . . . . . . . .
1.7 Gaussian Quadrature . . . . . . . . . . . . . . .
1.7.1 Gaussian Weight Functions . . . . . . .
1.7.2 Gaussian Error . . . . . . . . . . . . . .
1.8 Other types of Quadrature . . . . . . . . . . . .
1.9 Integral Equations . . . . . . . . . . . . . . . .
1.9.1 Kernel Functions for Integral Equations .
1.10 Volterra Equations . . . . . . . . . . . . . . . .
1.11 Transformation of Variables . . . . . . . . . . .
1.12 Aim of Project . . . . . . . . . . . . . . . . . .
1.13 Organisation of the Project . . . . . . . . . . .
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
10
11
11
11
12
12
12
12
12
13
13
14
14
15
15
16
16
17
17
17
18
18
2 Background Material
2.1 Numerical Integration . . . . . . .
2.2 Trapezium Rule . . . . . . . . . . .
2.2.1 Simple Trapezium Rule . . .
2.2.2 Composite Trapezium Rule
2.2.3 Trapezium Rule Error . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Volterra Integral Equations
3.1 Volterra Equations . . . . . . . . . . . . . . .
3.1.1 General Volterra Equation . . . . . . .
3.1.2 Volterra Equation of the First Kind . .
3.1.3 Volterra Equation of the Second Kind .
3.1.4 Volterra Equations of the Third Kind .
3.1.5 Volterra Equations on the region [0, xn ]
3.1.6 Trapezium Rule for Volterra Equations
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4 Transformation of Variables
4.1 Idea of Transformation of Variables . . . . . . . . . .
4.2 Transformation Methods . . . . . . . . . . . . . . . .
4.2.1 Definition of Sigmoidal Transformation . . . .
4.2.2 Some Examples of Sigmoidal Transformations
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
20
20
21
21
22
22
.
.
.
.
.
.
.
23
23
23
23
24
24
24
25
.
.
.
.
27
27
28
28
29
5 Application of Double Exponential Transformations to Numerical Integration
5.1 Double Exponential Transformations . . . . . . . . . . . . . . . .
5.1.1 Benefits of Double Exponential Transformations . . . . . .
5.1.2 Some Examples of Double Exponential Transformations . .
5.2 Application of Double Exponential Transformations . . . . . . . .
30
30
32
33
34
6 Application of Double Exponential Transformation to the Solution of Volterra Integral Equations
37
6.0.1 Si function . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7 Numerical Results
7.1 Numerical Integration . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Volterra Integral Equations . . . . . . . . . . . . . . . . . . . . .
7.3 Computational Details . . . . . . . . . . . . . . . . . . . . . . . .
3
40
40
41
42
7.3.1 Numerical Integration . . . . . . . . . . . . . . . . . .
7.3.2 Volterra Integral Equations . . . . . . . . . . . . . . .
7.3.3 Example D . . . . . . . . . . . . . . . . . . . . . . . .
7.4 Results for Numerical Integration . . . . . . . . . . . . . . . .
R1
7.4.1 Results for I1 = 0 ex dx . . . . . . . . . . . . . . . . .
R1
7.4.2 Results for I2 = 0 x(1 − x)α dx, α = 0.1 . . . . . . . .
R1
7.4.3 Results for I2 = 0 x(1 − x)α dx, α = 0.3 . . . . . . . .
R1
7.4.4 Results for I2 = 0 x(1 − x)α dx, α = 0.5 . . . . . . . .
R1
7.4.5 Results for I2 = 0 x(1 − x)α dx, α = 0.7 . . . . . . . .
R1
7.4.6 Results for I2 = 0 x(1 − x)α dx, α = 1 . . . . . . . . .
R 1 dx
7.4.7 Results for I3 = 2 0 (1+x
2) . . . . . . . . . . . . . . . .
7.5 Results for Volterra Integral Equations . . . . . . . . . . . . .
Rx
7.5.1 Results for y(x) = x2 − 0 [10e−(x−s) − 6e−2(x−s) ]g(s)ds
Rx
7.5.2 Results for y(x) = 1 + 0 (x − s)y(s)ds0 ≤ x ≤ 1 . . . .
Rx
7.5.3 Results for y(x) = x + 0 (s − x)y(s)ds0 ≤ x ≤ 1 . . . .
7.6 Evaluation of Results . . . . . . . . . . . . . . . . . . . . . . .
7.6.1 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . .
7.6.2 Convergence . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
42
42
43
45
45
46
47
48
49
50
51
52
53
54
55
56
57
57
8 Some Proofs
8.1 Convergence of Quadrature Methods for Volterra Integral Equations
8.1.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . .
8.2 Convergence of Double Exponential Transformation Methods for
Volterra Integral Equations . . . . . . . . . . . . . . . . . . . . .
8.3 Theorem 8.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
59
59
9 Conclusions and Ideas for Further
9.1 Summary . . . . . . . . . . . . .
9.2 Conclusion . . . . . . . . . . . . .
9.3 Ideas for further research . . . . .
68
68
69
69
Research
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
63
64
Bibliography
71
A Program files and Project File
73
B Truncation Estimate Plots
75
4
List of Tables
1.1
1.2
Weight Functions [2, p.51] . . . . . . . . . . . . . . . . . . . . . .
Kernel Functions [2, pp51] . . . . . . . . . . . . . . . . . . . . . .
15
17
7.1
7.2
7.3
Results for trapezium rule for example A . . . . . . . . . . . . . .
Results for trapezium rule used on sigmoidal transformed example A
Results for double exponential transformation method for example
A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparison of results, Example A . . . . . . . . . . . . . . . . . .
Results for trapezium rule for example B (α = 0.1) . . . . . . . .
Results for trapezium rule used on sigmoidal transformed example
B (α = 0.1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Results for double exponential transformation method for example
B (α = 0.1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparison of results, Example B (α = 0.1) . . . . . . . . . . . .
Results for trapezium rule for example B (α = 0.3) . . . . . . . .
Results for trapezium rule used on sigmoidal transformed example
B (α = 0.3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Results for double exponential transformation method for example
B (α = 0.3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparison of results, Example B (α = 0.3) . . . . . . . . . . . .
Results for trapezium rule for example B (α = 0.5) . . . . . . . .
Results for trapezium rule used on sigmoidal transformed example
B (α = 0.5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Results for double exponential transformation method for example
B (α = 0.5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparison of results, Example B (α = 0.5) . . . . . . . . . . . .
Results for trapezium rule for example B (α = 0.7) . . . . . . . .
45
45
7.4
7.5
7.6
7.7
7.8
7.9
7.10
7.11
7.12
7.13
7.14
7.15
7.16
7.17
5
45
45
46
46
46
46
47
47
47
47
48
48
48
48
49
7.18 Results for trapezium rule used on sigmoidal transformed example
B (α = 0.7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.19 Results for double exponential transformation method for example
B (α = 0.7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.20 Comparison of results, Example B (α = 0.7) . . . . . . . . . . . .
7.21 Results for trapezium rule for example B (α = 1) . . . . . . . . .
7.22 Results for trapezium rule used on sigmoidal transformed example
B (α = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.23 Results for double exponential transformation method for example
B (α = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.24 Comparison of results, Example B (α = 1) . . . . . . . . . . . . .
7.25 Results for trapezium rule for example C . . . . . . . . . . . . . .
7.26 Results for trapezium rule used on sigmoidal transformed example C
7.27 Results for double exponential transformation method for example C
7.28 Comparison of results, Example C . . . . . . . . . . . . . . . . . .
7.29 Results for trapezium rule for example D . . . . . . . . . . . . . .
7.30 Results for double exponential transformation method for example
D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.31 Comparison of results, Example D . . . . . . . . . . . . . . . . . .
7.32 Results for trapezium rule for example E . . . . . . . . . . . . . .
7.33 Results for double exponential transformation method for example E
7.34 Comparison of results, Example E . . . . . . . . . . . . . . . . . .
7.35 Results for trapezium rule for example F . . . . . . . . . . . . . .
7.36 Results for double exponential transformation method for example F
7.37 Comparison of results, Example F . . . . . . . . . . . . . . . . . .
7.38 Some Convergence results for numerical integration . . . . . . . .
7.39 Comparison of Approximate Convergence . . . . . . . . . . . . . .
7.40 Comparison of Approximate Convergence . . . . . . . . . . . . . .
7.41 Estimated Convergence of Double Exponential Transformations .
A.1 Matlab Program Files . . . . . . . . . . . . . . . . . . . . . . . .
A.2 Matlab Function Files . . . . . . . . . . . . . . . . . . . . . . . .
6
49
49
49
50
50
50
50
51
51
51
51
53
53
53
54
54
54
55
55
55
56
57
58
58
73
74
List of Figures
1.1 Truncated graph for regions including −∞ and/or ∞ . . . . . . .
1.2 Simpson’s Approximation . . . . . . . . . . . . . . . . . . . . . .
11
13
2.1
Trapezium Approximation . . . . . . . . . . . . . . . . . . . . . .
21
3.1
Interval Division for Volterra Equations . . . . . . . . . . . . . . .
24
B.1 Graph for Example A . . . . . . . . . . . . . . . . . . . . . . . . .
B.2 Graph for Example B . . . . . . . . . . . . . . . . . . . . . . . . .
B.3 Graph for Example C . . . . . . . . . . . . . . . . . . . . . . . . .
75
76
77
7
Abstract
This project in concerned with double exponential transformation methods in
numerical integration, and their application in solving integral equations.
It begins with a look at numerical integration and the methods that can be
used to get approximate solutions, including methods such as the trapezium rule.
Then it moves on to the study of transformation methods for achieving a
better approximation of these solutions.
Then, double exponential transformation methods are looked at to see if they
produce even better approximate solutions.
Programs were developed to test the accuracy of the various methods used in
this project. All programming has been done in Matlab 6.5.
Double exponential transforms were applied to numerical integration and
Volterra integral equations.
Two convergence proofs for integral equations are included in addition to the
numerical results.
This project ends with the comparison of the double exponential results with
those obtained by standard methods.
It was found that the double exponential transformation methods were far
better in terms of accuracy than the other methods used in this project for all of
the examples used.
The main references used for this project were:
• (Muhammad, Nurmuhammad, Mori, and Sugihara, 2005)
• (Mori, 1985)
• (Linz, 1985)
• (Delves and Mohamed, 1985)
The project was written in LATEX
8
Acknowledgements
I would especially like to thank Dr Athena Makroglou for her help, support, and
Matlab knowledge.
I would also like to thank my sons for their patience in reference to my
’hogging’ the pc so often, and their silence whilst I worked on this project.
Many thanks go to my fiance, Suzanne Lewis. Her support has been immeasurable. Her realism, and her belief in me, have both been a crutch in bad times.
Her willingness to take on just about all of my family duties freed up hours I
previously wouldn’t have had.
9
Chapter 1
Introduction
The introduction contains a short overview of each of: numerical integration;
methods of solution used for such; integral equations; types of integral equations;
methods of solution used for such; transformation of variables.
It also describes the aim of the project and the organisation of the project.
1.1
Numerical Integration
Numerical integration is one of the most studied topics within the numerical
analysis discipline.
The motivation for undertaking numerical integration is that it is important
for the numerical solution of various types of equations, such as partial differential
equations and integral equations. With the use of computers it is now possible
to achieve results far more quickly than is possible by hand.
It also has direct applications in fields such as engineering and computer
graphics.
Numerical integration constitutes a broad family of algorithms for calculating the numerical value of definite integrals. Now-a-days it combines numerical
analysis with computing to achieve approximate evaluations of integrals of the
form:
Z
b
f (x)dx
(1.1)
a
with various choices for the limits a and b. Such choices for these limits may
include: a, b both finite; a = 0, b = −∞; a = −∞, b = ∞.
10
1.1.1
Regions involving ∞ (and −∞)
For intervals involving −∞ and/or ∞, it is necessary to truncate the function at
some suitable point or points, say z and −z.
Figure 1.1: Truncated graph for regions including −∞ and/or ∞
1.2
Use of Computers
Many mathematical problems result in the necessity to use computers. This has
spawned the fields of computer science and numerical computation, the use of
computers to grind through numerical iterations at great speed.
With the use of fast algorithms it is possible to quickly converge to near
accurate approximations.
Since the invention of computers in the 1940s, numerical computation is a
large branch of mathematics, and has been providing highly accurate numerical
solutions to most of the classical mathematical problems from science.
Many of the algorithms that facilitated these solutions were invented in the
last 50 years. Algorithms are traditionally thought of as loops (iterations) performed over and over until stopping criteria are satisfied (such as a certain number
of loops, or a certain amount of time).(Trefethan, 2006, 2-4, 17-18)
1.3
Quadrature
Quadrature is a term used for numerical integration of first order integrals, although the meaning of quadrature is understood for higher order integration as
well.
A large class of quadrature rules can be derived by constructing interpolating
functions, typically polynomials, which are easy to integrate.
11
1.4
Newton-Cotes Quadrature
Newton-Cotes formulas are a group of formulas used for numerical integration.
It is assumed that the value of a function f is known at equally spaced points xi ,
for i = 0, ..., n.
1.4.1
Types of Newton-Cotes Formula
There are two types of Newton-Cotes formula:
• closed, which uses all of the points (trapezium, Simpsons, 3/8).
• and open, which does not use the end points (midpoint).
Trapezium rule and Simpson’s rule are two examples of the closed NewtonCotes formulas.
1.4.2
Closed Newton-Cotes
The closed Newton-Cotes formula using n + 1 points xi is stated as:
Z
b
f (x)dx ≈ h
a
1.4.3
n
X
wi f (xi )
(1.2)
i=0
Open Newton-Cotes
The open Newton-Cotes formula ousing n − 1 points xi is stated as:
Z
b
f (x)dx ≈ h
a
1.5
n−1
X
wi f (xi )
(1.3)
i=1
Trapezium Rule
The trapezium rule approximates the region under the function f (x) by a trapezium and calculating its area. The trapezium rule is discussed more fully in chapter
2 because it is used in this project.
12
1.6
Simpson’s Rule
Simpson’s rule is more accurate than the Trapezium rule.
It works by finding a quadratic polynomial P (x) which takes the same values
as f (x) at a, b, and the midpoint m = (a + b)/2, to give an approximation to
f (x).
Figure 1.2: Simpson’s Approximation
1.6.1
Simple Simpson’s Rule
(Baker, 1997, 4)
Z
b
f (x)dx ≈
a
b−a
h
[f (a) + 4f (
) + f (b)]
3
2
(1.4)
with: h = b−a
,a ≤ ξ ≤ b
2
Its error is given by:
error = −
h5 (4)
f (ξ)
90
13
(1.5)
1.6.2
Composite Simpson’s Rule
(Cheney and Kincaid, 2004, p.238)
n
b
Z
a
n
−1
2
2
X
X
h
f (x)dx ≈ [f (x0 ) + 2
f (x2j ) + 4
f (x2j−1 ) + f (xn )],
3
j=1
j=1
(1.6)
where n is the number of subintervals which splits [a, b] with n an even number,
is the length of each subinterval, and xi = a + ih for i = 0, 1, ..., n − 1, n,
h = b−a
n
in particular, x0 = a and xn = b.
Its error is given by:
error = −
h4
(b − a)f (4) (ξ),
180
where h is the subinterval length (step length), given by h =
ξ≤b
1.7
(1.7)
b−a
,
n
and a ≤
Gaussian Quadrature
(Cheney & Kincaid, 2004, pp.247-249)
When the evaluation points are not equally spaced Gaussian quadrature formulas (named after Carl Friedrich Gauss) can be used to evaluate integrals of the
form:
Z
b
f (x)dx
(1.8)
a
Although a weight function must be added in, giving:
Z
b
w(x)f (x)dx
(1.9)
a
It yields exact results for polynomials of degree 2n−1, by the careful selection
of the points and weights, xi and wi . The domain of integration is usually taken
as [−1, 1].
Z
1
f (x)dx ≈
−1
n
X
i=1
14
wi f (xi )
(1.10)
The evaluation points are the roots of an orthogonal polynomial.
Before applying the Gaussian quadrature rule to integrals over an interval
[a, b] we must transform it into an integral over the interval [−1, 1], thus:
b
Z
a
b−a
f (t)dt =
2
Z
1
f(
−1
b−a
a+b
x+
)dx
2
2
(1.11)
This gives the following approximation:
n
b−aX
b−a
a+b
wi f (
xi +
)
2 i=1
2
2
1.7.1
(1.12)
Gaussian Weight Functions
Various weight functions have been established for various intervals.
Table 1.1: Weight Functions [2, p.51]
Weight Function w(x)
Name
Interval
[-1,1]
1
Legendre
2 − 12
[−1, 1]
(1 − x )
Chebyshev, 1st kind
2 12
(1 − x )
Chebyshev, 2nd kind
[−1, 1]
α
β
[−1, 1]
(1 − x) (1 + x) , α, β > −1
Jacobi
e−x
Laguerre
[0, ∞)
[0, ∞)
xα e−x , α > −1
Generalized Laguerre
−x2
e
Hermite
(−∞, ∞)
1
(−∞, ∞)
Hyperbolic
cosine
cosh x
1.7.2
Gaussian Error
(Davis and Rabinowitz, 1967, pp.112-113)
The error of a Gaussian quadrature rule for an integral which has 2n derivatives is:
Z
b
w(x)f (x)dx −
a
n
X
wi f (xi ) =
i=1
f (2n) (ξ)
kpn k2
(2n)!
for some ξ in (a, b), where pn is the n-order orthogonal polynomial.
15
(1.13)
1.8
Other types of Quadrature
Other types of quadrature formulae include: Gregory-Newton; Gauss-Legendre;
Gauss-Chebychev; Gauss-Hermite; Jacobi’s method.
Further information on quadrature formulae can be obtained from: (Davis &
Rabinowitz, 1967); (Froberg, 1985); (Jerri, 1985); (Krommer and Ueberhuber,
1998); (Linz, 1985); (Cheney & Kincaid, 2004).
1.9
Integral Equations
An integral equation is one in which the unknown function occurs within an
integral sign. If the function is inside the integral only, then it is called an integral
equation of the first kind. If the function also appears outside the integral, then
it is called an integral equation of the second kind.
There are two main distinctive types of integral equation, Volterra equations,
and Fredholm equations.
• Fredholm equations deal with regions in which both limits of integration are
fixed,
• whereas, Volterra equations deal with those regions in which the upper limit
of integration is variable.
Both of these types of integral equation incorporate equations that are called
singular equations. This term is, unfortunately, not used consistently.
Some use the term singular to mean integral equations that can not be interpreted in the Riemann or Lebesgue ways, but must be considered as principal
value integrals. If an integrand is integrable but unbounded in an equation, they
are then called weakly singular equations.
Some use the term singular to mean any integral equation in which some of
the integrands are unbounded.
Methods of solution for integral equations include:
• Quadrature methods.
• Collocation methods.
• Transformation of variables methods.
• Transformation into ODE methods.
16
1.9.1
Kernel Functions for Integral Equations
The function K(x, s) in integral equations is called the kernel of the integral
equation.
Various kernel functions are used for various intervals. Here are just a few
examples.
Table 1.2: Kernel Functions [2, pp51]
Interval Kernel Function k(x, y)
Name
α
[-1,1]
|x − y| , α > −1
Algebraic
[−1, 1]
log |x − y|
Logarithmic
(−∞, ∞)
cosyx, sinyx, yR
Trigonometric, Fourier
coslx, sinlx, lN
Finite trigonometric, Fourier
[0, 2π]
1.10
Volterra Equations
Volterra equations are used for initial value problems, in particular, time-dependant
problems, or evolutionary problems (that is, problems that evolve, not necessarily
problems about evolution).
The idea or transformation of variables is to transform the given integrand
into a new one by changing the variable into a function that becomes simpler to
solve.
1.11
Transformation of Variables
The idea of transformation of variables is such that the variable in the integrand
is transformed into a function that makes the integrand simpler to solve.
More information can be found in: (Jerri, 1985, p.87) (Krommer & Ueberhuber, 1998, p.8) (Makroglou, 2004, 7)
17
1.12
Aim of Project
This projects aims to study double exponential transformations, and apply them
to numerical integration and to the numerical solution of Volterra integral equations.
This has been performed for integrals of the form:
Z
1
f (x)dx
(1.14)
0
This has also been done for integral equations of the form:
Z
y(x) = f (x) +
x
k(x, s)y(s)ds
(1.15)
0
(Volterra equations of the second kind)
The main references used are the research papers by:
• (Muhammad et al, 2005)
• (Mori, 1985)
All programming was done in Matlab 6.5.
1.13
Organisation of the Project
• Chapter 2. Background Material
Background material on numerical integration, why it is performed, and
some methods that are used to approximate results.
• Chapter 3. Volterra Integral Equations
Information on Volterra integral equations, the application of the trapezium
rule to them, and some examples of kernel functions for different regions of
integration.
• Chapter 4. Introduction to Transformation of Variables
Information about the idea behind variable transformation methods, and
some of the transformation methods used for numerical integration and the
numerical solution of integral equations.
18
• Chapter 5. Application of Double Exponential to numerical integration
Description of double exponential transformation methods, where the idea
comes from, and why they should be practical for numerical integration.
• Chapter 6. Application of Double Exponential Transformations to the Solution of Volterra Integral Equations.
Information about the application of double exponential transformations to
Volterra integral equations and why they should be performed.
• Chapter 7. Some Proofs
Some proofs of convergence and why double exponentials converge quicker.
• Chapter 8. Numerical Results
Some numerical results obtained for numerical integration of three examples using trapezium rule, sigmoidal transformations, and double exponential
transformations, together with comparisons of their errors.
Also, some numerical results obtained for the solution of integral equations
for two examples using trapezium rule, and double exponential transformations, together with comparisons of their errors.
• Chapter 9. Conclusions and Ideas for Further Research
A summary of the work in this project, conclusions that have been drawn
from the numerical results, and some ideas on how this project could be
expanded.
• Appendix A contains a list of the Matlab programs used in this project,
together with the .tex and .pdf files. All are included on the disk accompanying this project.
19
Chapter 2
Background Material
The following is background material on numerical integration and the trapezium
rule.
2.1
Numerical Integration
There are several reasons for carrying out numerical integration.
The integral may only be known at some points (this would be the case
with sampling). Some computer applications need numerical integration for this
reason.
A formula may be known, but it may be difficult or impossible to find an
2
integral of the equation, such as e(−t ) .
It may be possible to find the integral using symbolic mathematics, but it
may be easier to compute a numerical approximation than the integral itself (i.e.
if the integral is an infinite series or product).
Numerical integration constitutes a broad family of algorithms for calculating
the numerical value of a definite integrals. Now-a-days it combines numerical
analysis with computing to achieve approximate evaluations of integrals of the
form:
Z
b
f (x)dx
(2.1)
a
with various choices for the limits a and b.
Such choices for these limits may include:
a, b both finite; a = 0, b = ∞; a = −∞, b = ∞.
Numerical integration approximates f (x) by an interpolating polynomial of
20
degree n, say pn (x), and then uses this function for the integration. Use of a polynomial of degree 1 results in the simple trapezium rule (one of many quadrature
rules).
2.2
Trapezium Rule
The trapezium rule approximates the region under the function f (x), between
two points, by a trapezium and calculating its area.
Figure 2.1: Trapezium Approximation
The trapezium rule is preferable for rougher functions, and tends to become
extremely accurate when used to integrate periodic functions over their periods.
2.2.1
Simple Trapezium Rule
(Baker, 1997, 4)
Z
b
f (x)dx ≈
a
h
[f (a) + f (b)]
2
(2.2)
with: h = b − a, a ≤ ξ ≤ b
Its error is given by:
error = −
h3 (2)
f (ξ)
12
21
(2.3)
2.2.2
Composite Trapezium Rule
Z
a
b
n−1
b − a f (a) + f (b) X
b−a
f (x)dx ≈
(
+
))
f (a + k
n
2
n
k=1
(2.4)
It is usually written in a simpler form:
Z
b
f (x)dx ≈ h
a
n
X
wi f (xi )
(2.5)
i=0
and with weights: w0 , wn = 0.5, and wi = 1, i = 1, ..., n − 1.
with: h = b−a
n
The composite trapezium rule has been used in this project for the examples
in the Matlab programs. It has been used on its own and has been applied to
Sigmoidal transformations and Double Exponential transformations for some of
the examples.
2.2.3
Trapezium Rule Error
(Makroglou, 2004, 7),(Krommer & Ueberhuber, 1998, p.147)
The error for the trapezium rule is given by the Euler-MacLaurin sum:
I − In =
∞
X
Bk h2k [f (2k−1) (b) − f (2k − 1)(a)],
(2.6)
k=1
where Bk are the constants:
B2j = (−1)j−1(2j!)
P
∞
i=1
2(2iπ)−2j
, j = 1, 2, 3, . . . ,
(2.7)
are the Bernoulli numbers
1
1
1
B2 = , B4 = − , B6 = , . . . .
6
30
42
22
(2.8)
Chapter 3
Volterra Integral Equations
Information about Volterra integral equations, the application of the trapezium
rule to them, and kernel functions (with some examples of kernel functions) can
be found in this chapter. The main reference used was (Linz, 1985).
3.1
Volterra Equations
Volterra equations deal with integrals that have variable upper limits.
3.1.1
General Volterra Equation
Z
x
K(x, s)y(s)ds
h(x)y(x) = f (x) +
(3.1)
a
Where f (x) and K(x, s) are known.
3.1.2
Volterra Equation of the First Kind
If h(x) = 0, then the Volterra equation is of the first kind, giving:
Z
−f (x) =
x
K(x, s)y(s)ds
a
23
(3.2)
3.1.3
Volterra Equation of the Second Kind
If h(x) = 1, then the Volterra equation is of the second kind, giving:
Z
x
y(x) = f (x) +
K(x, s)y(s)ds
(3.3)
a
Volterra equations of the second kind have been studied and used in this
project.
3.1.4
Volterra Equations of the Third Kind
If h(x) is a function of x, then the Volterra equation is of the third kind, giving
the general Volterra equation. These are not often considered.
3.1.5
Volterra Equations on the region [0, xn ]
If a region [a, b], with a = x0 = 0 and b = xn = some positive, real number, is
divided into equally spaced points x0 , x1 , x2 , ..., xi , ..., xn , then yi needs to found,
such that yi ' y(xi ) for all xi .
Figure 3.1: Interval Division for Volterra Equations
From 3.3 it can be seen that y(x) with x = 0 is a trivial case, giving:
Z
y(0) = f (0) +
0
k(x, s, y(s))ds = f (0)
0
The others, y1 , y2 , ..., yn , are harder to find.
24
(3.4)
3.1.6
Trapezium Rule for Volterra Equations
The simplest method for finding y1 , y2 , ..., yn in Volterra equations is to use the
trapezium rule for the integral.
The trapezium rule has been applied to Volterra equations in this project.
Consider the non-linear Volterra integral equation
x
Z
k(x, s, y(s))ds.
y(x) = f (x) +
(3.5)
0
Discretizing at x = xi gives
xi
Z
y(xi ) = f (xi ) +
k(xi , s, y(s))ds.
(3.6)
0
To give, after applying the trapezium rule:
yi = f (xi ) + h
i
X
wj k(xi , xj , yj ), i = 1, 2, ..., n.
(3.7)
j=0
With i = 1, for example, would yield:
y1 = f (x1 ) + h[w0 k(x1 , x0 , y0 ) + w1 k(x1 , x1 , y1 )],
(3.8)
which is one equation is one unknown (y1 ).
Linear Case
The linear case of Volterra equations is given as:
Z
y(x) = f (x) +
x
k(x, s)y(s)ds
(3.9)
0
Applying the trapezium rule to 3.9 gives:
yi = f (xi ) + [h
i−1
X
wj k(xi , xj )yj ] + hwi k(xi , xi )yi
(3.10)
j=0
Moving all yi to LHS:
yi (1 − hwi k(xi , xi )) = f (xi ) + h
i−1
X
j=0
25
wj k(xi , xj )
(3.11)
Now, dividing through by (1 − hwi k(xi , xi )) will give:
Pi−1
f (xi ) + h j=0
wj k(xi , xj )yi
yi =
, i = 1, 2, ..., n
(1 − hwi k(xi , xi ))
(3.12)
Example of Constructing a Linear Volterra Integral Equation problem
Z x
k(x, s)y(s)ds.
(3.13)
y(x) = f (x) +
0
Using:
y(x) = ex ⇒ y(s) = es ,
(3.14)
k(x, s) = sx2 ,
(3.15)
and kernel:
f (x) remains to be found.
Z
x
2 s
Z
x
ses ds ≡ A.
(3.16)
ex = f (x) + A ⇒ f (x) = ex − A.
(3.17)
sx e ds = x
2
0
0
This gives:
26
Chapter 4
Transformation of Variables
This chapter describes transformation methods. It details the idea behind transformation methods, the definition of a Sigmoidal transformation, along with some
examples of sigmoidal transformations.
4.1
Idea of Transformation of Variables
Consider
Z
1
I=
f (x)dx,
(4.1)
0
letting
x = φ(t), dx = φ0 (t),
with:
φ(0) = 0, φ(1) = 1, φ(ν) (0) = 0, φ(ν) (1) = 0, ν = 1, 2, ...
(4.2)
We now have:
Z
1
0
Z
f (φ(t))φ (t)dt ≡
I=
0
1
g(t)dt.
(4.3)
0
The trapezium rule can now be applied to the transformed integral 4.3
If 4.2 is true for ν = 1 say, then use of the Euler-MacLaurin formula 2.6 will
give order of convergence (h4 ), that is higher than the order of convergence of
the trapezium rule, which is (h2 ).
This is because g 0 (1) − g 0 (0) in the Euler-MacLaurin formula becomes zero.
27
4.2
Transformation Methods
Many transformation methods exist, such as:
• Sigmoidal.
• Semi-Sigmoidal.
• Monomial.
These include Laurie’s transformation and Sidi’s transformation. (cf. Makroglou,
2004)
They are called Sigmoidal transformations because of their elongated S shaped
graphs (also called periodizing transformations).
Sigmoidal transformation have been used for the numerical integration problems in this project. It is the transformation used to test Double Exponential
transformations against.
4.2.1
Definition of Sigmoidal Transformation
(Elliott, 1998, E80)
For a function, φ, to be a sigmoidal transformation, the following conditions
must be satisfied:
• φ ∈ C 1 [0, 1]C ∞ (0, 1) with φ(0) = 0
• φ(x) + φ(1 − x) = 1, 0 ≤ x ≤ 1
• φ is strictly increasing on [0, 1]
• φ0 is strictly increasing on [0, 12 ] with φ0 (0) = 0
28
4.2.2
Some Examples of Sigmoidal Transformations
For integrals of the form:
Z
1
f (x)dx.
I=
0
Sigmoidal transformations:
• γ3 =
8−9cos(πt)+cos(3πt)
16
(Makroglou, 2004, 10)
• γ3 = 7t3 − 215 t + 21t6 − 6t7 (Elliott, 1998, E101))
can be used.
29
(4.4)
Chapter 5
Application of Double
Exponential Transformations to
Numerical Integration
This chapter contains information about where double exponential transformations come from, the derivation of double exponential formulas, the main idea
behind them, and some examples of them.
The main references used were:
• (Mori and Sugihara, 2001)
• (Mori, 1985)
5.1
Double Exponential Transformations
The double exponential transformation method was proposed by Takahasi and
Mori in 1974 in order to compute, with high efficiency, integrals with end-point
singularities. That is, that at one, or both, of the end points usual methods would
give result of ∞. The main reference used was (Mori & Sugihara, 2001).
For instance
1
dx
−1
(2 − x)(1 − x) 4 (1 + x) 4
Z
1
3
.
(5.1)
The double exponential formulas are designed to give accurate results from
minimal function evaluations. (i.e. in the integral above its approximate value is
30
correct up to 16 significant digits using only 50 function evaluations.) Hence, it
is called an optimal formula. (Mori & Sugihara, 2001, 287-288).
Consider the integral
b
Z
f (x)dx.
I=
(5.2)
a
with the interval of integration (a,b) taking points: a, b both finite; or a =
0, b = ∞; or a = −∞, b = ∞. a, b both finite is considered here.
A variable transformation is applied
x = φ(t), a = φ(−∞), b = φ(∞).
We now have
∞
Z
f (φ(t))φ0 (t)dt.
I=
(5.3)
−∞
The function φ(t) should be such that the integrand decays double exponentially after the transformation. That is
|t|
|f (φ(t))φ0 (t)| ≈ e−ce , as|t| → ∞.
(5.4)
(Mori, 1985, 120)
The trapezium rule can then be applied to 5.3 to give
(∞)
Ih
=h
∞
X
f (φ(kh))φ0 (kh),
(5.5)
−∞
which, when truncated for computation at some suitable points ±N , becomes
(2N +1)
Ih
=h
N
X
f (φ(kh))φ0 (kh),
(5.6)
k=−N
(Mori & Sugihara, 2001, 288)
where 2N + 1 is the number of function evaluations.
The decay of transformed integrands such as 5.3 being double exponential
gives rise to their name, double exponential formula.
31
5.1.1
Benefits of Double Exponential Transformations
According to Mori & Sugihara (2001, 289), there are several merits to double
exponential transformations.
They state that the errors from using double exponential transformations are
very small indeed.
If the error in the quadrature rule 5.5 is written in terms of the trapezium
rule step size h, then
c1
error ≈ e(− h ) .
(5.7)
As h becomes small, the error converges to 0 very quickly.
Alternatively, if the errors are written in terms of the number of function
evaluations, 2N + 1, then
(2N +1)
error ≈ e(−c2 log(2N +1) ) .
(5.8)
The single exponential transformation
x = tanh(t),
(5.9)
for the interval (-1,1), gives
√
(−c3
error ≈ e
(2N +1)
.
(5.10)
c1 , c2 , and c3 are constants depending on the formula an integrand used.
From the comparison of 5.8 and 5.10, it can be shown that 5.8 converges to 0
much faster than 5.10. This is due to the double exponential decay.
Because of this double exponential decay towards infinity, integrands that
have singularities at end points (that will be mapped onto infinity) can have
their infinite sum truncated at low values when compared to other transformation
methods.
The double exponential transformations are said, by (Mori & Sugihara, 2001,
289), to be robust with regard to singularities because integrals with different
orders of singularity can be evaluated using 5.6.
Double exponential transformations lend themselves to the construction of
automatic integrators. This is because when the step size is halved to h/2 the
previous results, using h, can be utilized.
32
Double exponential transformation methods can be applied to integrals other
than those with end point singularities over finite regions of integration. They
can also be applied to integrals of the forms 5.11, 5.13, 5.15.
The optimality of the double exponential transformation methods was established by Sugihara (Sugihara, 1986, cited by Mori & Sugihara, 2001, 290).
Sugihara concluded that the double exponential transformation methods are
optimal by showing that there is no function that decays more rapidly than
e(−e(π/2d|w|)), as w → ±∞.
5.1.2
Some Examples of Double Exponential Transformations
(Mori, 1985, 122-123)
For integrals of the form:
1
Z
I=
f (x)dx
(5.11)
0
this double exponential transform can be used:
1
1
x = φ(t) = [tanh( π sinh t) + 1]
2
2
For integrals of the form:
Z
(5.12)
∞
I=
f (x)dx
(5.13)
0
this double exponential transform can be used:
x = φ(t) = e(π sinh t)
(5.14)
For integrals of the form:
Z
∞
I=
f (x)dx
(5.15)
−∞
this double exponential transform can be used:
1
x = φ(t) = sinh( π sinh t)
2
33
(5.16)
5.2
Application of Double Exponential Transformations
Double exponential transformation have been applied to numerical integration.
They have been applied to three examples, the numerical results for which are
analyzed in chapters 7 and 9.
As all three examples are of the form 5.11 then the double exponential transformation
x = φ(t) =
π
1
1
tanh( sinh(t)) +
2
2
2
(5.17)
has been used for them all.
The derivative of 5.17 is
( π2 ) cosh(t)
1
φ (t) =
.
2 cosh2 (( π2 ) sinh(t))
0
(5.18)
(Mori, 1985, 122)
Verification:
we have
φ(t) =
1
π
tanh( sinh(t)),
2
2
(5.19)
which is
φ(t) = f (g(t)).
(5.20)
Let u = g(t),
then,
1
tanh(u),
2
(5.21)
1 1
− tanh2 (u).
2 2
(5.22)
π
sinh(t),
2
(5.23)
f (u) =
making
f 0 (u) =
g(t) =
34
making
π
cosh(t).
2
g 0 (t) =
(5.24)
Now,
φ0 (t) = f 0 (u) ∗ g 0 (t)
π
= f 0 ( sinh(t)) ∗ g 0 (t)
2
1 1
π
π
= ( − tanh2 ( sinh(t))) ∗ ( cosh(t))
2 2
2
2
π cosh(t)
1
=
4 cosh2 ( π2 sinh(t))
π
cosh(t)
1
2
=
≡ equation5.18.
2
2 cosh ( π2 sinh(t))
(5.25)
(5.26)
(5.27)
(5.28)
(5.29)
If we take
x = φ(t), dx = φ0 (t),
then the integral
Z
1
I=
f (x)dx,
(5.30)
0
transforms into
Z
∞
Z
0
∞
f (φ(t))φ (t)dt ≡
IT =
−∞
g(t)dt.
(5.31)
−∞
Thus, we have a double exponential transformed integral
IT =
∞
( π2 ) cosh(t)
1
π
1 1
f ( tanh( sinh(t)) + )(
)dt.
2
2
2 2 cosh2 (( π2 ) sinh(t))
−∞
Z
(5.32)
So, if the original integral was a simple one, say
Z
1
I=
0
which has an exact solution of 13 ,
35
x2 dx,
(5.33)
then it would transform to
∞
( π2 ) cosh(t)
1
π
1 2 1
( tanh( sinh(t)) + ) (
)dt.
IT =
2
2 2 cosh2 (( π2 ) sinh(t))
−∞ 2
Z
(5.34)
Now, if even the simple trapezium rule 2.2 is applied, having just n = 2 points,
the approximation of the integral is has an absolute error of 5.551e − 017.
As is demonstrated here, the double exponential transformation methods
promise to be very worthwhile.
36
Chapter 6
Application of Double
Exponential Transformation to
the Solution of Volterra Integral
Equations
Double exponential transformations can also be applied to Volterra integral equations. They are applied to the integral portion of the integral equation.
In this project, double exponential transformations were applied to three examples of Volterra integral equation of the second kind for the testing of its
accuracy.
Since all of the examples used are over the region [0, 1], the double exponential
transformation used for them all has been
π
1
1
tanh( sinh(t)) + .
2
2
2
(6.1)
( π2 ) cosh(t)
1
2 cosh2 (( π2 ) sinh(t))
(6.2)
x = φ(t) =
The derivative of which is
φ0 (t) =
Consider the linear Volterra integral equation
Z
y(x) =
x
K(x, s)y(s)ds + g(x)
0
37
(6.3)
The following formula for an indefinite integral based on the double exponential transformation can be found in (Muhammad and Mori, 2003,cited by
Muhammad et al, 2005, 273):
Z
s
f (x)dx = h
a
N
X
−N
1 1
φ−1 (s)
f (φ(jh))φ0 (jh)( + Si(π
− jπ))
2 π
h
(6.4)
where Si(t) is the sine integral. This is described in 6.0.1.
Applying formula 6.4 to the integral 6.3 we obtain
Z
x
K(x, s)y(s)ds ≈ g(x)+h
a
N
X
1 1
φ−1 (x)
K(x, φ(jh))φ0 (jh)( + Si(π
−jπ))y(φ(jh)).
2
π
h
j=−N
(6.5)
To proceed, we also set
x = φ(t)
(6.6)
and discretize at t = kh, k = −N, . . . , N , to obtain
N
X
1
K(φ(kh), φ(jh))φ0 (jh)( +
2
j=−N
(6.7)
1
φ−1 (φ(kh))
Si(π
− jπ))y(φ(jh)),
π
h
(6.8)
y(φ(kh)) ≈ g(φ(kh)) + h
k = −N, . . . , N
Setting y(φ(kh)) = uk , we write
uk ≈ g(φ(kh))+h
N
X
1 1
K(φ(kh), φ(jh))φ0 (jh)( + Si(π(k−j)))uj , k = −N, . . . , N
2 π
j=−N
(6.9)
Equations 6.9 are a linear system of 2N + 1 equations in 2N + 1 unknowns
u−N , u−N +1 , . . . , uN of the form Au = b, where
Ak+N +1,j+N +1 = −h
N
X
1 1
K(φ(kh), φ(jh))φ0 (jh)( + Si(π(k − j))),
2 π
j=−N
38
(6.10)
k = −N, . . . , N, j = −N, . . . , N,
and
Ak+N +1,k+N +1 = 1 + Ak+N +1,k+N +1 , k = −N, . . . , N,
(6.11)
and
bk+N +1 = g(φ(kh)), k = −N, . . . , N.(M ohammadetal, 2005, p.274)
(6.12)
Choice of the transformation φ(t)(Mohammad et al, 2005, p.271)
φ(t) =
(b − a)
π
(b + a)
tanh( sinh(t)) +
2
2
2
(6.13)
( π2 ) cosh(t)
b−a
2 cosh2 (( π2 ) sinh(t))
(6.14)
φ0 (t) =
6.0.1
Si function
Si(x) is the sine integral defined as
Z
Si(x) =
0
x
sin(τ )
dτ, (M ohammadetal, 2005, p.272)
τ
(6.15)
which satisfies Si(x) = −Si(−x).
For its approximation for use in 6.7 the Matlab function cisia was used, downloaded from (Zhang and Jin, 1996).
39
Chapter 7
Numerical Results
A Matlab program was used to obtain all of these results.
It was edited to perform the different calculations for each set of results.
Several results are presented here for the three examples of integrals and the
three examples of Volterra integral equations.
7.1
Numerical Integration
The following examples were be used to test the Double Exponential transform
methods against the trapezium rule and the sigmoidal transformations for numerical integration:
1
Z
ex dx = e1 − 1.
A : I1 =
(7.1)
0
Z
B : I2 =
0
1
x(1 − x)α dx, =
x2 e(α ln(1−x))
e(α ln(1−x))
αxe(α ln(1−x))
− 2
− 2
, (7.2)
2+α
(α + 3α + 2) (α + 3α + 2)
(using Maple8), α = 0.1, 0.3, 0.5, 0.7, 1.0.
(Mori, 1985, 129)
Z
C : I3 = 2
0
1
dx
= π/2.
(1 + x2 )
7.3 adapted from (Davis & Rabinowitz,1967, p.31) using Maple 8
40
(7.3)
7.2
Volterra Integral Equations
The following examples were used to test the Double Exponential transform methods against the trapezium rule for integral equations:
x
Z
[10e−(x−s) − 6e−2(x−s) ]g(s)ds, 0 ≤ x ≤ 1.
D : y(x) = g(x) −
(7.4)
0
Exact =
15e(4x) 4e(−3x) x2 17
67
+
−
− x−
.
112
189
6
36
432
(7.5)
0≤x≤1
7.4 from (Muhammad et al, 2005, p282)
x
Z
(x − s)y(s)ds, 0 ≤ x ≤ 1.
E : y(x) = 1 +
(7.6)
0
Exact = cosh(1) − 1.
(7.7)
0≤x≤1
7.6 from (Froberg, 1985, p.408,423)
Z
x
(s − x)y(s)ds, 0 ≤ x ≤ 1.
F : y(x) = x +
(7.8)
0
Exact = sin(1).
0≤x≤1
7.8 from (Froberg, 1985, p.402)
41
(7.9)
7.3
Computational Details
This section covers material that describes how the programs, transforms, etc,
were applied to produce the numerical results.
Maple 8 was used for the exact solutions to some integrals.
7.3.1
Numerical Integration
Formula 2.5 was used for the direct application of the trapezium rule and for its
application using sigmoidal transformations with weight
w0 = wn = 0.5, and wi = 1, i = 1, . . . , n − 1.
(7.10)
Formula 5.6 was used for the evaluation of the transformed integrals
Z
∞
f (φ(t))φ0 (t)dt,
(7.11)
−∞
where φ(t) was a double exponential transform.
One way to choose the values of N is to plot the function g(t) = f (φ(t))φ0 (t)
and choose [−xN , xN ] to replace (−∞, ∞) such that outside the interval [−xN , xN ]
the values of g(t) are close to zero.
7.3.2
Volterra Integral Equations
For the numerical solution of the Volterra integral equations examples with the
trapezium rule, the formulae 3.7 were used written in the form
yi − hwi K(xi , xi , yi ) = f (xi ) + h
i−1
X
wj K(xi , xj , yj ), i = 1, 2, . . . , n.
(7.12)
j=0
Each (non-linear in general) equation was solved in yi using the Matlab function fsolve. The weights are those of the trapezium rule. The step size h was
chosen as h = (b − a)/n, where n is the number of panels used.
The application of double exponential transformations was implemented to
linear Volterra integral equations only. The formulae used are 6.9 written in the
form of a linear system of equations where A, b are given by 6.10, 6.11, 6.12.
Au = b was solved using Matlab with u = A\b.
42
The number of panels used was n = 10, 20, 30, 40, 50, 60.
In (Mohammad et al, 2005, p.273) an optimal choice of the step size is suggested, given by
1
log(πdN/α),
(7.13)
N
where d is related to the domain of φ(t) defined by (Mohammad et al, 2005,
p.271) Dd ≡ {tC : |Im t| < d},
|t|
and α is such that |f (φ(t)φ0 (t)| ≤ Ce−αe for (−∞, ∞) in combination with
(−t)
the double exponential formula x = e(t−e ) proposed in (Mori, 1985, 120).
h=
7.3.3
Example D
Z
D : y(x) = g(x) −
x
[10e−(x−s) − 6e−2(x−s) ]g(s)ds
(7.14)
0
7.14 from (Muhammad et al, 2005, p282)
For this example g(x) = x2 has been used.
It has the exact solution of
67
15e4x 4e−3x x2 17x
+
−
−
−
(7.15)
y(x) =
112
189
6
36
432
We need φ(−∞) = a = 0 and φ(∞) = b = 1.
We denote the inverse of φ as φ−1 .
)
For example (D) the suggested optimal value of h was h = log(πN
(d = π2 , α =
N
π
) (Mohammad et al, 2005, p.282).
2
A has already been mentioned, the Matlab function cisia was used for the
evaluation of the Si(x), x > 0 integral and the formula Si(−x) = −Si(x) for
x < 0. Also Si(0) = 1.
In (Mohammad et al, 2005, p.281), it is mentioned that the paper’s results
were obtained using
Si(x) =
π
− f1 (x) cos x − f2 (x) sin x,
2
(7.16)
with
Z
f1 (x) =
0
∞
xe−ξ
dξ, f2 (x) =
ξ 2 + x2
43
Z
0
∞
xe−ξ
dξ
ξ 2 + x2
(7.17)
in combination with the double exponential formula
(−t) )
x = e(t−e
proposed by (Takahasi and Mori, 1974).
44
(7.18)
7.4
7.4.1
Results for Numerical Integration
Results for I1 =
R1
0
ex dx
Table 7.1: Results for trapezium rule for example A
n computer value exact value
10
1.71971349
1.71828183
20
1.71863979
1.71828183
1.71837132
1.71828183
40
abs error
1.432e-003
3.580e-004
8.949e-005
Table 7.2: Results for trapezium rule used on sigmoidal transformed example A
n computer value
10
1.71851353
1.71829606
20
40
1.71828271
using γ3 =
exact value
1.71828183
1.71828183
1.71828183
abs error
2.317e-004
1.423e-005
8.856e-007
8−9cos(πt)+cos(3πt)
16
Table 7.3: Results for double exponential transformation method for example A
N computer value exact value abs error
25
1.71828183
1.71828183 5.995e-015
1.71828183
1.71828183 2.220e-016
50
1.71828183
1.71828183 2.220e-016
100
using ainf = −5, binf = 5, x = φ(t) = 21 [tanh( 12 πsinht) + 1]
Table 7.4: Comparison of results, Example A
Trapezium error Sigmoidal transformed
Trapezium error
10
1.432e-003
2.317e-004
20
3.580e-004
1.423e-005
40
8.949e-005
8.856e-007
n
45
Double exponential
transformed trapezium error
5.995e-015
2.220e-016
2.220e-016
7.4.2
Results for I2 =
R1
0
x(1 − x)α dx, α = 0.1
Table 7.5: Results for trapezium rule for example B (α = 0.1)
n computer value exact value
10
0.39946546
0.43290043
0.41735695
0.43290043
20
40
0.42566487
0.43290043
abs error
3.343e-002
1.554e-002
7.236e-003
Table 7.6: Results for trapezium rule used on sigmoidal transformed example B
(α = 0.1)
n computer value
10
0.43292190
0.43290142
20
40
0.43290048
using γ3 =
exact value
0.43290043
0.43290043
0.43290043
abs error
2.146e-005
9.920e-007
4.672e-008
8−9cos(πt)+cos(3πt)
16
Table 7.7: Results for double exponential transformation method for example B
(α = 0.1)
N computer value exact value abs error
25
0.43290043
0.43290043 4.328e-013
0.43290043
0.43290043 4.329e-013
50
0.43290043
0.43290043 4.328e-013
100
using ainf = −5, binf = 5, x = φ(t) = 21 [tanh( 12 πsinht) + 1]
Table 7.8: Comparison of results, Example B (α = 0.1)
n
Trapezium error Sigmoidal transformed
Trapezium error
10
3.343e-002
2.146e-005
1.554e-002
9.920e-007
20
40
7.236e-003
4.672e-008
46
Double exponential
transformed trapezium error
4.328e-013
4.329e-013
4.328e-013
7.4.3
Results for I2 =
R1
0
x(1 − x)α dx, α = 0.3
Table 7.9: Results for trapezium rule for example B (α = 0.3)
n computer value exact value
10
0.31910704
0.33444816
0.32830363
0.33444816
20
40
0.33197625
0.33444816
abs error
1.534e-002
6.145e-003
2.472e-003
Table 7.10: Results for trapezium rule used on sigmoidal transformed example B
(α = 0.3)
n computer value
10
0.33444653
0.33444812
20
40
0.33444816
using γ3 =
exact value
0.33444816
0.33444816
0.33444816
abs error
1.629e-006
4.429e-008
1.165e-009
8−9cos(πt)+cos(3πt)
16
Table 7.11: Results for double exponential transformation method for example B
(α = 0.3)
N computer value exact value abs error
25
0.33444816
0.33444816 3.512e-011
0.33444816
0.33444816 3.512e-011
50
0.33444816
0.33444816 3.512e-011
100
1
using x = φ(t) = 2 [tanh( 12 πsinht) + 1]
Table 7.12: Comparison of results, Example B (α = 0.3)
n
Trapezium error Sigmoidal transformed
Trapezium error
10
1.534e-002
1.629e-006
6.145e-003
4.429e-008
20
40
2.472e-003
1.165e-009
47
Double exponential
transformed trapezium error
3.512e-011
3.512e-011
3.512e-011
7.4.4
Results for I2 =
R1
0
x(1 − x)α dx, α = 0.5
Table 7.13: Results for trapezium rule for example B (α = 0.5)
n computer value exact value
10
0.25933988
0.26666667
0.26414833
0.26666667
20
40
0.26579536
0.26666667
abs error
7.327e-003
2.518e-003
8.713e-004
Table 7.14: Results for trapezium rule used on sigmoidal transformed example B
(α = 0.5)
n computer value
10
0.26666541
0.26666665
20
40
0.26666667
using γ3 =
exact value
0.26666667
0.26666667
0.26666667
abs error
1.259e-006
1.947e-008
3.029e-010
8−9cos(πt)+cos(3πt)
16
Table 7.15: Results for double exponential transformation method for example B
(α = 0.5)
N computer value exact value abs error
25
0.26666667
0.26666667 5.551e-016
0.26666667
0.26666667 5.551e-017
50
0.26666667
0.26666667 5.551e-017
100
1
using x = φ(t) = 2 [tanh( 12 πsinht) + 1]
Table 7.16: Comparison of results, Example B (α = 0.5)
n
Trapezium error Sigmoidal transformed
Trapezium error
10
7.327e-003
1.259e-006
2.518e-003
1.947e-008
20
40
8.713e-004
3.029e-010
48
Double exponential
transformed trapezium error
5.551e-016
5.551e-017
5.551e-017
7.4.5
Results for I2 =
R1
0
x(1 − x)α dx, α = 0.7
Table 7.17: Results for trapezium rule for example B (α = 0.7)
n computer value exact value
10
0.21413864
0.21786492
0.21676236
0.21786492
20
40
0.21753702
0.21786492
abs error
3.726e-003
1.103e-003
3.279e-004
Table 7.18: Results for trapezium rule used on sigmoidal transformed example B
(α = 0.7)
n computer value
10
0.21786488
0.21786492
20
40
0.21786492
using γ3 =
exact value
0.21786492
0.21786492
0.21786492
abs error
4.794e-008
6.686e-010
3.984e-011
8−9cos(πt)+cos(3πt)
16
Table 7.19: Results for double exponential transformation method for example B
(α = 0.7)
N computer value exact value abs error
25
0.21786492
0.21786492 4.728e-011
0.21786492
0.21786492 4.728e-011
50
0.21786492
0.21786492 4.728e-011
100
1
using x = φ(t) = 2 [tanh( 12 πsinht) + 1]
Table 7.20: Comparison of results, Example B (α = 0.7)
n
Trapezium error Sigmoidal transformed
Trapezium error
10
3.726e-003
4.794e-008
1.103e-003
6.686e-010
20
40
3.279e-004
3.984e-011
49
Double exponential
transformed trapezium error
4.728e-011
4.728e-011
4.728e-011
7.4.6
Results for I2 =
R1
0
x(1 − x)α dx, α = 1
Table 7.21: Results for trapezium rule for example B (α = 1)
n computer value exact value
10
0.16500000
0.16666667
0.16625000
0.16666667
20
40
0.16656250
0.16666667
abs error
1.667e-003
4.167e-004
1.042e-004
Table 7.22: Results for trapezium rule used on sigmoidal transformed example B
(α = 1)
n computer value
10
0.16666679
0.16666667
20
40
0.16666667
using γ3 =
exact value
0.16666667
0.16666667
0.16666667
abs error
1.281e-007
4.508e-010
1.713e-012
8−9cos(πt)+cos(3πt)
16
Table 7.23: Results for double exponential transformation method for example B
(α = 1)
N computer value
25
0.16666667
0.16666667
50
0.16666667
100
using x = φ(t) =
exact value
abs error
0.16666667 3.164e-015
0.16666667 2.776e-017
0.16666667 0.000e+000
1
[tanh( 12 πsinht) + 1]
2
Table 7.24: Comparison of results, Example B (α = 1)
n
Trapezium error Sigmoidal transformed
Trapezium error
10
1.667e-003
1.281e-007
4.167e-004
4.508e-010
20
40
1.042e-004
1.713e-012
50
Double exponential
transformed trapezium error
3.164e-015
2.776e-017
0.000e+000
7.4.7
Results for I3 = 2
R1
dx
0 (1+x2 )
Table 7.25: Results for trapezium rule for example C
n computer value exact value
10
1.56996299
1.57079633
20
1.57058799
1.57079633
40
1.57074424
1.57079633
abs error
8.333e-004
2.083e-004
5.208e-005
Table 7.26: Results for trapezium rule used on sigmoidal transformed example C
n computer value
10
1.57098339
1.57080781
20
40
1.57079704
using γ3 =
exact value
1.57079633
1.57079633
1.57079633
abs error
1.871e-004
1.148e-005
7.145e-007
8−9cos(πt)+cos(3πt)
16
Table 7.27: Results for double exponential transformation method for example C
N computer value exact value abs error
25
1.57079633
1.57079633 2.186e-011
1.57079633
1.57079633 2.220e-016
50
1.57079633
1.57079633 6.661e-016
100
1
using x = φ(t) = 2 [tanh( 12 πsinht) + 1]
Table 7.28: Comparison of results, Example C
n
Trapezium error Sigmoidal transformed
Trapezium error
10
8.333e-004
1.871e-004
20
2.083e-004
1.148e-005
40
5.208e-005
7.145e-007
51
Double exponential
transformed trapezium error
2.186e-011
2.220e-016
6.661e-016
7.5
Results for Volterra Integral Equations
The results in tables 7.29 to 7.37 correspond to x = 1.
52
7.5.1
Results for y(x) = x2 −
Rx
0
[10e−(x−s) − 6e−2(x−s) ]g(s)ds
0≤x≤1
Exact =
15e(4x) 4e(−3x) x2 17
67
+
−
− x−
.
112
189
6
36
432
(7.19)
Table 7.29: Results for trapezium rule for example D
n computer value exact value
10
6.89809550
6.51932445
20
6.61038768
6.51932445
6.55951102
6.51932445
30
40
6.54187360
6.51932445
6.53373943
6.51932445
50
60
6.52932865
6.51932445
abs error
3.788e-001
9.106e-002
4.019e-002
2.255e-002
1.441e-002
1.000e-002
Table 7.30: Results for double exponential transformation method for example D
N computer value
10
6.51521498
6.51931950
20
30
6.51932445
6.51932445
40
50
6.51932445
6.51932445
60
using x = φ(t) =
exact value abs error
6.51932445 4.109e-003
6.51932445 4.947e-006
6.51932445 4.873e-009
6.51932445 7.878e-011
6.51932445 2.477e-011
6.51932445 2.144e-011
1
[tanh( 12 πsinht) + 1]
2
Table 7.31: Comparison of results, Example D
n
Trapezium error
N
10
20
30
40
50
60
3.788e-001
9.106e-002
4.019e-002
2.255e-002
1.441e-002
1.000e-002
10
20
30
40
50
60
Function
evaluations
21
41
61
81
101
121
53
Double exponential
transformed trapezium error
4.109e-003
4.947e-006
4.873e-009
7.878e-011
2.477e-011
2.144e-011
7.5.2
Results for y(x) = 1 +
Rx
0
(x − s)y(s)ds0 ≤ x ≤ 1
Exact = cosh(x).
(7.20)
Table 7.32: Results for trapezium rule for example E
n computer value exact value
10
1.54259165
1.54308063
20
1.54295826
1.54308063
30
1.54302624
1.54308063
40
1.54305003
1.54308063
1.54306105
1.54308063
50
60
1.54306703
1.54308063
abs error
4.890e-004
1.224e-004
5.440e-005
3.060e-005
1.959e-005
1.360e-005
Table 7.33: Results for double exponential transformation method for example E
N computer value
10
1.54307061
1.54308064
20
1.54308063
30
40
1.54308063
50
1.54308063
1.54308063
60
using x = φ(t) =
exact value abs error
1.54308063 1.003e-005
1.54308063 6.712e-009
1.54308063 1.495e-011
1.54308063 9.126e-014
1.54308063 6.040e-014
1.54308063 4.774e-014
1
[tanh( 12 πsinht) + 1]
2
Table 7.34: Comparison of results, Example E
n
Trapezium error
N
10
20
30
40
50
60
4.890e-004
1.224e-004
5.440e-005
3.060e-005
1.959e-005
1.360e-005
10
20
30
40
50
60
Function
evaluations
21
41
61
81
101
121
54
Double exponential
transformed trapezium error
1.003e-005
6.712e-009
1.495e-011
9.126e-014
6.040e-014
4.774e-014
7.5.3
Results for y(x) = x +
Rx
0
(s − x)y(s)ds0 ≤ x ≤ 1
Exact = sin(x).
(7.21)
Table 7.35: Results for trapezium rule for example F
n computer value exact value
10
0.84300603
0.84147098
20
0.84185466
0.84147098
30
0.84164150
0.84147098
40
0.84156690
0.84147098
0.84153237
0.84147098
50
60
0.84151361
0.84147098
abs error
1.535e-003
3.837e-004
1.705e-004
9.591e-005
6.138e-005
4.263e-005
Table 7.36: Results for double exponential transformation method for example F
N computer value
10
0.84150608
0.84147103
20
0.84147103
30
40
0.84147098
50
0.84147098
0.84147098
60
using x = φ(t) =
exact value abs error
0.84147098 3.510e-005
0.84147098 4.430e-008
0.84147098 4.430e-008
0.84147098 1.539e-013
0.84147098 2.109e-014
0.84147098 1.621e-014
1
[tanh( 12 πsinht) + 1]
2
Table 7.37: Comparison of results, Example F
n
Trapezium error
N
10
20
30
40
50
60
1.535e-003
3.837e-004
1.705e-004
9.591e-005
6.138e-005
4.263e-005
10
20
30
40
50
60
Function
evaluations
21
41
61
81
101
121
55
Double exponential
transformed trapezium error
3.510e-005
4.430e-008
4.430e-008
1.539e-013
2.109e-014
1.621e-014
7.6
Evaluation of Results
Program runs were performed to gain results for the classic trapezium rule and for
the sigmoidal transformation method using the sets of N values, (N = 10, 20, 40).
They were successful for the trapezium rule and for the sigmoidal transformation (see table 7.39).
Runs were also performed with a number of different sets of N values, (N =
10, 20, 40), N = 25, 50, 100, for the double exponential transformation method.
1
,
These errors cannot be evaluated by the error quotient method Cf = E
E2
where Cf is the convergence factor and E1 is the error of the run with the lower
n points, and E2 has the next highest n points.
−cN
(e( log N ) )
(7.22)
has been used instead to verify the convergence factor of the errors.
For instance, Example B, with α = 0.1, N = 50 produced a computed abs
−cN
error of 4.329e − 013 which verifies that the errors converge to zero as (e( log N ) ).
−N
(e( log N ) = ....., N = .....).
(7.23)
Table 7.38: Some Convergence results for numerical integration
Numerical Integration
Example
ainf binf Ninf
A
-10 10
40
A
-10 10
10
B 0.3
-10 40
-10 40
B 0.7
1.0
B
-10 10
B 0.1
-10 10
50
0.1
B
-5
5
50
Superscripts B α denote which
expected error
1.4342e-011
4.5400e-005
1.4342e-011
1.4342e-011
1.4342e-011
1.6553e-013
1.6553e-013
alpha was used.
actual error
1.542e-011
8.036e-005
3.645e-011
3.645e-011
1.638e-011
4.328e-013
4.329e-013
See Appendix B for some illustrations of plots to estimate where to truncate
the infinite integral produced by the double exponential transformation method.
Program runs were performed for the Volterra integral equations too. The
trapezium results corroborate a convergence factor of h2 , whereas the double
exponential errors must be checked against 7.22.
56
7.6.1
Accuracy
It can be seen from the results obtained for both numerical integration and
Volterra integral equations that the double exponential transformation have better accuracy than the other methods, especially when they get to higher numbers
of function evaluations.
If we consider Example F, the double exponential transformation method
achieves the same level of accuracy at function evaluations = 21 as does the
classic trapezium rule at function evaluation = 40.
In Example A, the double exponential transformation method is far more
accurate with function evaluations = 10 than both the classic trapezium rule and
sigmoidal transformation method do with function evaluations = 40.
7.6.2
Convergence
This table illustrates the orders of convergence for the results obtained from the
examples. Only those results obtained for α = 0.3 and α = 0.7 are used from
Example B.
Table 7.39: Comparison of Approximate Convergence
Numerical Integration
Example
Trapezium Sigmoidal
A1
4
16.2825
A2
4.0004
16.0682
2.4963
36.7803
B10.3
0.3
B2
2.4858
38.0172
0.7
B1
3.3781
71.7021
3.3638
16.7821
B20.7
C1
4.0005
16.2979
C2
3.9996
16.0672
Note: Subscripts 1 & 2 denote quotients of errors for (n = 10 & n = 20) and
(n = 20 & n = 40) respectively. Superscripts B α denote which alpha was used.
It can be seen in table 7.39 that the errors for the classic trapezium rule tend
to have a convergence factor of around 4, as expected, thus verifying order of
convergence (h2 ). Similarly, the convergence factors for the sigmoidal transformation errors tend to be as expected, mainly around 16, verifying order of
57
convergence (h4 ). For the double exponential transformations the errors need
to be evaluated separately for each N using 7.22.
Table 7.40: Comparison of Approximate Convergence
Volterra Integral Equations
Example
D
Error Quotient Trapezium
E(10,20)
4.1599
E(20,40)
4.038
E
E(10,20)
3.9951
E(20,40)
4.0000
F
E(10,20)
4.0005
E(20,40)
4.0006
Note: Subscripts (10, 20) denote quotient of error for n = 10 and n = 20.
Subscripts (20, 40) denote quotient of error for n = 20 and n = 40.
This verifies (h2 ) as the order of convergence for the trapezium rule.
−N
The double exponential errors have been evaluated below using (e log N ) for
some N .
Table 7.41: Estimated Convergence of Double Exponential Transformations
N
10
20
30
40
50
60
Estimated Convergence
−N
(e log N )
4.5400e-005
2.1078e-007
1.4342e-011
1.7112e-008
1.6553e-013
1.9287e-022
58
Chapter 8
Some Proofs
8.1
Convergence of Quadrature Methods for Volterra
Integral Equations
8.1.1
Preliminaries
(Delves & Mohamed, 1988, pp.126-127)
Note: Consistency and zero stability are necessary conditions for convergence
of a method.
A numerical quadrature method for Volterra integral equations is said to be
convergent if the solution of the approximating set of equations converges to the
solution of the exact problem as the step size h tends to zero.
That is, if
lim |y(a + ih) − yi | = 0
h→0
with ih = x − a fixed.
If the following Volterra integral equation is considered
Z
x
y(x) = g(x) +
K(x, s, y(s))ds,
a
with a ≤ x ≤ b,
59
(8.1)
and if it is supposed that at s = si = a + ih the quadrature formula
Z
a+ih
K(xi , s, y(s))ds = h
a
i
X
wi K(xi , sj , y(sj )) + Ei,s (K(xi , s, y(s))),
(8.2)
j=0
with Ei,s (K(xi , s, y(s))) being the error term, is such that
Ei,s (K(xi , s, y(s))) → 0 as h → 0 with ih fixed,
then the quadrature formula is said to be consistent and it can be shown that
when this consistency condition is satisfied the resulting quadrature method for
the solution of 8.1 is convergent.
From section 3.1.6 approximate equations are
yi = g(xi ) + h
i
X
wj K(xi , sj , yj ),
(8.3)
j=0
with i = k, k + 1, . . . , N , and xi = ai h.
The corresponding approximation equations satisfied by the true solution are
y(xi ) = g(xi ) + h
i
X
wj K(xi , sj , y(sj )) + Ei,s (K(xi , s, y(s))),
(8.4)
j=0
with i = k, k + 1, . . . , N .
Lemma1 (Thm 7.1, in Linz, 1985, p.101)
Let the sequence ε0 , ε1 , . . . satisf y
|εn | ≤ A
n−1
X
|εi | + Bn ,
n = r, r + 1, . . . ,
(8.5)
i=0
where
A > 0,
|Bn | ≤ B,
r−1
X
|εi | ≤ η.
(8.6)
i=0
Then
|εn | ≤ (1 + A)n−r (B + Aη),
60
η = r, r + 1, . . . .
(8.7)
From 8.7 it follows that if A = hK, tn = nh, then
|εn | ≤ (B + hKη)eKxn .
(8.8)
Theorem1
(based on Thm 7.2, Linz, 1985, p.102)
Consider the approximate solution of the Volterra integral equation 8.1 given
by 8.3, and assume that
• (i) the solution y(t) of 8.1 and the kernel K(x, s, y) are such that the approximation method is consistent of order p with 8.1.
• (ii) the weights maxj |wj | ≡ w < ∞.
• (iii) the starting errors y(xi ) − yi , i = 0, 1, . . . , k − 1 go to zero as h → 0,
P
and thus k−1
i=0 |y(xi ) − yi | ≤ η.
Then the method is a convergent approximation method.
Proof
Subtracting 8.3 from 8.4
y(xi ) − yi = h
i
X
wj [K(xi , sj , y(sj )) − K(xi , sj , yj )] + Ei,s (K(xi , s, y(s))) (8.9)
j=0
with i = k, k + 1, . . . , N .
Now, if the kernel function satisfies a Lipschitz condition in its third argument
with Lipschitz constant L and ei = y(xi ) − yi , it follows that
|ei | ≤ hL
i
X
|wj ||ej ||Ei,s K(xi , s, y(s)))| = hL{
j=o
i−1
X
|wj | |ej | + |wi | |ei |} + |Ei,s |
j=0
(8.10)
with i = k, k + 1, . . . , N .
61
Let w = maxj |wj | and e = max0≤i≤k−1 |ei |. Then, for sufficiently small h,
|ei |(1 − hLw) ≤ hLw
i−1
X
|ej | + |Ei,s |
(8.11)
j=0
or
i−1
|ei | ≤
hLw X
1
|ej | +
|Ei,s K(xi , s, y(s))|,
1 − hLw j=0
1 − hLw
with i = k, k + 1, . . . , N .
Using Lemma1 with ξn = ei , A =
Lw
and setting A = hG, G = 1−hLw
,
and assuming |Bn | ≤ B, we get
hLw
,
1−hLw
Bn =
|ei | ≤ (B + hGη)eGih .
(8.12)
1
|Ei,s K(xi , s, y(s))|,
1−hLw
(8.13)
Hence |ei | → 0 as h → 0 with fixed ih.
Equivalently, it can be written as |ei | = (hp+1 ) + (hq+1 ), where the error
in the quadrature rule is (hp+1 ) and the error in the starting values is (hq ).
If we set r = min(p, q) then we say the quadrature rule is convergent of
order r.
62
8.2
Convergence of Double Exponential Transformation Methods for Volterra Integral Equations
Preliminaries
Kαφ (Dd ) = {f : f (φ(t))φ0 (t) H1 (Dd )}
(8.14)
and decays double exponentially w.r.t φ with a constant α as 8.15,
|t|
|f (φ(t))φ0 (t)| ≤ C 0 e(−αe ) , t (−∞, ∞),
(8.15)
where
Z
1
H (Dd ) = {g analytic in Dd : lim
ε→0
|g(t)||dt| < ∞},
(8.16)
∂Dd(ε)
Dd = {tC : |< t| < d},
(8.17)
1
Dd(ε) = {tC | |< t| < , |Im t| < d(1 − ε)}.
(8.18)
ε
The indefinite integration formula based on the double exponential transformation for the function f Kαφ (Dd ) (Muhammad et al, 2005, 273)
Z
a
s
−πdN
(
)
−1
1
1
φ
(s)
log
N
0
log(πdN/α)
f (φ(jh))φ (jh)( + Si(π
f (x)dx = h
−jπ))+(
e
),
2 π
h
N
j=−N
N
X
(8.19)
which holds uniformly ∀s[a, b], shows the quadrature error
πdN
log N log(πdN/α) )
(
e
).
N
Delves and Mohamed (1985, p.15) state the Schwarz inequality as
(
|(x, y)|2 ≤ kxkkyk.
Consider
63
(8.20)
(8.21)
Z
u(x) − λ
x
K(x, ξ)u(ξ)dξ = g(x)
(8.22)
a
and
uk − λh
N
X
1 1
K(xk , ξj )φ0 (jh)( + Si(π(k − j)))uj = g(xk ), k = −N, . . . , N.
2 π
j=−N
(8.23)
We first state the following Lemma which will be used in the proof of the
convergence theory. (Muhammad et al, 2005, p.275)
Lemma 8.2
Let u(x) be the exact solution of the integral equation 8.22 and let K(x, ·) belong
to Kαφ (Dd ) uniformly for all x(a, b). If g(φ(t)) is analytic and bounded on Dd ,
then there exists a constant C1 independent of N such that
πdN
log N
||(I − hA)g − y|| ≤ C1 √ e(− log(πdN/α) ) ,
N
(8.24)
for h and N satisfying
h=
8.3
1
log(πdN/α).
N
(8.25)
Theorem 8.3
(Mohammad et al, 2005, p.276-277)
Let the assumptions of Lemma 8.2 be satisfied and let uN (x) be the approximate solution of equation 8.1 given by 8.23. Then, if the mesh size h and N
satisfy h = N1 log(πdN/α), there exists a constant C independent of N such that
πdN
(−
)
log
N
sup |u(x) − uN (x)| ≤ (C N µN + C 0 )
e log(πdN/α) .
N
x(a,b)
√
where µN is defined by µN = ||(I − hA)−1 ||.
64
(8.26)
Proof
Let u(x) be the exact solution of 8.22 and uN (x) its approximate solution for
fixed x. Then subtracting 8.23 from 8.22 we find
Z
x
K(x, ξ)u(ξ)dξ − λh
|u(x) − uN (x)| = |λ
a
K(x, ξ)u(ξ)dξ − λh
= |λ
a
+λh
N
X
K(x, ξj )φ0 (jh)ηh,j (x)uj |
j=−N
x
Z
N
X
N
X
K(x, ξj )φ0 (jh)ηh,j (x)u(ξj )|
j=−N
K(x, ξj )φ0 (jh)ηh,j (x)u(ξj ) − λh
j=−N
N
X
K(x, ξj )φ0 (jh)ηh,j (x)uj |
j=−N
Z
x
K(x, ξ)u(ξ)dξ − h
≤ |λ| |
a
N
X
K(x, ξj )φ0 (jh)ηh,j (x)u(ξj )|
j=−N
+|λ|h
N
X
|K(x, ξj )φ0 (jh)ηh,j (x)| |(u(ξj ) − uj )|
j=−N
= E∞ + EN . (8.27)
Z
x
K(x, ξ)u(ξ)dξ − h
EN = |λ| |
a
E∞ = |λ|h
N
X
K(x, ξj )φ0 (jh)ηh,j (x)u(ξj )|
(8.28)
j=−N
N
X
|K(x, ξj )φ0 (jh)ηh,j (x)| |(u(ξj ) − uj )|
(8.29)
j=−N
and ηh,j (x) is defined by
1 1
ηh,j (x) = ( + Si(π(k − j))).
2 π
Using the Schwarz inequality 8.21
65
(8.30)
N
X
EN = |λ|h
|K(x, ξj )φ0 (jh)ηh,j (x)| |(u(ξj ) − uj )|
j=−N
N
X
≤ |λ|h{
0
2
1
2
|K(x, ξj )φ (jh)| } {
j=−N
N
X
1
|u(ξj ) − uj |2 } 2 .
j=−N
Since
K(x, ·)Kαφ (Dd )
⇒ h{
N
X
1
|K(x, ξj )φ0 (jh)ηh,j (x)|2 ηh,j (x)} 2 ≤ M
j=−N
unif ormly ∀ x(a, b)
⇒ EN ≤ M |λ| ku − ũk.
(8.31)
The linear system satisfied by ũ was
(I − λhA)ũ = g ⇒ ũ = (I − λhA)−1 g
⇒ ku − ũk = ku − (I − λhA)−1 gk
= k(I − λhA)−1 (I − λhA)u − (I − λhA)−1 gk
= k(I − λhA)−1 [(I − λhh)u − g]k
≤ k(I − λhA)−1 k k(I − λhA)u − gk
⇒ EN ≤ M |λ| k(I − λhA)−1 k k(I − λhA)u − gk.
(8.32)
From Lemma 8.2
πdN
(−
)
πdN
log N
kI − λhA)u − gk ≤ |λ|C1 √ e log( α )
N
πdN
)
πdN
log(
)
2
−1 log N
α
√
EN ≤ M |λ| C1 k(I − λhA) k
e
N
(8.33)
(−
or
66
(8.34)
πdN
)
(−
πdN
log
N
EN ≤ µN C2 |λ|2 √ e log( α )
N
(8.35)
where
µN = k(I − λhA)−1 k.
(8.36)
Using 8.19 the following is true for the quadrature error E∞
E∞
πdN
(−
)
πdN
log N
≤ C3 |λ|
e log( α )
N
⇒ EN + E∞ ≤ (CµN
√
πdN
)
πdN
log N
log(
)
α
N + C1 )
e
N
(8.37)
(−
67
(8.38)
Chapter 9
Conclusions and Ideas for
Further Research
Within this chapter there is a summary of the work undertaken in this project,
conclusions from comparison of the numerical results, and ideas for further research.
9.1
Summary
• The problem of numerical integration of integrals of the form
Z
I=
b
f (x)dx
(9.1)
a
was considered using double exponential variable transformation methods
in combination with the trapezium rule.
• Numerical results were presented for three examples, 7.1, 7.2, 7.3, and these
were compared against results obtained using the so called sigmoidal transformations in combination with the trapezium rule, and against results
obtained using the classical trapezium rule (with no transformation).
68
• The problem of Volterra integral equations of the second kind:
Z
x
K(x, s)y(s)ds
y(x) = f (x) +
(9.2)
0
was considered using double exponential variable transformation methods
in combination with the trapezium rule.
• Numerical results were presented for three examples, 7.4, 7.6, 7.8, and these
were compared against results obtained using the classical trapezium rule
(with no transformation).
• All programming was done using Matlab.
9.2
Conclusion
• From the numerical results obtained for the integrals, 7.1, 7.2, 7.3, it can
be noted that the best method, for all three examples, in terms of accuracy,
was the Double Exponential transformation method.
• It can also be noted from the numerical results obtained for the Volterra
integral equations, 7.4, 7.6, 7.8, that the best method, for all three examples,
in terms of accuracy, was the Double Exponential transformation method.
9.3
Ideas for further research
• Double exponential transformation methods could be tested for other regions of integration, such as: a = 0, b = ∞, and a = −∞, b = ∞
• Double exponential transformation methods could be used in combination
with quadrature rules other than the trapezium rule (i.e Gauss type rules).
• Double exponential transformation methods could be compared to transformation methods other than sigmoidal in terms of their accuracy.
• Double exponential methods could be applied to different types of problems,
such as boundary value problems in ODEs and PDEs.
69
• Double exponential transformation methods could be tested for other integral equation types, such as: Freidholm, and Volterra equation of the first
kind.
70
Bibliography
[1] Baker, L. (1997). The Numerical Solution of Second Kind Volterra Integral Equations with Weakly Singular Kernels. Unpublished undergraduate
dissertation, University of Portsmouth, Portsmouth.
[2] Cheney, W., Kincaid, D., (2004). Numerical Mathematics and Computing.
Belmont, Brooks/Cole.
[3] Davis, P. J., Rabinowitz, P. (1967). Numerical Integration. Waltham, Blaisdell.
[4] Delves, L. M., Mohamed, J.L. (1988). Computational Methods for Integral
Equations. Cambridge, Cambridge University Press.
[5] Delves, L. M., Walsh, J. (1974). Numerical Solution of Integral Equations.
Oxford, Clarendon Press.
[6] Elliott, D. (1998). Sigmoidal Transformations and the Trapezoidal Rule. J.
Austral. Math. Soc., B40(E), E77-E137.
[7] Froberg, C. E. (1985). Numerical Mathematics. Menlo Park, Benjamin/Cummings.
[8] Jerri, A. J. (1985). Introduction to Integral Equations with Applications.
New York, Marcel Dekker, Inc.
[9] Kress, R. (1989). Linear Integral Equations. New York, Springer-Verlag.
[10] Krommer, A. R., Ueberhuber, C. W. (1998). Computational Intergration.
Philadelphia, SIAM.
[11] Linz, P. (1985). Analytical and Numerical Methods for Volterra Equations.
Philadelphia, SIAM.
71
[12] Makroglou, A. (2004). On the Numerical Solution of Volterra Integral Equations of the Second Kind [Electronic version]. Portsmouth, SCIG. The
paper was down loaded from http://www.tech.port.ac.uk/staffweb/
makrogla/athena/SCIG/talks/scig04 athena talk.pdf
[13] Mori, M. (1985). Quadrature Formulas Obtained by Variable Transformation and the DE-Rule. J. Comput. Appl. Math., 12 and 13, 119-130.
[14] Mori, M., Sugihara, M. (2001). The Double-Exponential Transformation in
Numerical Analysis. J. Comput. Appl. Math., 127, 287-296.
[15] Muhammad, M., Mori, M., (2003). Double Exponential Formulas for Numerical Indefinite Integration. J. Comput. Appl. Math., 161, 431-448.
[16] Muhammad, M., Nurmuhammad, A., Mori, M., Sugihara, M. (2005). Numerical Solution of Integral Equations by means of the Sinc Collocation
Method Based on the Double Exponential Transformation. J. Comput.
Appl. Math., 177, 269-286.
[17] Petrovskii, I. G. (1957). Integral Equations. Rochester, Graylock.
[18] Takahasi, M., Mori, M. (1974). Double Exponential Formulas for Numerical
Integration. Publ. Res. Inst. Math. Sci. Kyoto University, 9, 721-741.
[19] Trefethen, L. N. (2006). Numerical Analysis. Princeton Companion to
Mathematics (Not yet published).
[20] Zhang, S., Jin, J. (1996). Computation of Special Functions. Wiley. The
programs are online at http://jin.ece.uiuc.edu/routines/routines.
html
72
Appendix A
Program files and Project File
Here is the name of the project file, and a table containing all the names of the
programs used for, and submitted with, this project.
Project document f inaly eayp roject.pdf
Copies of the oral presentation (with and without notes), and the .tex files
used to compile the project are also available.
Table A.1: Matlab Program Files
Program Folder
Numerical-Trapezium
Numerical-Sigmoidal
Program Name
to Run
trap1.m
sig1.m
Numerical-DE
de1.m
Volterra-Trapezium
v trap1.m
Volterra-DE
v de.m
Program Function
Applies trap rule to integrals
Applies a sigmoidal transformation,
then the trap rule to integrals
Applies a double exponential
transformation, then the
trap rule to integrals
Applies trap rule to
Volterra integral equations
Applies a double exponential
transformation, then the trap
rule to Volterra integral equations
There are comments in the programs that explain what can be changed for new
runs.
73
Table A.2: Matlab Function Files
Main
Function
trap1.m
sig1.m
de1.m
v trap1.m
Functions Used
wtrap.m
inteval.m
f1.m
exact I1 indef.m
g.m
gamma1.m
derivativegamma.m
wtrap.m
inteval.m
f1.m
exact I1 indef.m
g.m
gamma1.m
derivativegamma.m
wtrap.m
inteval.m
f1.m
exact I1 indef.m
sol.m
k1.m
g.m
Fun fsolve.m
v de1.m
wtrap.m
sol.m
k1.m
g.m
Fun fsolve.m
bee.m
cisia.m
derivphi.m
feexi
wtrap.m
Program Function
Calculates the weights
Performs the summation
Function to be evaluated
Calculates the exact value
Calculates f (φ(t))φ0 (t)
The transform φ(t)
The derivative of the transform
Calculates the weights
Performs the summation
Function to be evaluated
Calculates the exact value
Calculates f (φ(t))φ0 (t)
The transform φ(t)
The derivative of the transform
Calculates the weights
Performs the summation
Function to be evaluated
Calculates the exact value
True solution
Kernel function of integrand
Non-integrated part of
Volterra integral equation
Computed solution at each iteration
before they are all summed
Calculates the weights
True solutions
Kernel function of integrand
Non-integrated part of
Volterra integral equation
Computed solution at each iteration
before they are all summed
Vector for g(x)’s
Calculates the Si function
Derivative of the double exponential transform
The double exponential transform for region [0, 1]
Calculates the weights
74
Appendix B
Truncation Estimate Plots
Figure B.1: Graph for Example A
75
Figure B.2: Graph for Example B
76
Figure B.3: Graph for Example C
77
© Copyright 2026 Paperzz