之所以专门定义两个新的概念,在于它们特殊的形式,带来的特别的形式。

1. Toeplitz matrix

  • 对角为常数;

n×n 的矩阵 A 是 Toepliz 矩阵当且仅当,对于 Ai,j 有:

Ai,j=Ai+1,j+1=ai−j
⎡⎣⎢⎢⎢⎢⎢⎢afghibafghcbafgdcbafedcba⎤⎦⎥⎥⎥⎥⎥⎥

.

i−j 表示行号减去列号,对于 n×n 的 Toeplize 矩阵共 2n−1 个不同的值,即 a1−n,a2−n,…,a−1,0,a1,…,an−1。

⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢a0a1a2⋮⋮an−1a−1a0a1⋱…a−2a−1⋱⋱⋱……⋱⋱⋱a1a2…⋱a−1a0a1a−(n−1)⋮⋮a−2a−1a0⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

2. Toeplize 矩阵与卷积和傅里叶变换到关系

长度为 n 的信号 x,与长度为 m 的卷积核 h,二者之间的卷积可通过矩阵乘法的方式计算:

y=h∗x=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢h1h2h3⋮hm−1hm00⋮00h1h2h3⋮hm−1hm0⋮0……………⋮……⋮00⋮0h1h2⋮hm−2hm−1hm…0⋮00h1h2⋮hm−2hm−1hm⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎡⎣⎢⎢⎢⎢⎢⎢⎢x1x2x3⋮xn⎤⎦⎥⎥⎥⎥⎥⎥⎥

同样地根据卷积的性质,也有:

yT=[h1h2h3…hm−1hm]⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢x100⋮00x2x10⋮……x3x2x1⋮00…x3x2⋮00xn…x3⋮x100xn………x100xn⋮xn−2…000⋮xn−1xn−2…………xnxn−10000⋮xn⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥.
  • 由左边的 Toeplize 矩阵可知,Toeplize 矩阵不必是方阵;下面来看该矩阵的维度信息,如下图所示:

    上面在 wikipedia 中复制过来的矩阵信息其实是当 n<m 时的情形,且 n=m−1。

3. Circulant matrix

是一种特殊的 Toeplitz 矩阵。

如下为一个 Circulant matrix 的基本形式:

C=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢c0c1⋮cn−2cn−1cn−1c0c1cn−2…cn−1c0⋱…c2⋱⋱c1c1c2⋮cn−1c0⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥.

在 Toeplize 的基础上,Circulant 进一步的要求是每一个行向量,是前一个行向量的循环右移一个元素。

Toeplitz matrix 与 Circulant matrix的更多相关文章

  1. Leetcode 54. Spiral Matrix & 59. Spiral Matrix II

    54. Spiral Matrix [Medium] Description Given a matrix of m x n elements (m rows, n columns), return ...

  2. 54. Spiral Matrix && 59. Spiral Matrix II

    Given a positive integer n, generate a square matrix filled with elements from 1 to n2 in spiral ord ...

  3. LeetCode 1284. Minimum Number of Flips to Convert Binary Matrix to Zero Matrix (最少翻转次数将二进制矩阵全部置为0)

    给一个矩阵mat,每个格子都是0或1,翻转一个格子会将该格子以及相邻的格子(有共同边)全部翻转(0变为1,1变为0) 求问最少需要翻转几次将所有格子全部置为0. 这题的重点是数据范围,比赛结束看了眼数 ...

  4. 【leetcode】1284. Minimum Number of Flips to Convert Binary Matrix to Zero Matrix

    题目如下: Given a m x n binary matrix mat. In one step, you can choose one cell and flip it and all the ...

  5. 2018牛客网暑期ACM多校训练营(第九场)A -Circulant Matrix(FWT)

    分析 大佬说看样例就像和卷积有关. 把题目化简成a*x=b,这是个xor的FWT. FWT的讲解请看:https://www.cnblogs.com/cjyyb/p/9065615.html 那么要求 ...

  6. Nowcoder Circulant Matrix ( FWT )

    题目链接 题意 : 给你一个a数组和b数组,构造出A[i][j]矩阵(A[i][j] = a[i xor j]) 给出等式 A * x = b ( mod p ) n等于4的时候有: A[0][0]* ...

  7. hdu 2686 Matrix && hdu 3367 Matrix Again (最大费用最大流)

    Matrix Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  8. Matrix.LookAtLH()和Matrix.LookAtRH()所表达的涵义

    function lookAtLH(eye:Vector3D, at:Vector3D, up:Vector3D) 一个摄像机矩阵可有由三个部分组成:摄像机位置.目标位置以及摄像机上下方.对应的就是上 ...

  9. Matrix: android 中的Matrix (android.graphics.Matrix) (转)

    本篇博客主要讲解一下如何处理对一个Bitmap对象进行处理,包括:缩放.旋转.位移.倾斜等.在最后将以一个简单的Demo来演示图片特效的变换. 1. Matrix概述 对于一个图片变换的处理,需要Ma ...

随机推荐

  1. XML与Plist文件转换

    由于工作需要,要解析xml,举一个简单的例子,例如地址,如果是plist的话我们会很好的解析,但是如果已知一个xml的话,当然用原生的xml解析也能解析的出来,但是解析xml的话会是根据标签的头来解析 ...

  2. Spring 注解拦截器使用详解

    Spring mvc拦截器 平时用到的拦截器通常都是xml的配置方式.今天就特地研究了一下注解方式的拦截器. 配置Spring环境这里就不做详细介绍.本文主要介绍在Spring下,基于注解方式的拦截器 ...

  3. ReactiveCocoa结合了几种编程风格

    函数式编程(Functional Programming):使用高阶函数,例如函数用其他函数作为参数.响应式编程(Reactive Programming):关注于数据流和变化传播.所以,你可能听说过 ...

  4. sys.path

    sys.path.append() 和 sys.path.insert() python程序中使用 import XXX 时,python解析器会在当前目录.已安装和第三方模块中搜索 xxx,如果都搜 ...

  5. sed命令的介绍

    命令格式 sed [options] 'command' file(s) sed [options] -f scriptfile file(s) 选项 -e<script>或--expre ...

  6. TIME定时器

    一.定时器分类 STM32F1 系列中,除了互联型的产品,共有 8 个定时器,分为基本定时器,通用定时器和高级定时器.基本定时器 TIM6 和 TIM7 是一个 16 位的只能向上计数的定时器,只能定 ...

  7. 【ICM Technex 2018 and Codeforces Round #463 (Div. 1 + Div. 2, combined) D】Tree

    [链接] 我是链接,点我呀:) [题意] 让你在树上找一个序列. 这个序列中a[1]=R 然后a[2],a[3]..a[d]它们满足a[2]是a[1]的祖先,a[3]是a[2]的祖先... 且w[a[ ...

  8. 【Codeforces Round #239 (Div. 1) B】 Long Path

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] DP,设f[i]表示第一次到i这个房间的时候传送的次数. f[1] = 0,f[2] = 2 考虑第i个位置的情况. 它肯定是从i- ...

  9. Docker入门实践(三) 基本操作

    Docker安装完毕.我们就能够试着来执行一些命令了.看看docker能够干什么. (一) 创建一个容器 首先.让我们执行一个最简单的容器,hello-world.假设安装没有问题.并执行正确的话,应 ...

  10. hdu 1695 GCD (欧拉函数、容斥原理)

    GCD Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...