Finding the values of a matrix multiplied between two unknown matrices

inverse-problemslinear algebralinear-transformationsunitary-matrices

This is a slightly vague question I think, but I am wondering if there is any elegant way of solving this problem.

Say I have a multiplication between three unitary matrices operating on a vector, stacked as such

$\hat{s}_{out}=\mathbf{A_0} \mathbf{M} \mathbf{A_N} \hat{s}$

All matrices are 3×3 rotation matrices and I want to find out as much as possible as I can about matrix M. I can know, or measure directly, the product $\mathbf{A_0}\mathbf{A_N}$, and the vector $\hat{s}$ can also be any vector I choose (and I can do multiple measurements with different $\hat{s}$)

What can I determine about the matrix M with the information I have available?

Best Answer

By plugging in a basis of vectors for $\hat s$, we can get the matrix $X = A_0 M A_N$, and there is no further information to be attained by plugging in values for $\hat s$.

We can then use $A_0A_N$ as follows. Note that $$ X = A_0MA_N = A_0 A_N [A_N^{-1}MA_N] \implies\\ A_N^{-1}MA_N = (A_0A_N)^{-1}X. $$ That is, we are able to obtain a matrix unitarily similar to $M$. This allows us to compute the eigenvalues of $M$ (equivalently, its angle of rotation).

As Robert's post below demonstrates, this is all we can know about $M$.