How to find a unitary (transformation) matrix between two given vectors?

751 Views Asked by At

Suppose that $\vec{b}=U\vec{a}$ for two normalized vectors $\vec{a}$ and $\vec{b}$.

When the two vectors are known, can we find a unitary matrix $U$ that satisfies the transformation $\vec{b}=U\vec{a}$?

1

There are 1 best solutions below

2
On

There are infinitely many such matrices.

In fact, let $\vec a, \vec b, \vec x_3, \dots \vec x_n$ be an orthogonal basis for your vector space. Then, if you represent the mapping $U$ in this basis with a matrix $U'$, all you are demanding is that the first column of $U$ is equal to $[0,1,0,\dots,0]^T$.

In other words, let $$U'=\begin{bmatrix}0& *& *& \dots &*\\ 1& *& *& \dots &*\\ 0& *& *& \dots &*\\ \vdots& \vdots& \vdots& \ddots &\vdots\\ 0& *& *& \dots &* \end{bmatrix}$$

be an orthogonal matrix and let $P=\begin{bmatrix}\vec a &\vec b&\vec x_3 &\cdots& \vec x_n\end{bmatrix}$ (note that $P$ is also an orthogonal matrix).

Now, define

$$U = P\cdot U'\cdot P^*.$$

First of all, $U$ is again orthogonal, since $$U^*U=PU'^*P^*PU'P^*=PU'^*IU'P^*=PU'^*U'P^*=PIP^*=PP^*=I$$

Second, you have $$U\vec a = P\cdot U'\cdot (P^* \vec a) = P\cdot U'\cdot \begin{bmatrix}1\\0\\\vdots\\0\end{bmatrix}=P\cdot \begin{bmatrix}0\\1\\0\\\vdots\\0\end{bmatrix} = \vec b$$