我想知道 Matlab 中是否有一种智能有效的方法来计算几个一维数组的 kronecker 积。
我的意思是这样的
A = [a1, a2];
B = [b1, b2];
C = [c1, c2];
K = f(A,B,C) = [a1*b1*c1, a1*b1*c2, a1*b2*c1, ... ]
一种可能的方法是使用 kron(X,Y) 函数,但必须将其放入循环中才能获得上述结果,因为 kron 函数每次只接受 2 个参数。
K = 1;
tot_arrays = [A, B, C];
for i=1:num_arrays
K = kron(K,tot_arrays(:,i));
end
对于每次超过 2 个数组的 kron 乘法,难道没有更智能、更有效的方法来获得相同的结果吗?
谢谢