【线性代数(6)】范德蒙德行列式及克莱姆法则

手动反爬虫:原博地址

 知识梳理不易,请尊重劳动成果,文章仅发布在CSDN网站上,在其他网站看到该博文均属于未经作者授权的恶意爬取信息

如若转载,请标明出处,谢谢!

1 范德蒙德行列式

D=11...11x1x2...xn1xn(x1)2(x2)2...(xn1)2(xn)2...............(x1)n2(x2)n2...(xn1)n2(xn)n2(x1)n1(x2)n1...(xn1)n1(xn)n1=1j<in(xixj)D = \begin{vmatrix}1&1 &...& 1& 1\\x_{1}&x_{2} &... & x_{n-1}&x_{n} \\(x_{1})^{2}&(x_{2})^{2} &... & (x_{n-1})^{2}&(x_{n})^{2}\\... & ...&... &...&... \\ (x_{1})^{n-2}&(x_{2})^{n-2} &... & (x_{n-1})^{n-2}&(x_{n})^{n-2}\\(x_{1})^{n-1}&(x_{2})^{n-1} &... & (x_{n-1})^{n-1}&(x_{n})^{n-1}\end{vmatrix} = \prod_{1\leqslant j <i \leqslant n }(x_{i} - x_{j})

简单证明

①当n=2时,显然成立

②当n>2时,采用由下往上相邻两行的上一行乘以x1-x_{1}加到下一行,将第一列全部化为0

③这时候就变成了加边法后的结果了,直接可以去掉“加的边”,此时行列式的阶数就由原来的n阶变成n-1阶了

④然后发现每一列都存在着公因式,因此可以进行提取因式

⑤最后就发现提取的公因式正是j=1时候的表达式相乘,而后面的是在j>1时候的表达式,因此就得证

D=11...11x1x2...xn1xn(x1)2(x2)2...(xn1)2(xn)2...............(x1)n2(x2)n2...(xn1)n2(xn)n2(x1)n1(x2)n1...(xn1)n1(xn)n1D = \begin{vmatrix}1&1 &...& 1& 1\\x_{1}&x_{2} &... & x_{n-1}&x_{n} \\(x_{1})^{2}&(x_{2})^{2} &... & (x_{n-1})^{2}&(x_{n})^{2}\\... & ...&... &...&... \\ (x_{1})^{n-2}&(x_{2})^{n-2} &... & (x_{n-1})^{n-2}&(x_{n})^{n-2}\\(x_{1})^{n-1}&(x_{2})^{n-1} &... & (x_{n-1})^{n-1}&(x_{n})^{n-1}\end{vmatrix}

=   11...110x2x1...xn1x1xnx10(x2)2x1x2...(xn1)2x1xn1(xn)2x1xn...............0(x2)n2x1(x2)n3...(xn1)n2x1(xn1)n3(xn)n2x1(xn)n30(x2)n1x1(x2)n2...(xn1)n1x1(xn1)n2(xn)n1x1(xn)n2= \text{ } \text{ } \text{ }\begin{vmatrix}1&1 &...& 1& 1\\0&x_{2} -x_{1}&... & x_{n-1}-x_{1}&x_{n}-x_{1} \\0&(x_{2})^{2} -x_{1}x_{2}&... & (x_{n-1})^{2} -x_{1}x_{n-1}&(x_{n})^{2}-x_{1}x_{n}\\... & ...&... &...&... \\ 0&(x_{2})^{n-2}-x_{1}(x_{2})^{n-3} &... & (x_{n-1})^{n-2}-x_{1}(x_{n-1})^{n-3}&(x_{n})^{n-2}-x_{1}(x_{n})^{n-3}\\0&(x_{2})^{n-1} -x_{1}(x_{2})^{n-2}&... & (x_{n-1})^{n-1}-x_{1}(x_{n-1})^{n-2}&(x_{n})^{n-1}-x_{1}(x_{n})^{n-2}\end{vmatrix}

