4 votos

Matriz de rotación mínima para dos vectores en $\mathbb{R}^n$

Supongamos que tenemos dos vectores normales $v, u \in \mathbb{R}^n, \|u\|_2=1, \|v\|_2=1$ . Nos gustaría encontrar una matriz de rotación $R\in\mathbb{R}^{n \times n}$ que satisfaga $R u = v$ . Es evidente que esto no determina unívocamente la matriz $R$ porque sólo hay $n$ ecuaciones mientras que hay $n(n-1)/2$ grados de libertad para $R$ . Sin embargo, podemos hacerla única forzándola a rotar sólo vectores en la dirección $Span\{u,v\}$ . En otras palabras: $$\forall w \in Span\{u,v\}^\perp : R w = w$$ Intuitivamente, sólo rota vectores en el $Span\{u,v\}$ plano mientras que deja todas las demás direcciones intactas. En este sentido, la matriz de rotación es mínima.

En el caso muy simple de que $Span\{u,v\} = Span\{e_i,e_j\}$ es decir, el espacio lineal comprendido entre $u,v$ es la misma que la abarcada por $e_i, e_j$ podemos calcular $R$ como sigue: $R = I_n - M$ en el que $M\in \mathbb{R}^{n\times n}$ es sólo ceros excepto su $i$ -y $j$ -filas y columnas: $$M_{i, j\times i, j} = \begin{bmatrix} 1-\cos \theta & \sin \theta\\ -\sin\theta & 1-\cos\theta \\ \end{bmatrix}$$ en el que $\theta = \cos^{-1} \langle u, v \rangle$

¿Existe alguna forma de calcular la matriz de rotación para vectores normales generales? $u, v$ ?

1voto

Zeekless Puntos 76

Sea $v_1,v_2 \in\mathbb{R}^n$ sean vectores normales linealmente independientes, es decir $\|v_1\|=\|v_2\|=1$ y $\operatorname{dim}\operatorname{Span}(v_1,v_2)=2$ .

Sea $\{r_3, r_4,\dots, r_n\}$ sea una base ortonormal para el complemento ortogonal $\operatorname{Span}(v_1,v_2)^{\perp}$ del plano abarcado por $v_1$ y $v_2$ .

Primero encontramos una base ortonormal para $\operatorname{Span}(v_1,v_2)$ que así sea $\{w_1,w_2 \}$ . Se puede utilizar simplemente el proceso de Gram-Schmidt para obtener esta base como $$ w_1 = v_1,\quad w_2 = \frac{\Big(v_2-(v_2^{\rm T}w_1)w_1\Big)}{\|v_2-(v_2^{\rm T}w_1)w_1\|} \;. $$

A continuación, el matriz de rotación mínima $R$ se puede encontrar como

$$ R = \underbrace{\begin{bmatrix} \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.5ex} & \rule[-1ex]{0.5pt}{6.6ex} & & \rule[-1ex]{0.5pt}{6.6ex} \\ w_1 & w_2 & r_3 & \dots & r_n \\ \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.5ex} & & \rule[-1ex]{0.5pt}{6.6ex}\end{bmatrix}}_{\Pi} \underbrace{\begin{bmatrix} \cos(\theta) & -\sin(\theta) & & \\ \sin(\theta) & \phantom{-}\cos(\theta) & & \\ & & 1 & \\ & & & \ddots & \\ & & & & 1\end{bmatrix}}_{S} \underbrace{\begin{bmatrix} \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.5ex} & \rule[-1ex]{0.5pt}{6.6ex} & & \rule[-1ex]{0.5pt}{6.6ex} \\ w_1 & w_2 & r_3 & \dots & r_n \\ \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.6ex} & \rule[-1ex]{0.5pt}{6.5ex} & & \rule[-1ex]{0.5pt}{6.6ex}\end{bmatrix}^{\rm T}}_{\Pi^{\rm T}}, $$

donde $\theta=\arccos(v_1^{\rm T}v_2)$ si $\{w_1,w_2\}$ se obtuvieron con el proceso de Gram-Schmidt, pero en general $\theta=\pm\arccos(v_1^{\rm T}v_2)$ . El signo es " $+$ "si la orientación de $\{w_1,w_2\}$ es la misma que la orientación de $\{v_1,v_2\}$ y el signo es " $-$ "en caso contrario. Obsérvese que el proceso de Gram-Schmidt preserva la orientación y nos da una " $+$ ".

Tenga en cuenta que $\Pi \in O(n)$ y $S \in SO(n)$ y así $$R^{}=\Pi^{} S^{} \Pi^{\rm T} = \Pi^{} S^{} \Pi^{-1} \in S^{}O^{}(n)$$ es una rotación.

Sea $\{e_i\}_{i=1}^{n}$ denotan una base estándar en $\mathbb{R}^n$ . Se puede ver que

$$ R^{}r_i = \Pi^{} S^{} \Pi^{\rm T} r_i = \Pi^{} S^{} e_i = \Pi^{} e_i = r_i , $$

lo que significa que $R$ actúa como un mapa de identidad en $\operatorname{Span}(v_1,v_2)^{\perp}$ .

Ambos $v_1$ , $v_2$ son enviados por $\Pi ^{\rm T}$ à $\operatorname{Span}(e_1,e_2)$ y se gira por $S$ a través de un ángulo $\theta$ y luego enviado de vuelta por $\Pi$ . El hecho de que $\Pi$ es una matriz ortogonal garantiza que el ángulo entre $\Pi ^{\rm T}v_1$ y $\Pi ^{\rm T}v_2$ es igual al ángulo entre $v_1$ y $v_2$ y tenemos

$$ S^{}\Pi ^{\rm T}v_1=\Pi ^{\rm T}v_2 $$

$$ v_2=\Pi^{}S^{}\Pi ^{\rm T}v_1 $$

$$ v_2=Rv_1 $$

0voto

Michael Hoppe Puntos 5673

Demasiado largo para un comentario... Deja $a^{\top}$ sea la proyección de $a$ en el tramo de $u$ y $v$ tal que $a=a^{\top}+a^{\perp}$ . A continuación, gire $a^{\top}$ por $\theta$ y añada $a^{\perp}$ otra vez.

Alternativamente: Ampliar $\{u,v\}$ a una base. Queremos $u$ que se asignará a $v$ y $v$ asignado a $2\langle u,v\rangle v-u$ . Con respecto a esta base, la matriz de $R$ es la identidad excepto en la parte superior izquierda $2\times2$ entradas; se leen $$\begin{pmatrix}0&-1\\ 1&2\langle u,v\rangle\end{pmatrix}.$$

Aún más alternativamente: llame a $c=\langle u,v\rangle$ . Ahora calcule como de costumbre - con un poco de ayuda de la matriz Gram de $u$ y $v$ - la componente tangencial $$a^{\top}=\frac{1}{1-c^2}\bigl((\langle u,a\rangle-c\langle v,a\rangle)u +(\langle v,a\rangle-c\langle u,a\rangle)v\bigr).$$

Para obtener $Ra^{\top}$ cambiar $u$ à $v$ y $v$ à $2cv-u$ . Calcule ahora $$Ra=a^{\perp}+Ra^{\top}=a-a^{\top}+Ra^{\top} =a-\frac{1}{1+c}\bigl(\langle u+v,a\rangle u+\langle v-(1+2c)u,a\rangle v\bigr).$$

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X