【发布时间】:2014-09-06 04:49:34
【问题描述】:
我在执行高斯消除时遇到问题。矩阵 A 很大,不能用我的内存限制存储,但是,A 的元素可以描述为 i 和 j 的函数,即 A(i,j) = f(i,j)。
另外,我不需要计算得到的上三角矩阵的所有元素。
现在的问题, 如何更新高斯消元算法以使用 f(i,j) 计算结果矩阵的特定元素而不是计算所有元素?
更新: 这是我的 A 矩阵:
a_{11} & a_{12} & a_{13} & a_{14} & .. & a_{1L}
q_1 & a_{22} & a_{23} & a_{23} & .. & a_{2L}
q_2 & q_1 & a_{33} & a_{34} & .. & a_{3L}
q_3 & q_2 & q_1 & a_{44} & .. & a_{3L}
q_4 & q_3 & q_2 & q_1 & .. & a_{3L}
: & : & : & : & : & :
: & : & : & : & : & :
q_L & q_{L-1} & q_{L-2} & q_{L-3} & .. & a_{LL}
【问题讨论】:
-
“我不需要计算得到的上三角矩阵的所有元素”是什么意思。我知道这个名字的算法就是需要这个。
-
@laune “一个大到无法存储的矩阵?这是 2014 年!”可以想象,需要一种在无限矩阵上运行的算法。然后输出将是一个在指定条目处返回结果的函数。当然,您可以compute the spectrum 获取无限矩阵。
-
@laune:正如 Hooked 所说,矩阵是无限的,但我有一个函数可以用来获取某个元素。也谢谢你提醒我调整日历!
-
@Hamid 您正在使用什么函数来评估元素 A(i,j)。知道函数周期也有助于减少内存和计算