Bisection Newton Secant
Bisection Newton Secant
Bisection method
Since the method is based on finding the root between two points, the method falls
under the category of bracketing methods.
Since the root is bracketed between two points, x and x u , one can find the mid-
point, x m between x and x u . This gives us two new intervals
1. x and x m , and
2. x m and x u .
f (x)
xℓ
x
xu
Figure 1 At least one root exists between the two points if the function is real, continuous,
and changes sign.
f (x)
x
xℓ xu
Figure 2 If the function f (x) does not change sign between the two points, roots of the
equation f ( x) 0 may still exist between the two points.
f (x) f (x)
xℓ xu
x x
xℓ xu
Figure 3 If the function f (x) does not change sign between two points, there may
not be any roots for the equation f ( x) 0 between the two points.
Bisection Method
f (x)
xu
xℓ x
Figure 4 If the function f (x) changes sign between the two points, more than one root for
the equation f ( x) 0 may exist between the two points.
Is the root now between x and x m or between x m and x u ? Well, one can find the sign of
f ( x ) f ( x m ) , and if f ( x ) f ( x m ) 0 then the new bracket is between x and x m , otherwise,
it is between x m and x u . So, you can see that you are literally halving the interval. As one
repeats this process, the width of the interval x , xu becomes smaller and smaller, and you
can zero in to the root of the equation f ( x) 0 . The algorithm for the bisection method is
given as follows.
Example 1
You are working for ‘DOWN THE TOILET COMPANY’ that makes floats for ABC
commodes. The floating ball has a specific gravity of 0.6 and has a radius of 5.5 cm. You
are asked to find the depth to which the ball is submerged when floating in water.
The equation that gives the depth x to which the ball is submerged under water is given by
x 3 0.165 x 2 3.993 10 4 0
Use the bisection method of finding roots of equations to find the depth x to which the ball
is submerged under water. Conduct three iterations to estimate the root of the above
equation. Find the absolute relative approximate error at the end of each iteration, and the
number of significant digits at least correct at the end of each iteration.
Solution
From the physics of the problem, the ball would be submerged between x 0 and x 2R ,
where
R radius of the ball,
that is
0 x 2R
0 x 2(0.055)
0 x 0.11
Lets us assume
x 0, xu 0.11
Check if the function changes sign between x and x u .
f ( x ) f (0) (0)3 0.165(0) 2 3.993104 3.993104
f ( xu ) f (0.11) (0.11) 3 0.165(0.11) 2 3.993 104 2.662 104
Hence
f ( x ) f ( xu ) f (0) f (0.11) (3.993104 )(2.662104 ) 0
So there is at least one root between x and x u , that is between 0 and 0.11.
Iteration 1
The estimate of the root is
x x
xm u
2
0 0.11
2
0.055
f xm f 0.055 0.055 0.1650.055 3.993 10 4 6.655 10 5
3 2
f ( x ) f ( xm ) f (0) f (0.055) 3.993104 6.655104 0
Hence the root is bracketed between x m and x u , that is, between 0.055 and 0.11. So, the
lower and upper limit of the new bracket is
x 0.055, xu 0.11
At this point, the absolute relative approximate error a cannot be calculated as we do not
have a previous approximation.
Iteration 2
The estimate of the root is
x x
xm u
2
0.055 0.11
2
0.0825
f ( xm ) f (0.0825) (0.0825)3 0.165(0.0825) 2 3.993104 1.622104
f x f xm f 0.055 f 0.0825 6.655 105 1.622 104 0
Hence, the root is bracketed between x and x m , that is, between 0.055 and 0.0825. So the
lower and upper limit of the new bracket is
x 0.055, xu 0.0825
The absolute relative approximate error a at the end of Iteration 2 is
xmnew xmold
a 100
xmnew
0.0825 0.055
100
0.0825
33.33%
None of the significant digits are at least correct in the estimated root of x m 0.0825
because the absolute relative approximate error is greater than 5%.
Iteration 3
x x
xm u
2
0.055 0.0825
2
0.06875
f ( xm ) f (0.06875) (0.06875)3 0.165(0.06875) 2 3.993104 5.563105
f ( x ) f ( xm ) f (0.055) f (0.06875) (6.655105 ) (5.563105 ) 0
Hence, the root is bracketed between x and x m , that is, between 0.055 and 0.06875. So the
lower and upper limit of the new bracket is
x 0.055, xu 0.06875
The absolute relative approximate error a at the ends of Iteration 3 is
xmnew xmold
a 100
xmnew
0.06875 0.0825
100
0.06875
20%
Still none of the significant digits are at least correct in the estimated root of the equation as
the absolute relative approximate error is greater than 5%.
Seven more iterations were conducted and these iterations are shown in Table 1.
1
A singularity in a function is defined as a point where the function becomes infinite. For example, for a function
such as 1 / x , the point of singularity is x 0 as it becomes infinite.
f (x)
Introduction
Methods such as the bisection method and the false position method of finding roots of a
nonlinear equation f ( x) 0 require bracketing of the root by two guesses. Such methods
are called bracketing methods. These methods are always convergent since they are based on
reducing the interval between the two guesses so as to zero in on the root of the equation.
In the Newton-Raphson method, the root is not bracketed. In fact, only one initial
guess of the root is needed to get the iterative process started to find the root of an equation.
The method hence falls in the category of open methods. Convergence in open methods is
not guaranteed but if the method does converge, it does so much faster than the bracketing
methods.
Derivation
The Newton-Raphson method is based on the principle that if the initial guess of the root of
f ( x) 0 is at xi , then if one draws the tangent to the curve at f ( xi ) , the point x i 1 where
the tangent crosses the x -axis is an improved estimate of the root (Figure 1).
Using the definition of the slope of a function, at x xi
f xi = tan θ
f xi 0
= ,
xi xi 1
which gives
f xi
xi 1 = xi (1)
f xi
Equation (1) is called the Newton-Raphson formula for solving nonlinear equations of the
form f x 0 . So starting with an initial guess, xi , one can find the next guess, x i 1 , by
using Equation (1). One can repeat this process until one finds the root within a desirable
tolerance.
Algorithm
The steps of the Newton-Raphson method to find the root of an equation f x 0 are
1. Evaluate f x symbolically
2. Use an initial guess of the root, xi , to estimate the new value of the root, x i 1 , as
f xi
xi 1 = xi
f xi
3. Find the absolute relative approximate error a as
xi 1 xi
a = 100
xi 1
4. Compare the absolute relative approximate error with the pre-specified relative
error tolerance, s . If a > s , then go to Step 2, else stop the algorithm. Also,
check if the number of iterations has exceeded the maximum number of iterations
allowed. If so, one needs to terminate the algorithm and notify the user.
f (x)
f (xi+1)
θ
x
xi+2 xi+1 xi
Example 1
You are working for ‘DOWN THE TOILET COMPANY’ that makes floats for ABC
commodes. The floating ball has a specific gravity of 0.6 and has a radius of 5.5 cm. You
are asked to find the depth to which the ball is submerged when floating in water.
Bisection Method
The equation that gives the depth x in meters to which the ball is submerged under water is
given by
x 3 0.165 x 2 3.993 10 4 0
Use the Newton-Raphson method of finding roots of equations to find
a) the depth x to which the ball is submerged under water. Conduct three iterations
to estimate the root of the above equation.
b) the absolute relative approximate error at the end of each iteration, and
c) the number of significant digits at least correct at the end of each iteration.
Solution
f x x 3 0.165 x 2 3.993 10 4
f x 3 x 2 0.33 x
Let us assume the initial guess of the root of f x 0 is x0 0.05 m. This is a reasonable
guess (discuss why x 0 and x 0.11 m are not good choices) as the extreme values of the
depth x would be 0 and the diameter (0.11 m) of the ball.
Iteration 1
The estimate of the root is
f x0
x1 x0
f x0
0.05
0.05 0.1650.05 3.993 10 4
3 2
30.05 0.330.05
2
1.118 10 4
0.05
9 10 3
0.05 0.01242
0.06242
The absolute relative approximate error a at the end of Iteration 1 is
x1 x0
a 100
x1
0.06242 0.05
100
0.06242
19.90%
The number of significant digits at least correct is 0, as you need an absolute relative
approximate error of 5% or less for at least one significant digit to be correct in your result.
Iteration 2
The estimate of the root is
f x1
x 2 x1
f x1
0.06242
0.06242 0.1650.06242 3.993 10 4
3 2
30.06242 0.330.06242
2
3.97781 10 7
0.06242
8.90973 10 3
0.06242 4.4646 10 5
0.06238
The absolute relative approximate error a at the end of Iteration 2 is
x2 x1
a 100
x2
0.06238 0.06242
100
0.06238
0.0716%
The maximum value of m for which a 0.5 102 m is 2.844. Hence, the number of
significant digits at least correct in the answer is 2.
Iteration 3
The estimate of the root is
f x2
x3 x 2
f x 2
0.06238
0.062383 0.1650.062382 3.993 10 4
30.06238 0.330.06238
2
4.44 10 11
0.06238
8.91171 10 3
0.06238 4.9822 10 9
0.06238
The absolute relative approximate error a at the end of Iteration 3 is
0.06238 0.06238
a 100
0.06238
0
Bisection Method
The number of significant digits at least correct is 4, as only 4 significant digits are carried
through in all the calculations.
2. Division by zero
For the equation
f x x 3 0.03 x 2 2.4 10 6 0
the Newton-Raphson method reduces to
xi 0.03 xi 2.4 106
3 2
xi 1 = xi
3xi 0.06 xi
2
For x0 0 or x0 0.02 , division by zero occurs (Figure 4). For an initial guess close to
0.02 such as x0 0.01999 , one may avoid division by zero, but then the denominator in the
formula is a small number. For this case, as given in Table 2, even after 9 iterations, the
Newton-Raphson method does not converge.
Iteration xi f ( xi ) a %
Number
0 0.019990 1.60000 10-6
1 –2.6480 18.778 100.75
2 –1.7620 –5.5638 50.282
3 –1.1714 –1.6485 50.422
4 –0.77765 –0.48842 50.632
5 –0.51518 –0.14470 50.946
6 –0.34025 –0.042862 51.413
7 –0.22369 –0.012692 52.107
8 –0.14608 –0.0037553 53.127
9 –0.094490 –0.0011091 54.602
Bisection Method
T 1.00E-05
a f(x)
7.50E-06
b
5.00E-06
l
e 2.50E-06
0.00E+00
x
-0.03 -0.02 -0.01 0 0.01 0.02 0.03 0.04
2 -2.50E-06
0.02
-5.00E-06
D
-7.50E-06
i
v -1.00E-05
i
s
i Figure 4 Pitfall of division by zero or a near zero number.
o
n by near zero in Newton-Raphson method.
3
3
2
2
1 1
4
x
0
-2 -1 0 1 2 3
-1.75 -0.3040 0.5 3.142
-1
4. Root jumping
In some case where the function f (x) is oscillating and has a number of roots, one may
choose an initial guess close to a root. However, the guesses may jump and converge to
some other root. For example for solving the equation sin x 0 if you choose
x0 2.4 7.539822 as an initial guess, it converges to the root of x 0 as shown in
Table 4 and Figure 6. However, one may have chosen this as an initial guess to converge to
x 2 6.2831853.
concavity changes at x 1 (see Figure 3), and hence (1,0) is an inflection point. An
inflection points MAY exist at a point where f ( x) 0 and where f ' ' ( x ) does not exist.
Bisection Method
1.5
f(x)
1
0.5
x
0
-2 0 2 4 6 8 10
-0.06307 0.5499 4.461 7.539822
-0.5
-1
-1.5
The reason we say that it MAY exist is because if f ( x) 0 , it only makes it a
possible inflection point. For example, for f ( x ) x 4 16 , f (0) 0 , but the concavity does
not change at x 0 . Hence the point (0, –16) is not an inflection point of f ( x ) x 4 16 .
For f x x 1 , f (x) changes sign at x 1 ( f ( x) 0 for x 1 , and f ( x) 0
3
for x 1), and thus brings up the Inflection Point Theorem for a function f (x) that states the
following.
“If f ' (c) exists and f (c) changes sign at x c , then the point (c, f (c)) is an
inflection point of the graph of f .”
1. derive the secant method to solve for the roots of a nonlinear equation,
2. use the secant method to numerically solve a nonlinear equation.
What is the secant method and why would I want to use it instead of the Newton-
Raphson method?
The Newton-Raphson method of solving a nonlinear equation f ( x) 0 is given by the
iterative formula
f ( xi )
xi 1 = xi (1)
f ( xi )
One of the drawbacks of the Newton-Raphson method is that you have to evaluate the
derivative of the function. With availability of symbolic manipulators such as Maple,
MathCAD, MATHEMATICA and MATLAB, this process has become more convenient.
However, it still can be a laborious process, and even intractable if the function is derived as
part of a numerical scheme. To overcome these drawbacks, the derivative of the function,
f (x) is approximated as
f ( xi ) f ( xi 1 )
f ( xi ) (2)
xi xi 1
Substituting Equation (2) in Equation (1) gives
f ( xi )( xi xi 1 )
xi 1 xi (3)
f ( xi ) f ( xi 1 )
Bisection Method
The above equation is called the secant method. This method now requires two initial
guesses, but unlike the bisection method, the two initial guesses do not need to bracket the
root of the equation. The secant method is an open method and may or may not converge.
However, when secant method converges, it will typically converge faster than the bisection
method. However, since the derivative is approximated as given by Equation (2), it typically
converges slower than the Newton-Raphson method.
The secant method can also be derived from geometry, as shown in Figure 1. Taking two
initial guesses, xi 1 and xi , one draws a straight line between f ( xi ) and f ( xi 1 ) passing
through the x -axis at x i 1 . ABE and DCE are similar triangles.
Hence
AB DC
AE DE
f ( xi ) f ( xi 1 )
xi xi 1 xi 1 xi 1
On rearranging, the secant method is given as
f ( xi )( xi xi 1 )
xi 1 xi
f ( xi ) f ( xi 1 )
f (x)
f (xi) B
f (xi–1) C
E D A
x
xi+1 xi–1 xi
Example 1
You are working for ‘DOWN THE TOILET COMPANY’ that makes floats (Figure 2) for
ABC commodes. The floating ball has a specific gravity of 0.6 and a radius of 5.5 cm. You
are asked to find the depth to which the ball is submerged when floating in water.
The equation that gives the depth x to which the ball is submerged under water is given by
x 3 0.165 x 2 3.993 10 4 0
Use the secant method of finding roots of equations to find the depth x to which the ball is
submerged under water. Conduct three iterations to estimate the root of the above equation.
Find the absolute relative approximate error and the number of significant digits at least
correct at the end of each iteration.
Solution
f x x 3 0.165 x 2 3.993 10 4
Let us assume the initial guesses of the root of f x 0 as x 1 0.02 and x0 0.05 .
x0
x 3
0
0.165 x02 3.993 10 4 x0 x1
x 3
0.165 x02 3.993 10 4 x31 0.165 x21 3.993 10 4
0.05
0
Iteration 2
f x1 x1 x0
x2 x1
f x1 f x0
x1
x 3
1 0.165 x12 3.993 10 4 x1 x0
x
3
0.165 x 3.993 10
2 4
x 3
0.165 x02 3.993 10 4
0.06461 0.1650.06461
1 1 0
Iteration 3
f x2 x2 x1
x3 x2
f x2 f x1
x2
x 3
2 0.165 x22 3.993 10 4 x2 x1
x 3
0.165 x 3.993 10
2 4
x 3
0.165 x12 3.993 10 4
0.06241 0.1650.06241
2 2 1