Вы разрешаете только 2 итерации, которых может быть недостаточно, чтобы приблизиться к ответу. Если у вас есть только 1 правильный бит для запуска, вы можете ожидать, что в лучшем случае будет около 4 хороших битов после 2 итераций. Вам нужна точность в 10 бит (0,001 - примерно 1/2 ^ 10), вам нужно разрешить как минимум еще 2 итерации.
Более того, свойство квадратичной сходимости сохраняется только тогда, когда вы близки к решению. Когда вы находитесь дальше, может потребоваться больше времени, чтобы приблизиться к решению.
Оптимальное значение h для вычисления числовой производной с использованием центральных разностей составляет 0,005 * max (1, | x |) для одинарной точности (с плавающей запятой), где | x | является абсолютным значением аргумента, х. Для двойной точности это примерно 5e-6 * max (1, | x |).