matlab编辑范德蒙德行列式

计算行列式 |a1^5 a1^4*b1 a1^3*b1^2 a1^2*b1^3 a1*b1^4 b1^5|
|a2^5 a2^4*b2 a2^3*b2^2 a2^2*b2^3 a2*b2^4 b2^5|
|a3^5 a3^4*b3 a3^3*b3^2 a3^2*b3^3 a3*b3^4 b3^5|
|a4^5 a4^4*b4 a4^3*b4^2 a4^2*b4^3 a4*b4^4 b4^5|
|a5^5 a5^4*b5 a5^3*b5^2 a5^2*b5^3 a5*b5^4 b5^5|(提示:转换为范德蒙德行列式)

你给的这个矩阵不能构成行列式,因为其不是方阵。

 

生成这个符号矩阵的代码如下:

% 定义符号变量a1-a5、b1-b5,并生成矩阵A、B
A = sym( zeros(5, 6) );
B = A;
for i = 1 : 5
    eval( sprintf('syms a%i b%i', i, i) );
    A(i, :) = eval( sprintf('a%i', i) ) .^ (5:-1:0);
    B(i, :) = eval( sprintf('b%i', i) ) .^ (0:5);
end
AB = A .* B

 

运行结果:

AB =
 
[      a1^5,   a1^4*b1, a1^3*b1^2, a1^2*b1^3,   a1*b1^4,      b1^5]
[      a2^5,   a2^4*b2, a2^3*b2^2, a2^2*b2^3,   a2*b2^4,      b2^5]
[      a3^5,   a3^4*b3, a3^3*b3^2, a3^2*b3^3,   a3*b3^4,      b3^5]
[      a4^5,   a4^4*b4, a4^3*b4^2, a4^2*b4^3,   a4*b4^4,      b4^5]
[      a5^5,   a5^4*b5, a5^3*b5^2, a5^2*b5^3,   a5*b5^4,      b5^5]

追问

我这是行列式呀,5×5的,然后这道题答案挺长的,你这个不是吧,不过还是谢了

追答

你再好好数一数是5列吗?
只要条件没问题,计算行列式很简单,直接det就行了。

温馨提示:答案为网友推荐,仅供参考
相似回答