Python to find and plot the root using Bisection Method
Python to find and plot the root using Bisection Method
In this, you will learn how to find and plot the root of equation using Bisection Method. You have to learn about some basics concepts of Python Programming.
The list of topics given below:
In this section, we discuss four examples of Bisection Method use to find and plot the root of the given equations.
Introduction
If the floating number x is given two f (x) and two numbers ‘a’ and ‘b’, then f (a) * f (b) <0 and f (x) are constant in [a, b]. Where f (x) represents an algebraic equation. Find the root of the function at interval [a, b] (or find the value of x which is f (x) 0).
Bisection Method
This method is also known as interval halving method, binary search method or dichotomy method.
This method is used to find the origin of the equation at a given interval, where the value of ‘x’ is f (x) = 0.
This method is based on the intermediate value theory that if f (x) is a continuous function then a and b are two real numbers f (a) * f (b) 0 and f (b) <0), then there must be at least one root between them.
Now let's take a look at how to write a Program to find the root of the given equation. We discuss four different examples with different equation. These examples are given below:
Example 1:
Write a Program to find the root of equation y = x³-x²+2
#bisection method
Python Code:
def f(x):
y = x**3 - x**2+2
return y
a = -200
b = 300
def bisection(a,b):
if f(a)*f(b)>0:
print("no root found")
return
c = a
while ((b-a)>=0.01):
c = (a +b)/2
if f(c)==0:
break
if f(c)*f(a)<0:
b = c
else:
a = c
print("root of equation is =", c)
bisection(a,b)
Output:
root of equation is = -1.00250244140625
Example 2:
Program to find and plot the root of equation y= x²-4 which lies in [0,4]
Python Code:
from pylab import *
def f(x):
y = x**2 - 4
return y
x = linspace(-3,3,10)
xa = 0
xb = 4
xc = (xa+xb)/2
while abs(f(xc))>0.001:
if f(xa)*f(xc)>0:
xa = xc
else:
xb = xc
xc = (xa + xb)/2
print("the root of equation is =", xc)
plot(x,f(x))
xlabel('x values')
ylabel('y values')
title('Graph of x**2-4')
grid(True)
show()
Output:
the root of equation is = 2.0
Example 3:
Write a Program to find the root of equation y = x5-3x+1 which lies in [0,1]
Python code:from pylab import *
def f(x):
y = x**5-3*x+1
return y
x = linspace(-3,3,10)
xa = 0
xb = 1
xc = (xa+xb)/2
while abs(f(xc))>0.001:
if f(xa)*f(xc)>0:
xa = xc
else:
xb = xc
xc = (xa + xb)/2
print("the root of equation is =", xc)
plot(x,f(x))
xlabel('x values')
ylabel('y values')
title('Graph of x**5-3*x+1')
grid(True)
show()
Output:
the root of equation is = 0.3349609375
Write a Program to find the root of equation y = x3-10x2+5 which lies in [0,1]
Python code:
from pylab import *
def f(x):
y = x**3-10*x**2+5
return y
x = linspace(-3,3,10)
xa = 0
xb = 1
xc = (xa+xb)/2
while abs(f(xc))>0.001:
if f(xa)*f(xc)>0:
xa = xc
else:
xb = xc
xc = (xa + xb)/2
print("the root of equation is =", xc)
plot(x,f(x))
xlabel('x values')
ylabel('y values')
title('Graph of x**3-10*x**2+5')
grid(True)
show()