Skip to main content
1 of 2

Would it help for you to think of a matrix as a "big vector"? To see what I mean, if your matrix has components a_{ij}, then you could write A = sum_{i,j} a_{i,j} E_{ij}, where E_{ij} is a matrix which has all entries as zeros, except having a unity at position (i,j). Then your matrix space can be identified with a real Euclidean space R^{nn}, where your matrix A would have its counterpart, call it a = (a_{11}, ..., a_{1n}, a_{21}, ..., a_{nn}). In effect, you are just "stacking" rows/columns of the matrix on top of each other. The transposition operator would then be a linear operator T: R^{nn} -> R^{n*n}, i.e., a matrix with n^4 entries, and it would be a permutation matrix. Then you could transpose your original matrix by passing through this representation as A -> a -> Ta -> A^T. The switch from the first (A) to the second representation (a), and back, could be done via the "reshape" command in Matlab.