Clear Filters
Clear Filters

Tensor multiplication (Rank 4)

13 views (last 30 days)
William White
William White on 1 Aug 2017
Edited: José-Luis on 1 Aug 2017
Is there a quick method (or quick and easy method) to transform rank 4 tensors in Matlab?
that is if I have a rank 4 tensor C(mnop) and a 3x3 transformation matrix A:
how do I implement this in matlab:
C'(ijkl) = A(im) A(jn) A(ko) A(lp) C(mnop)
or
C' = A A C AT AT
(where AT is the transpose of A)
kind regards William
  4 Comments
José-Luis
José-Luis on 1 Aug 2017
Edited: José-Luis on 1 Aug 2017
Nowadays (R2016b +) Matlab allows for explicit expansion of arithmetic operations. This should take it a step closer to what you want.
Unsolicited disclaimer: I don't personally use that because I still find it confusing. I guess I'm getting old.
William White
William White on 1 Aug 2017
you're not wrong - that does look confusing. I was hoping for a something a little more straightforward (i.e. a one line command like one would use to transform a matrix!)

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!