Я пытаюсь найти корень уравнения, используя Newton-Raphson, предоставленный SciPy (scipy.optimize.newton).
На данный момент у меня нет значений fprime
, которые советует использовать документация, и, насколько мне известно, это означает, что для поиска корней используется метод Secant.
Поскольку метод Ньютона-Рафсона имеет более быструю сходимость, чем метод Секанта, моя интуиция подсказывает, что, возможно, мне следует численно аппроксимировать fprime
и обеспечить его, чтобы использовался метод Ньютона.
Какой из них обычно приводит к более быстрой конвергенции / более быстрому фактическому вычислению моих корней?
- Просто используя
scipy.optimize.newton
без указанияfprime
(т. е. метод секущей или - Использование численного дифференцирования для вычисления
fprime
(например, с помощью numpy.diff) и предоставление егоscipy.optimize.newton
, чтобы использовался метод Ньютона-Рафсона.