=   x2x1...xn1x1xnx1(x2)2x1x2...(xn1)2x1xn1(xn)2x1xn............(x2)n2x1(x2)n3...(xn1)n2x1(xn1)n3(xn)n2x1(xn)n3(x2)n1x1(x2)n2...(xn1)n1x1(xn1)n2(xn)n1x1(xn)n2 = \text{ } \text{ } \text{ }\begin{vmatrix}\\x_{2} -x_{1}&... & x_{n-1}-x_{1}&x_{n}-x_{1} \\(x_{2})^{2} -x_{1}x_{2}&... & (x_{n-1})^{2} -x_{1}x_{n-1}&(x_{n})^{2}-x_{1}x_{n}\\ ...&... &...&... \\ (x_{2})^{n-2}-x_{1}(x_{2})^{n-3} &... & (x_{n-1})^{n-2}-x_{1}(x_{n-1})^{n-3}&(x_{n})^{n-2}-x_{1}(x_{n})^{n-3}\\(x_{2})^{n-1} -x_{1}(x_{2})^{n-2}&... & (x_{n-1})^{n-1}-x_{1}(x_{n-1})^{n-2}&(x_{n})^{n-1}-x_{1}(x_{n})^{n-2}\end{vmatrix}

=   (x2x1)(x2x1)...(xnx1)1...11x2...xn1xn(x2)2...(xn1)2(xn)2............(x2)n2...(xn1)n2(xn)n2(x2)n1...(xn1)n1(xn)n1n1= \text{ } \text{ } \text{ }(x_{2} -x_{1})(x_{2} -x_{1})...(x_{n} -x_{1})\begin{vmatrix}1 &...& 1& 1\\x_{2} &... & x_{n-1}&x_{n} \\(x_{2})^{2} &... & (x_{n-1})^{2}&(x_{n})^{2}\\...&... &...&... \\ (x_{2})^{n-2} &... & (x_{n-1})^{n-2}&(x_{n})^{n-2}\\(x_{2})^{n-1} &... & (x_{n-1})^{n-1}&(x_{n})^{n-1}\end{vmatrix}_{n-1}

=   (x2x1)(x2x1)...(xnx1)2j<in(xixj)   =   1j<in(xixj) = \text{ } \text{ } \text{ }(x_{2} -x_{1})(x_{2} -x_{1})...(x_{n} -x_{1}) \prod_{2\leqslant j <i \leqslant n }(x_{i} - x_{j}) \text{ } \text{ } \text{ }= \text{ } \text{ } \text{ } \prod_{1\leqslant j <i \leqslant n }(x_{i} - x_{j})

5阶行列范德蒙德展开

①当j=1时,i = 2,3,4,5

②当j=2时,i = 3,4,5

③当j=3时,i = 4,5

④当j=4时,i = 5

⑤最后展开一共十项

11111x1x2x3x4x5(x1)2(x2)2(x3)2(x4)2(x5)2(x1)3(x2)3(x3)3(x4)3(x5)3(x1)4(x2)4(x2)4(x4)4(x5)4\begin{vmatrix}1&1 &1& 1& 1\\x_{1}&x_{2} &x_{3}& x_{4}&x_{5} \\(x_{1})^{2}&(x_{2})^{2} &(x_{3})^{2}& (x_{4})^{2}&(x_{5})^{2}\\ (x_{1})^{3}&(x_{2})^{3} &(x_{3})^{3} & (x_{4})^{3}&(x_{5})^{3}\\(x_{1})^{4}&(x_{2})^{4} &(x_{2})^{4} & (x_{4})^{4}&(x_{5})^{4}\end{vmatrix}
=   (x2x1)(x3x1)(x4x1)(x5x1)(x3x2)(x4x2)(x5x2)(x4x3)(x5x3)(x5x4)= \text{ } \text{ } \text{ } (x_{2}-x_{1})(x_{3}-x_{1})(x_{4}-x_{1})(x_{5}-x_{1})(x_{3}-x_{2})(x_{4}-x_{2})(x_{5}-x_{2})(x_{4}-x_{3})(x_{5}-x_{3})(x_{5}-x_{4})

小示例

