【问题标题】:matrix multiplication in swift - simdswift中的矩阵乘法 - simd
【发布时间】:2021-01-23 23:44:02
【问题描述】:
let matrix = simd_double4x4([[10.0, 8.0, 7.0, 8.0], [10.0, 9.0, 19.0, 9.0], [8.0, 7.0, 10.0, 8.0], [8.0, 7.0, 10.0, 8.0]])
        
        let rhs = SIMD4<Double>(100.0, 130.0, 120.0, 120.0)
        
        let result = simd_mul(matrix.inverse, rhs)
        
        print(result)

此代码适用于 2x2 和 3x3 矩阵来求解方程。但是当涉及到 4x4 矩阵时,我无法得到结果。当我在 4x4 方程求解器的网站上输入相同的值时,我得到了结果,但很快我就无法得到它,它只是打印 -> SIMD4(-nan, -nan, -nan, -nan)

【问题讨论】:

    标签: swift matrix simd


    【解决方案1】:

    结果是正确的。不可能反转你的那个特定矩阵,行列式为零。

    将最后一行更改为8.0, 7.0, 10.0, 9.0 之类的内容,然后重试。

    这是一些在线计算器的输出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-31
      • 2021-02-28
      • 2021-07-25
      • 2020-10-25
      • 2018-04-11
      • 2017-03-11
      • 2013-12-23
      • 1970-01-01
      相关资源
      最近更新 更多