在一定范围内求解一对耦合非线性方程
Solve a pair of coupled nonlinear equations within certain limits
This answer to this question 仅适用于耦合函数的所需解不限于特定范围的情况。
但是,如果我们想要一个 0 < x < 10
和 0 < y < 10
的解决方案呢?另一种思考方式是,当 x
或 y
小于零时,如果耦合函数未定义怎么办?
scipy.optimize
that find roots to a function within a given interval (e.g., brentq
) 中有函数,但这些函数仅适用于 一个变量.
的函数
为什么 scipy
未能提供适用于特定范围内的多变量函数的根求解器?如何实现这样的求解器?
这在算法上很重要。未来的 scipy 版本可能会有这种套路。
今天,您可以将求根问题转化为最小二乘问题(最小化lhs的平方和),并使用the master branch of the scipy Git repo.
编辑:scipy.optimize.least_squares
已经在 scipy 中发布了很长时间(在 2015 年提出这个问题时并非如此)。
This answer to this question 仅适用于耦合函数的所需解不限于特定范围的情况。
但是,如果我们想要一个 0 < x < 10
和 0 < y < 10
的解决方案呢?另一种思考方式是,当 x
或 y
小于零时,如果耦合函数未定义怎么办?
scipy.optimize
that find roots to a function within a given interval (e.g., brentq
) 中有函数,但这些函数仅适用于 一个变量.
为什么 scipy
未能提供适用于特定范围内的多变量函数的根求解器?如何实现这样的求解器?
这在算法上很重要。未来的 scipy 版本可能会有这种套路。
今天,您可以将求根问题转化为最小二乘问题(最小化lhs的平方和),并使用the master branch of the scipy Git repo.
编辑:scipy.optimize.least_squares
已经在 scipy 中发布了很长时间(在 2015 年提出这个问题时并非如此)。