1111151324251941612512786462518116256\begin{vmatrix}1&1 &1& 1& 1\\5&-1 &3& 2&4 \\25&1 &9& 4&16\\125&-1&27&8&64\\ 625&1&81 &16&256\end{vmatrix}
=(15)(35)(25)(45)(3+1)(2+1)(4+1)(23)(43)(42)=4320 =(-1-5)(3-5)(2-5)(4-5)(3+1)(2+1)(4+1)(2-3)(4-3)(4-2)=-4320
python代码实现

import numpy as np
from numpy.linalg import  *
mydet=np.array([[1,1,1,1,1],[5,-1,3,2,4],[25,1,9,4,16],[125,-1,27,8,64],[625,1,81,16,256]])
print(det(mydet))

→ 输出的结果为:(验证无误)

-4320.000000000022

2 克莱姆法则

注意克莱姆法则使用的前提条件:方程的个数等于未知数的个数

系数行列式:就是把方程组里面未知数的系数拿出来组成的行列式,比如下面方程组的系数行列式如下

{x1+x2+x3=7x1x2+5x3=6x1+x2+6x3=9            D=111115116\begin{cases} x_{1}+x_{2} + x_{3} =7 \\ x_{1}-x_{2}+5x_{3}=6\\ -x_{1} +x_{2} +6x_{3} =9 \end{cases} \text{ } \text{ } \text{ } \text{ } \text{ } \text{ } \Rightarrow \text{ } \text{ } \text{ } \text{ } \text{ } \text{ } D = \begin{vmatrix}1&1 &1\\1&-1 &5\\-1&1 &6\end{vmatrix}

如果系数行列式D!=0D != 0,,那么未知数的解就为xj=DjDx_{j} =\frac{D_{j}}{D},其中DjD_{j}是将未知数所在的列元素换成方程组等号右侧的值,然后其他列的元素就是原系数行列式元素不变,注意观察每列的变化

D1=711615916      D2=171165196      D3=117116119      D_{1} = \begin{vmatrix}7&1 &1\\6&-1 &5\\9&1 &6\end{vmatrix} \text{ } \text{ } \text{ } \text{ } \text{ } \text{ }D_{2} = \begin{vmatrix}1&7 &1\\1&6 &5\\-1&9&6\end{vmatrix} \text{ } \text{ } \text{ } \text{ } \text{ } \text{ }D_{3} = \begin{vmatrix}1&1 &7\\1&-1 &6\\-1&1&9\end{vmatrix} \text{ } \text{ } \text{ } \text{ } \text{ } \text{ }

故可以算出未知数的解:(很明显发现D在分母上,所以要求系数行列式不为0)
x1=D1D=2.41      x2=D2D=3.23      x3=D3D=1.36x_{1} = \frac{D_{1}}{D}=2.41 \text{ } \text{ } \text{ } \text{ } \text{ } \text{ }x_{2} = \frac{D_{2}}{D}= 3.23\text{ } \text{ } \text{ } \text{ } \text{ } \text{ }x_{3} = \frac{D_{3}}{D}=1.36

综上,克莱姆法则的使用中:①方程的个数与未知数个数相等;②系数行列式的值不为0;③计算量是非常大的,可借助编程实现

import numpy as np

d = np.reshape([1,1,1,1,-1,5,-1,1,6],(3,3))
d1 = np.reshape([7,1,1,6,-1,5,9,1,6],(3,3))
d2 = np.reshape([1,7,1,1,6,5,-1,9,6],(3,3))
d3 = np.reshape([1,1,7,1,-1,6,-1,1,9],(3,3))

x1 = np.linalg.det(d1)/np.linalg.det(d)
x2 = np.linalg.det(d2)/np.linalg.det(d)
x3 = np.linalg.det(d3)/np.linalg.det(d)
print(x1,x2,x3)
#2.409090909090908 3.2272727272727266 1.3636363636363635

定理1: 如果多元方程组的右侧全为0(也称齐次方程组),至少有零解,因为直接将方程组最后的结果替换到相应的列。DiD_{i}行列式的值均为0,也就是分子为0

定理2:对于齐次方程组,且系数行列式不为0,那么方程组只有零解

定理3:齐次方程组(方程个数等于未知数个数)有非零解     D=0\iff D = 0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章