Rotating vector $[x_1,x_2,...,x_n]^T$ to a vector of the form $[y_1,0,...,0]^T$ on $\mathbb{R}^n$.

30 Views Asked by At

Assume $x=[x_1,x_2,...,x_n]^T$ a vector in $\mathbb{R}^n$. I am trying to rotate the vector in such a way that I get a vector of the form $y=[y_1,0,...,0]^T$ in $\mathbb{R}^n$. This is probably possible my rotating accordingly by multiplying with $n-1$ rotation matrices. My question is how do we specify these rotation matrices and if there is a good closed form for the product of those $n-1$ matrices so that I can have the rotation by doing only one multiplication. Thank you for your time!

1

There are 1 best solutions below

0
On

You can apply the householder reflection. Let's assume that $x$ has length one; if not, divide it by its length before we start.

Let $$ v = x - e_1 $$ and $$ M = I - \frac{2 v v^t}{v^t v}. $$ Then $M$ maps $x$ to $e_1$, as yo can check by multiplication.

Now $M$ is a reflection, not a rotation, but if you multiply it by another reflection that leaves $e_1$ fixed, like $$ N = \begin{bmatrix} 1 & & & &\\ & -1 & & &\\ & & 1 & & &\\ & & & ... &\\ & & & & 1 \end{bmatrix} $$ then the product $NM$ is a rotation sending your vector to $e_1$ and you're done.