C ++ - 如何编写代码来查找两个超平面的交集

时间:2012-04-30 20:04:57

标签: c++ linear-algebra intersection

在n维空间中,两个非平行超平面将在当前超平面维度下一维的超平面处相交。 (两条线在一个点相交,两条线在一条线上相交,两条4D超平面在一个平面上等等)我知道至少有一种方法可以找到这个交叉点发生的位置:

v + w + x + y + z = 4
v + 2w + 3x + 4y + 5z = 7
then
v = 4 - w - x - y - z
gives
(4 - w - x - y - z) + 2w + 3x + 4y + 5z = 7
and finally
w + 2x + 3y + 4z = 3
is the hyperplane where the two higher dimensional hyperplanes intersect.

我的问题是,我没有完全看到如何将此方法转换为C ++程序。有什么建议?谢谢!

1 个答案:

答案 0 :(得分:3)

目的是消除其中一个变量。程序是:

  1. 选择其中一个变量来消除(假设它是v)。
  2. 将等式A中的所有系数乘以等式B中的v系数,反之亦然。
  3. 从等式B的那些中减去等式A的系数。
  4. 完成。