Python 使用scipy计算具有特定间隔的函数的交集

Python 使用scipy计算具有特定间隔的函数的交集,python,scipy,intersection,Python,Scipy,Intersection,我一直在尝试获取scipy(或sympy)中存在的函数,用于以下任务: 假设我们得到以下函数: f(A,B,C) = k1-A*sin(B*k2-C) 对于空间的每个轴A,B,C,我们有一个特定的间隔,比如[A_-lb,A_-ub],[B_-lb,B_-ub],[C_-lb,C_-ub],[d_-lb,d_-ub] 如果边界包围的空间与给定函数相交,scipy的哪些函数可用于计算?我想到了类似的方法,例如计算Hessian矩阵 谢谢你的提示 最好的问候如果我理解正确,您要寻找的是关于f(A,B

我一直在尝试获取scipy(或sympy)中存在的函数,用于以下任务:

假设我们得到以下函数:

f(A,B,C) = k1-A*sin(B*k2-C)
对于空间的每个轴A,B,C,我们有一个特定的间隔,比如[A_-lb,A_-ub],[B_-lb,B_-ub],[C_-lb,C_-ub],[d_-lb,d_-ub]

如果边界包围的空间与给定函数相交,scipy的哪些函数可用于计算?我想到了类似的方法,例如计算Hessian矩阵

谢谢你的提示
最好的问候

如果我理解正确,您要寻找的是关于
f(A,B,C)
在域
[A_,A_]x[B_,B_]x[C_,C_]
中是否有值
[d_,d_]
。您可以为此尝试使用
scipy.optimize.minimize

如果您在
f
上运行
scipy.optimize.minimize
,并使用边界
[a_l,a_]x[b_l,b_]x[c_l,c_]
,您应该获得域中
f
的最小值。类似地,最小化
-f
将获得域中
f
的最大值<当且仅当间隔
[fmin,fmax]
与间隔
[du,du]
相交时,f与给定边界相交

请注意,
scipy.optimize.minimize
是一种非线性优化,因此需要进行初始猜测。域框的中间点是一个自然选择,但由于非线性优化可能会遇到局部最小值(或不收敛),因此您可能还需要尝试其他一些初始猜测
scipy.optimize.minimize
有许多(可选)参数,因此我建议您阅读并使用它们来根据需要微调您的使用