假设以下功能:
f(x) = x * cos(x-4)
有了x = [-2.5, 2.5]
这个功能跨越0
的f(0) = 0
和f(-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
功能呢?