提问人:Scipham 提问时间:5/11/2021 最后编辑:Scipham 更新时间:5/11/2021 访问量:313
按单元取整数的矩阵/数组元素的检查条件
Checking condition on matrix/array element-wise modulo an integer
问:
我的目的是检查矩阵(即二维数组)模 d 是否是辛的(参见维基百科上的条件:https://en.wikipedia.org/wiki/Symplectic_matrix)。也就是说,矩阵集中是否存在任何元素相等模数 d 的辛矩阵。
有没有合乎逻辑且特别有效的方法来检查这种涉及矩阵乘法的条件,而无需遍历(可能的)无限矩阵? 但是,目标语言是 Julia,如果有人有 python 解决方案,那也很好。Julia 中没有模 d 条件的条件现在以这种方式实现(容差为 0.001,M 是 2n x 2n 数组):
omega = [zeros((n,n)) Matrix(1I, n, n)); -Matrix(1I, n, n) zeros((n,n))]
isSymplec = maximum(abs.(transpose(M)*(omega*M) - omega)) < 0.001
举个简单的例子:数组/矩阵 [1 0 0 0; 1 1 0 0; 0 0 1 1; 0 0 0 1] 不是辛的,但有一个模 2 辛的“等价”伙伴:[1 0 0 0; 1 1 0 0; 0 0 1 -1; 0 0 0 1]
答: 暂无答案
下一个:用不均匀的圆盘实现最佳覆盖
评论
[1 0 0 0; n 1 0 0; 0 0 1 -n; 0 0 0 1]
n