Description
Exercise 1: Finite differences via interpolation
Consider the simplest forward finite-difference approximation for ′( ):
( + ) − ( )
( ) =
ℎ
When we calculate this numerically, there are two sources of error: truncation error, coming from approximating the exact Taylor expansion with a finite piece of it, and floating-point roundoff error.
-
Suppose that we perturb the input, ℎ, by Δ . Calculate (analytically) an approximation to the (absolute) error Δ on the output to first order in Δ ; you should find that it grows like ℎ−1.
-
Suppose that the input perturbation size is mach; the error from [1] is then the roundoff error. Find an estimate for the value of ℎ at which the truncation error balances with the roundoff error, and find the size of the error there. Compare this with the plot that we did in class.
-
Consider an interval [ , ] and let be the midpoint of the interval. Use Lagrange interpolation to find an analytical expression for the unique
quadratic function that passes through ( , ( )), ( , ( )) and
( , ( )).
-
Use your result from [3] to derive the centered difference approximation for the derivative ′( ) in terms of equally-spaced points separated by a distance ℎ.
-
What approximation does it give for the second derivative ″( )?
-
Use [3] to find a backward difference expression for ′( ) using informa-tion at nodes −2 and −1.
-
Find numerically the rate of convergence of the results from [3] and [4] for equally-spaced points separated by a distance ℎ for the function sin(2 ) at = /4, for values of ℎ between 10−6 and 10−1.
Exercise 2: Integration using Simpson’s rule
In this problem we will derive the second-order Newton–Cotes quadrature rule,
known as Simpson’s rule, for calculating ∫ ( ) .
Suppose you are given an -point quadrature rule with nodes ( ) =0 and weights ( ) =0 for integrating over the interval $[-1, 1]. That is, the are + 1 points with −1 ≤ ≤ 1, and the are given to you such that
-
( ) ≃ ∑ ( )
−1 =0
-
Construct a new quadrature rule for integrating over a general interval [ , ]. I.e., find ′ and ′ such that
-
-
∫
( ) ≃ ∑ ′ ( ′ )
=0
∫−1
( )
,
as follows:
Derive the basic second-order Newton–Cotes quadrature rule for
1
-
-
Use your results from [Exercise 1] to find the degree-2 polynomial 2 that agrees with at the three points = −1, 0, 1. (Leave your result in terms of the values (−1), (0) and (1).)
-
Integrate 2 interval [−1, 1] to approximate ∫ in terms of (−1, (0) and (1). Express this result as a quadrature rule.
-
Combine your answers to [2] and [3] to write down the basic (not compos-ite) Simpson’s rule for integrating f over [ , ].
-
Given an interval [ , ], subdivide it into equal-width subintervals, ap-ply the basic Simpson’s rule to integrate over each subinterval, and sum the results to obtain the composite Simpson rule for integrating over [ , ]. How many samples of f does this rule require? (Be careful not to overcount).
Exercise 3: Using Newton–Cotes methods
-
-
Implement the composite 0th (rectangle), 1st (trapezoid), and 2nd-order (Simpson) Newton–Cotes quadrature rules for integrating an arbitrary function over an arbitrary interval with + 1 points. Each should be a single function like rectangle(f, a, b, N).
-
Note that in the case of Simpson’s rule, we are using a total of + 1 points; how many intervals does this correspond to?
1Basic quadrature rules are for nodes distributed over a single interval; composite quadrature rules are obtained by splitting up a large interval into subintervals and using a basic rule on each subinterval.
2. Calculate ∫1 exp(2 ) using each method. Plot the relative error −1
( ) = approx( ) − exact
exact
as a function of for in the range [10, 106] (or use a higher or lower upper bound depending on the computing power you have available).
Do these errors correspond with the expectations from the arguments in lec-tures?
-
Do the same for ∫−21 exp(− 2) . Use the erf function from the Spe-cialFunctions.jl package to calculate the “exact” result. [Hint: Check carefully the help for that function to make sure of the definition used.]
-
We showed that the trapezium rule has error at most ( 2). Consider the following integral of a smooth, periodic function:
2
= ∫ exp(cos( ))
0
Plot the error in the trapezium rule in this case. How fast does it decay with ? [This will be important later in the course.]
Note that this integral can be calculated exactly as 2 0 (1), where 0 is a modified Bessel function, which can be evaluated at 1 using the SpecialFunctions.jl package as besseli(0, 1).
Exercise 4: Euler method for ODEs
-
Implement the Euler method in a function euler(f, x0, δt, t_final), assuming that 0 = 0. Your code should work equally well if you put vectors in, to solve the equation ẋ= f(x).
-
-
-
2. Use your code to integrate the differential equation
from
to
=
5
with initial condition
0=0.5
.
Plot the exact solution and
the analytical solution.
=
0.01, 0.05, 0.1, 0.5
On a
the numerical solution for values of
̇ = 2
. = 0
-
-
different plot show the relative error as a function of time, compared to
-
Do the same for ̇ = −2 with initial condition 0 = 3.
-
For the above two cases, calculate the error at = 5 when the time interval is split into pieces for 10 1000. Plot the error as a function of . What is the rate of convergence as ℎ → 0?
̈
A pendulum satisfies the ODE + sin( ) = 0, where is the angle with the vertical.
-
-
-
( , )̇ = 2
̇−
( )
Show analytically that the quantity (“energy”)
cos
5.
[ ( ( ), ( )) = 0]
is conserved along a trajectory, i.e. that
1
2
, so that
̇
0
̇0
))
.
̇
( ( ), ( )) = ( (
), (
-
-
-
Solve this equation using the Euler method for initial conditions (0, 1) to show that the energy is not conserved.
-
Draw the phase plane. Explain graphically what is happening in terms of what each step does.
-
Plot as a function of time for different values of . How fast does it grow? Explain this in terms of what happens at each step.
4