尺寸增加时的LDL'分解错误

时间:2019-07-16 11:55:37

标签: c matrix rounding precision factorization

这可能是一个面向讨论的问题。我的代码可以正常工作,但是我看到一些结果有些特定,无法真正查明原因。

因此,我进行了LDL'分解,并通过重构分解矩阵A然后与原始矩阵进行比较来对其进行测试。那是

执行以下步骤:

  1. 将A分解为L和D,A = L D L'
  2. 通过矩阵L和D重建A,A_re = L D L'
  3. 通过采用A-A_re的2个范数|| A-A_re || _2查找错误。

然后对A的不同维度进行此操作,并对每个维度进行多次。由此,我得到了如下错误的直观表示。

enter image description here

因此,显然,当矩阵A的维数也增加时,误差也会增加。这是预料之中的,只是在C语言中使用了双精度。所有工作都是在配备8代I5英特尔处理器的Mac OS计算机上完成的。

如上所述,我期望误差会增加,但是期望会逐渐增加,而不是在n = 125,n = 250和n = 500处出现的“气泡”。你们每个人都可以解释可能发生的情况吗?

0 个答案:

没有答案