我面临一个关于如何将给定对称矩阵(它是距离矩阵)的下三角因子存储到向量中的问题。
一般来说,我想通过只给出(Y,Z)
矩形网格上一组点的坐标来直接生成下三角形条目:实际上这是我被卡住的地方。
所以,我开始考虑从一个稍微不同的角度来解决这个问题:生成完整的距离矩阵(再次给定对(Y,Z)
),然后对距离矩阵进行半向量化。
尽管如此,我对如何通过for
循环实现目标并没有真正的想法。
此外,我还知道可能有任何Java
实现该vech
功能的外部库:vech返回通过消除方阵的所有超对角元素X
并将结果堆叠在另一列之上而获得的向量。这在矩阵微积分中使用,其中基础矩阵是对称的,将值保持在主对角线之上是没有意义的。
基本上,给定一个矩阵A = {{a,c},{b,d}}
,通过应用vech(A)
,结果将是
vech(A) = {a,b,d}
。
编辑
我的意思是这样的:
a11 a12 a13 a14
a22 a23 a24
A= a33 a34 (aij = aji)
a44
上三角的打包存储A
:
AP = { a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 }