快速矩阵乘法-SIMD

问题描述

let matrix = simd_double4x4([[10.0,8.0,7.0,8.0],[10.0,9.0,19.0,9.0],[8.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)

解决方法

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

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

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

enter image description here