【发布时间】:2016-09-29 10:08:29
【问题描述】:
我想用 C++ 求解方程组。有没有提供求解器的工具/包?我的系统看起来像
(x-a)^2 + (y-b)^2 = d1
(x-c)^2 + (y-d)^2 = d2
在这种情况下,我知道 a,..,d, d1,d2。
我知道我采用了一个特殊情况(a、b、d = 0,而 c 不是 0),但我希望在所有情况下都有一个解决方案。
有人有想法吗?
【问题讨论】:
-
blas或lapack... -
在 c++ 中,^ 是二元运算符,而不是平方数运算符。
-
@StackDanny
^可以重载(尽管它的优先级很低);他使用大括号来执行操作顺序,尽管他需要换行,所以看起来更像((x-a)^2) + ((y-b)^2) = d1。 -
我认为 OP 意味着权力,即。 (x-a)*(x-a)。所以它基本上是两个半径为 sqrt(d1) 和 sqrt(d2) 的圆,中心在 [a,b] 和 [c,d]。当圆确实接触(单点)或交叉(两点)(并且 0
-
解是垂直平分线,你可以手动推导出来。