Answer

问题及解答

求等距变换

Posted by haifeng on 2014-11-28 18:19:31 last update 2014-11-28 18:19:31 | Edit | Answers (2)

在空间直角坐标系中, 求使原点不动, 并且将 $x$ 轴变成直线 $\frac{x}{\lambda}=\frac{y}{\mu}=\frac{z}{\nu}$ 的等距变换公式.

 

1

Posted by haifeng on 2015-09-03 23:06:35

$\mathbb{R}^3$ 的保持原点不动的等距变换就是正交变换

\[
\begin{array}{rcl}
f:\ \mathbb{R}^3&\rightarrow&\mathbb{R}^3\\
x&\mapsto&Ax
\end{array}
\]

其中 $A\in O(3)$.

现在已知 $A(1,0,0)^T=(\lambda,\mu,\nu)^T$, 求矩阵 $A$.

 


记 $\vec{e}_1=(1,0,0)^T$, $\vec{v}=(\lambda,\mu,\nu)^T$.

令 $\vec{n}=\vec{e}_1\times\vec{v}$, 即

\[
\vec{n}=\begin{vmatrix}
\vec{i} & \vec{j} & \vec{k}\\
1 & 0 & 0\\
\lambda & \mu & \nu\\
\end{vmatrix}=-\nu\vec{j}+\mu\vec{k}=(0,-\nu,\mu)^T.
\]

等距变换就是绕 $\vec{n}$ 所在的直线旋转 $\theta=\angle(\vec{e}_1,\vec{v})$ 这个变换.

\[
\cos\theta=\frac{\langle\vec{e}_1,\vec{v}\rangle}{|\vec{e}_1|\cdot|\vec{v}|}=\langle\vec{e}_1,\vec{v}\rangle=\lambda.
\]

于是 $\theta=\arccos\lambda$.


换个角度思考.

首先将 $\vec{v}=(\lambda,\mu,\nu)^T$ 投影到 $xoy$ 平面, 并单位化, 得到向量 $\vec{w}=\frac{1}{\sqrt{\lambda^2+\mu^2}}(\lambda,\mu,0)$.  设 $\alpha=\angle(\vec{e}_1,\vec{w})$, $\beta=\angle(\vec{v},\vec{w})$.

先绕 $z$ 轴旋转 $-\alpha$ 角, 然后再绕 $y$ 轴旋转 $-\beta$ 角, 则映射将 $\vec{v}$ 映到 $\vec{e}_1$. 记这个映射为 $f^{-1}$, 则对应的矩阵设为

\[
A=
\begin{pmatrix}
\cos(-\beta) & 0 & \sin(-\beta)\\
0 & 1 & 0\\
-\sin(-\beta) & 0 & \cos(-\beta)\\
\end{pmatrix}\cdot
\begin{pmatrix}
\cos(-\alpha) & \sin(-\alpha) & 0\\
-\sin(-\alpha) & \cos(-\alpha) & 0\\
0 & 0 & 1\\
\end{pmatrix}
\]

则 $f$ 的对应的矩阵就是 $A^{-1}$.


余下的请自己补充.

Remark.  当然也可以通过设正交矩阵为

\[
\begin{pmatrix}
\lambda & a & b\\
\mu & c & d\\
\nu & e & f\\
\end{pmatrix}
\]

然后根据条件去求出其中的参数.

 

2

Posted by haifeng on 2015-09-03 23:18:58

首先从最简单的例子开始, 在 $\mathbb{R}^2$ 上将坐标系逆时针旋转 $\theta$ 角度的变换是 $f:\mathbb{R}^2\rightarrow\mathbb{R}^2$, $v\mapsto Av$, 其中

\[
A=\begin{pmatrix}
\cos\theta & -\sin\theta\\
\sin\theta & \cos\theta
\end{pmatrix}.
\]

然后, 在 $\mathbb{R}^3$ 中考虑在平面 $y=kx$ 上绕 $(0,0,0)$ 旋转 $\theta$ 的变换. 假设 $k=\tan\alpha$. 

\[
\begin{array}{rcl}
f:\ \mathbb{R}^3 &\rightarrow &\mathbb{R}^3\\
v &\mapsto & Av
\end{array}
\]

求矩阵 $A$, 这里 $v=(x,y,z)^T$.

首先做坐标变换 $(x,y,z)\mapsto(u,v,z)$, 然后在 $uOz$ 坐标系中绕 $v$ 所在的轴逆时针旋转 $\theta$ 角. 于是

\[
A=\begin{pmatrix}
\cos\theta & 0 & -\sin\theta\\
0 & 1 & 0\\
\sin\theta & 0 & \cos\theta\\
\end{pmatrix}\cdot
\begin{pmatrix}
\cos\alpha & -\sin\alpha & 0\\
\sin\alpha & \cos\alpha & 0\\
0 & 0 & 1\\
\end{pmatrix}
\]