Multiplication between tensor and vectors

6 次查看(过去 30 天)
I've a big tensor M_{abc}, let's say 500*200*500, and 3 vectors X, Y and Z whose dimensions are 500, 200 and 500. I've to perform the following operations
  • X_a=M_{abc}Y_bZ_c
  • Y_b=M_{abc}X_aZ_c
  • Z_c=M_{abc}X_aY_b
  • X=X/mean(X)
  • Y=Y/mean(Y)
  • Z=Z/mean(Z)
where the repeated indices are to be summed (M_{abc}Y_bZ_c=\sum_{b, c} M_{abc}Y_bZ_c). In the two dimensional case (matrix and two vectors) I would simply use matrix multiplications, considering that I've to repeat the procedure something between 5 and 50 times, till the 3 vectors converge stopping to vary under a new application of the algorithm, which is the best way to perform this procedure (hopefully without for loops)?

回答(1 个)

Matthew Paluszak
Matthew Paluszak 2020-5-29
I don’t know the answer, but I also would like to know!

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品


版本

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by