可能的重复:
C++ 中的线性方程组? https://stackoverflow.com/questions/2474432/system-of-linear-equations-in-c
我有以下两个方程组:
对于 a、b、c、d:
0 = a * r1_x + b * r1_x * r1_y + c * r1_y + d
1 = a * r2_x + b * r2_x * r2_y + c * r2_y + d
0 = a * r3_x + b * r3_x * r3_y + c * r3_y + d
1 = a * r4_x + b * r4_x * r4_y + c * r4_y + d
对于 e、f、g、h:
0 = e * r1_x + f * r1_x * r1_y + g * r1_y + h
0 = e * r2_x + f * r2_x * r2_y + g * r2_y + h
1 = e * r3_x + f * r3_x * r3_y + g * r3_y + h
1 = e * r4_x + f * r4_x * r4_y + g * r4_y + h
我知道 r1_x、r1_y、r2_x、r2_y、r3_x、r3_y、r4_x、r4_y 的值,
并需要求解第一个中的 a、b、c、d,以及第二个中的 、e、f、g、h。
我知道如何用铅笔和纸解决这些问题,但我真的不确定如何编程。我如何用 C 或 C++(或伪代码)求解上述方程。
Thanks
你可以将它映射到矩阵系统,A x = b
, where A
是系数矩阵,b
是解向量,并且x
是未知数。您可以实现高斯消除,或使用众所周知的库。如果您使用 LAPACK,您想要的例程dgesv
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)