• 智能AI问答!更聪明、更完整、原创作!
  • 一款基于GPT的超级AI机器人,可以回答问题、聊天、创作、写文案!

1)非线性方程的数值解法,二分法、牛顿法的源代码

发布于 2024-07-02 11:01:00

二分法和牛顿法的源代码如下:

二分法:

def binary_search(f, a, b, tolerance):
    if f(a) * f(b) >= 0:
        raise ValueError("Invalid interval")

    while b - a > tolerance:
        c = (a + b) / 2

        if f(a) * f(c) < 0:
            b = c
        else:
            a = c

    return a

牛顿法:

def newton_method(f, df, x0, tolerance):
    while True:
        x1 = x0 - f(x0) / df(x0)
        if abs(x1 - x0) <= tolerance:
            return x1
        x0 = x1

其中,f表示待求解的函数,df表示函数的导数,a和b是搜索区间,x0是初始猜测,tolerance是误差容忍度。

0 条评论

发布
问题

在线
客服