首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何调整这个牛顿-拉斐逊循环,以包括一个范围的值,为我的初步猜测,以便它打印的迭代次数为每个?

我如何调整这个牛顿-拉斐逊循环,以包括一个范围的值,为我的初步猜测,以便它打印的迭代次数为每个?
EN

Stack Overflow用户
提问于 2021-10-14 17:10:18
回答 1查看 164关注 0票数 0

目前,我已经尝试通过定义一个'np.arrange‘来替换x,但是我一直收到一个错误:“只有整数标量数组才能转换为标量索引”,我想我可能需要重新定义我的函数,但我希望有一种简单的方法在数组中排位,为根和迭代次数提供一系列的值。

代码语言:javascript
复制
import math

#Define Newton-Raphson method as a function using a for loop
def nraphson(fn, dfn, x, tol, maxiter):
    for i in range(maxiter):
        xnew = x - fn(x)/dfn(x)
        if abs(xnew - x) < tol: break
        x = xnew
    return xnew, i

#Define f(x) and f'(x) to be used in Newton-Raphson function
y = lambda x: math.exp(x) - x**2
dy = lambda x: math.exp(x) - 2*x

#Run the Newton-Raphson method with initial x as -1 from estimate
x, n = nraphson(y, dy, -1, 0.0001, 100)
#Printing text allows us to see the value determined for the root
print("the root is %f at %d iterations." % (x,n))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-14 17:39:39

由于在这个问题中,输入数组的每个单元格上的迭代次数可能不同,那么可以通过嵌套迭代来更好地解决这个问题。(嵌套用于循环),我指的是在nraphson函数上遍历每个单元格的循环。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69574735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档