Math has a concept called singular value decomposition. The short version is that you put in one matrix and get three out. This apparently being a well known concept in engineering, it is implemented in the data analysis language IDL and in the NumPY library for Python, and you can probably guess where this is going. The singular value decomposition functions in IDL and NumPy produce different matrices for the same input matrix.
- All three output matrices have their columns swapped.
- One of the columns in the 'u' matrix is the negative of the matching column in the other language.
- One of the rows in the 'v' matrix is the negative of the matching row in the other language.
I've only tested one chunk of data, so I do not know if the pattern will hold for different input matrices.