【问题标题】:What could be the best way to find Inverse Matrix in SIMD?在 SIMD 中找到逆矩阵的最佳方法是什么?
【发布时间】:2020-10-21 10:01:37
【问题描述】:

我已经研究了一段时间了

要找到逆矩阵,我需要找到矩阵的行列式(正确吗?)

但我发现的唯一方法是使用 a11 (a22a33 - a23*a32) 等计算所有矩阵..

请赐教,找到行列式的最佳方法是什么,以便我可以得到逆矩阵?

或者有没有更有效的方法来获得逆矩阵而不找到行列式???

【问题讨论】:

    标签: c++ matrix matrix-inverse inverse determinants


    【解决方案1】:

    您可以使用 LU 分解,而不是找到一般矩阵的行列式,然后就像 Intel Math Kernel Library 所做的那样:

    通过求解系统 inv(A)*L = inv(U) 来计算 inv(A)。

    inv(U)(U 是一个上三角矩阵)更容易和更高效地计算,例如使用here 所示的过程,但它归结为上三角矩阵的行列式只是它的对角线的乘积。


    并且必须提醒:如果可能,请使用现有的数学库,这样的数值计算很容易出错。

    【讨论】:

      猜你喜欢
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-20
      • 2013-09-22
      • 1970-01-01
      相关资源
      最近更新 更多