我正在寻找 MATLAB 中以下操作的有效实现。
假设有A = blkdiag(A_1,...,A_i,...,A_n)和B = blkdiag(B_1,...,B_i,...,B_n)。假设有两个块f(A_i,B_i)和输出变量的一些功能F = blkdiag(f(A_1,B_1),...,f(A_i,B_i),...,f(A_n,B_n))。因此,我向您寻求有关如何在不使用循环的情况下完成此任务的帮助。
在我的情况下f(A_i,B_i) = U'*kron(A_i,B_i)*U',对于一些矩阵U,n大约是 100。块A_i和B_i所有 i 的大小相同。所有帮助将不胜感激。