So I am currently trying to develop a bisection root-finding method for my interval [4, 6] so I can find a root for my function. I know the shape of the graph from my python plot. The problem is, nothing seems to work. I have tried to play around with stuff, here is what I have:
def calculatefunction2(c0):
output = float(np.power(c0, 2) - np.log1p(1 + c0) - 30)
return output;
def processinterval(a, b):
intervalmidpoint = (a + b) / 2
return intervalmidpoint;
def findroot(a, b, accuracy):
if(calculatefunction2(a) < 0 and calculatefunction2(b) > 0):
recursivefunction(a, b, accuracy)
def recursivefunction(a, b, accuracy):
intervalmidpoint = processinterval(a,b)
if(calculatefunction2(intervalmidpoint) * calculatefunction2(processinterval(a, b)) > 0):
a = intervalmidpoint
b = b
accuracy = accuracy
recursivefunction(intervalmidpoint, b, accuracy)
if(calculatefunction2(intervalmidpoint) * calculatefunction2(processinterval(a, b)) == 0):
return intervalmidpoint
print(intervalmidpoint)
def main():
a = 4
b = 6
accuracy = 0.002
findroot(a, b, accuracy)
main()