MATLAB Answers

How do I transform one matrix by another?

21 views (last 30 days)
Anna Blakley
Anna Blakley on 9 Nov 2016
Commented: Hugh Collett on 6 Jul 2020
I am trying to write a program where I apply a linear transformation represented by one matrix to each value in a different matrix. I have no idea how to go about doing this. Thank you!

  1 Comment

KSSV on 9 Nov 2016
Why don't you give an example or elaborate your question.

Sign in to comment.

Answers (1)

Alon Rozen
Alon Rozen on 9 Nov 2016
Edited: Alon Rozen on 9 Nov 2016
Hi, As KSSV wrote, you need to elaborate your question a bit. But if I am guessing right, you have a matrix A, represented in some coordinate system, and you want to transform it to a different coordinate system. You also have the transformation matrix T. If so, the way to transform is:
B = T*A*T'
Where T' is the transpose of T (actually it is the inverse matrix but with linear transformation it is the same) and B contains the transformed values of A. This is the case ONLY if I understood right your problem!

  1 Comment

Hugh Collett
Hugh Collett on 6 Jul 2020
Hi Alon, I know this is a very old question but could you explain why it is not just B = T*A please? Thanks

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!