使用Scipy的牛顿法的输出迭代次数

问题描述 投票:0回答:1

我想知道在使用牛顿法求根时如何输出迭代次数。我正在使用Scipy自动计算根,所以我想知道是否有一种方法可以知道进行了多少次迭代:

from spicy.optimize import newton
from math import *

f = lambda x : x**2 - sin(x)
ans = newton(f, 1, tol = 1.0E-8, maxiter = 100)
print(round(ans, 8))
python scipy newtons-method numerical-analysis
1个回答
0
投票

Spicy是scipy的好名字。 :)

开个玩笑,您只需要在对full_output=True的调用中包括newton(更多信息,请参见doc)。执行您的代码,我通过打印ans获得此输出:

(0.8767262153950625,       converged: True
           flag: 'converged'
 function_calls: 7
     iterations: 6
           root: 0.8767262153950625)
© www.soinside.com 2019 - 2024. All rights reserved.