0

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()
martineau
  • 119,623
  • 25
  • 170
  • 301

0 Answers0