相关疑难解决方法(0)

Python:寻找非线性方程的多个根

假设以下功能:

f(x) = x * cos(x-4)

有了x = [-2.5, 2.5]这个功能跨越0f(0) = 0f(-0.71238898) = 0.

这是通过以下代码确定的:

import math
from scipy.optimize import fsolve
def func(x):
    return x*math.cos(x-4)
x0 = fsolve(func, 0.0)
# returns [0.]
x0 = fsolve(func, -0.75)
# returns [-0.71238898]
Run Code Online (Sandbox Code Playgroud)

使用fzero(或任何其他Python根查找程序)在一次调用中查找两个根的正确方法是什么?是否有不同的scipy功能呢?

fzero 参考

python optimization scipy

13
推荐指数
3
解决办法
3万
查看次数

标签 统计

optimization ×1

python ×1

scipy ×1