Python中的二维二分法?

时间:2018-06-06 07:24:45

标签: python bisection

我正在寻找Python中optimize.bisect函数的扩展,一些代码允许我解决两个自洽方程的系统,即y= f(x,y)x= g(x,y)。我正在寻找一种二维二分法,但如果它运作正常,我不介意使用其他可能性。

1 个答案:

答案 0 :(得分:1)

据我了解你的问题,你想找到以下函数的根

def fun(x):
    return [f(x[0], x[1]) - x[1],
            g(x[0], x[1]) - x[0]]

其中x[0]对应于您定义中的xx[1]对应y。 您可以使用例如scipy.optimize.root

from scipy import optimize
solution = optimize.root(fun, [0, 0])

这里[0, 0]是根的初始猜测。但是,正确算法的选择在很大程度上取决于您的问题。