
这真是一个好玩的问题。我先来抛点儿砖。
先复述一下题主的问题。题主研究的矩阵,是下面这种样子:
因为最多有七条对角线非零,所以称为七对角矩阵。
题主要求的,是这样的矩阵的特征值(以及特征向量)。
首先,正如题主所注意到的那样,主对角元的作用,仅仅是把所有的特征值都平移一下,而对特征向量没有影响。所以,下面可以认为。
先看仅有b非零时的情况。我发现我居然在一篇专栏中研究过:
设矩阵阶数为n,b=1,则矩阵第i大的特征值为,其特征向量为。
画成图是这样的(图中画的其实是b=1/2的情况):
图中,由各个特征向量排成的矩阵V比较乱,不太好观察。
而我们知道它的各列都是正弦函数,所以我们按列取个傅里叶变换,就得到下面这个样子(n取256):
左图为D的对角元(改成了从小到大排列);右图为各特征向量的傅里叶变换的模。
特征值小的特征向量为高频正弦,特征值大的特征向量为低频正弦。
注意:
请认真弄懂上图的含义,因为下面全都是这种图……
当只有c=1的时候,矩阵的特征值和特征向量是这样的:
特征向量的变化比较明显:现在每个特征向量都是两个正弦的叠加了。
其实特征值也有变化:图中的曲线是呈锯齿状的,第2k+1和2k(k为整数)个特征值是相等的。
当只有d=1的时候,矩阵的特征值和特征向量是这样的:
特征向量为三个正弦叠加,特征值仍呈锯齿状,第3k+2和3k+3个特征值相等。
而当b、c、d中不只有一个非零的时候,就好玩儿了。
比如 b = 1,c = 0.2,d = 0 时:
特征值变化明显:最小的和最大的一些特征值变大了,而中间的那些特征值变小了。
特征向量其实也发生了微小的变化,只不过在图上表现不明显。
b = 1, c = 0.4, d = 0 时:
可以看到特征值分成了两段,第一段对应的特征向量为两个正弦叠加,而第二段对应的特征向量仍为单正弦。
在 b = 1, d = 0 时,c = 0.25 是一个临界值。
b = 1, c = -0.4, d = 0 时:
特征值也分成两段,前段特征向量为单频,后段特征向量为双频。c = -0.25 为临界值。
现在再把d也弄成非零的,比如 b = 1, c = -0.1, d = -0.4:
则明显分出了三段(蝙蝠侠?),各段特征向量频率数分别为2、1、2。
然而分段情况也千奇百怪。比如 b = 1, c = -1, d = -0.4 时,分两段,各段频率数为1、2:
b = 1, c = -1, d = 0.4 时,分三段,各段频率数为1、3、2(鸡翅……):
我隐约感觉,分段情况与
提到的差分方程的判别式有关。
我只是画图观察了一下题主感兴趣的七对角阵的特征值与特征向量分布,并没有进行定量计算。
不过希望对题主和其他有兴趣的读者有所启发。
