主题
Search

循环矩阵


一个 n×n 矩阵,其行由长度为-n 列表 l 的循环移位版本组成。例如,在列表 l={1,2,3,4} 上的 4×4 循环矩阵由下式给出

 C=[4 1 2 3; 3 4 1 2; 2 3 4 1; 1 2 3 4].
(1)

循环矩阵在数字图像处理中非常有用, n×n 循环矩阵被实现为CirculantMatrix[l, n] 在 Mathematica 应用程序包中数字图像处理.

循环矩阵可以在 Wolfram 语言中如下实现。

  CirculantMatrix[l_List?VectorQ] :=
    NestList[RotateRight, RotateRight[l],
      Length[l] - 1]
  CirculantMatrix[l_List?VectorQ, n_Integer] :=
    NestList[RotateRight,
      RotateRight[Join[Table[0, {n - Length[l]}],
        l]], n - 1] /; n >= Length[l]

其中,第一个输入创建一个维度等于 l 的长度的矩阵,第二个输入用零填充以给出 n×n 矩阵。一种特殊类型的循环矩阵定义为

 C_n=[1 (n; 1) (n; 2) ... (n; n-1); (n; n-1) 1 (n; 1) ... (n; n-2); | | | ... |; (n; 1) (n; 2) (n; 3) ... 1],
(2)

其中 (n; k) 是二项式系数。 C_n 的行列式由美丽的公式给出

 C_n=product_(j=0)^(n-1)[(1+omega_j)^n-1],
(3)

其中 omega_0=1, omega_1, ..., omega_(n-1) 是第 n 个单位根。 n=1, 2, ... 的行列式由 1, -3, 28, -375, 3751, 0, 6835648, -1343091375, 364668913756, ... (OEIS A048954) 给出,当 n=0 (mod 6) 时为 0。

循环矩阵是拉丁方阵的例子。


另请参阅

循环行列式

使用 Wolfram|Alpha 探索

参考文献

Davis, P. J. 循环矩阵,第二版 New York: Chelsea, 1994.Sloane, N. J. A. “整数序列在线百科全书” 中的序列 A048954A049287Stroeker, R. J. "布罗卡点、循环矩阵和笛卡尔叶形线。" Math. Mag. 61, 172-187, 1988.Vardi, I. Mathematica 中的计算娱乐。 Reading, MA: Addison-Wesley, p. 114, 1991.

在 Wolfram|Alpha 中引用

循环矩阵

请引用为

Weisstein, Eric W. “循环矩阵。” 来自 MathWorld--Wolfram Web 资源。 https://mathworld.net.cn/CirculantMatrix.html

主题分类