快速矩阵乘法-SIMD

时间:2020-10-08 21:21:23

标签: swift matrix simd

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)

1 个答案:

答案 0 :(得分:2)

结果正确。行列式为零,因此无法反转您的特定矩阵。

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

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

enter image description here