alpha
est un vecteur M×1
, et R
est un grand tableau de taille n×n×M
. Dans mon cas, n
et M
sont environ 3000. Comment puis-je vectoriser la sommation suivante dans MATLAB?Vectorisation de la sommation de la multipication d'un vecteur 1D et d'un tableau 3D
alpha(1)*R(:,:,1) + alpha(2)*R(:,:,2) + ... + alpha(M)*R(:,:,M)
Une façon que je pensais était de faire alpha la même taille et faire une opération élément par élément et, enfin, faire une sommation dans la 3ème dimension
sum(reshape(kron(alpha, ones(n*n,1)), [n,n,M]).*R,3)
Quelqu'un pourrait-il bien vouloir me faire savoir s'il est un moyen meilleur et efficace de le faire?