Those FinderAlgorithm implementations that use Newton's method (at any point during their lifetime) do not correctly reflect the relative error that the user requested. This is due to the user request not being passed down to the invocation of scipy.optimize.newton. This should be fixed!
Together with this fix we should implement the following feature to make algorithms using Newton's method more robust: Instead of an arbitrary number of sample points (NewtonGridAlgorithm) or an arbitrary measure for sufficiently close starting points (SimpleArgumentNewton) we should employ algorithms that adapt dynamically. In particular this could mean
- successive refinement of the starting point grid until further refinement finds no additional zeros
- starting Newton's algorithm as soon as a simple root has been detected - if convergence cannot yet be achieved, go for further subdivision
Those
FinderAlgorithmimplementations that use Newton's method (at any point during their lifetime) do not correctly reflect the relative error that the user requested. This is due to the user request not being passed down to the invocation ofscipy.optimize.newton. This should be fixed!Together with this fix we should implement the following feature to make algorithms using Newton's method more robust: Instead of an arbitrary number of sample points (
NewtonGridAlgorithm) or an arbitrary measure for sufficiently close starting points (SimpleArgumentNewton) we should employ algorithms that adapt dynamically. In particular this could mean