I try to explain what I am trying to achieve.
NOTE: I am NOT a mathematician. I say "contraction" for reasons that will probably be clear in a few lines, but I am not sure it is the right proper mathematical definition of such an operation.
I have two basic inputs which I need to combine, depending on the context:
- "t", vector of dimensions "D x 1";
- "A" matrix of some coefficients of dimension "D x L".
They are the basic for defining a vector "f" of dimensions "L x 1" via
f = A^T . t
Now, for simplicity, I start from the 2D case. For some reasons, I want to compute <f . f^T> (matrix of dimensions "L x L"), which is given by
f f^T = A^T . t . t^T . A
T = t . t^T
is a matrix of dimensions "D x D".
NOTE: now should be clear why I think to "contraction". Latter equations give a "L x L" matrix from a "D x D" one, in which usually L < D.
Now, I would like to extend this concept to the 3D case. What I have in mind is that I will have a 3D matrix of dimensions "D x D x D" (built from the only input "t") which is finally compacted into a "L x L x L" matrix using the other known input, the matrix A.
I studied a bit of tensor calculus, but I am not sure how this is of application in this case.