3x3 v-u_rotation
Linear parametrization of the (3x3) Direction Cosine Matrix associated to a rotation around any axis.
This block implements the LFT parametrization of the (3x3) direction cosine matrix (DCM) -or its transposed- associated to the rotation of a given angle $\theta$ around a given axis $\mathbf{v}$ to transform the frame $\mathcal{R}_1$ into the frame $\mathcal{R}_2$.
The parametrization is in tangent of the quarter-angle: $\sigma_4=\tan(\theta/4)$ to derive LFT when $\theta$ is a varying or an uncertain parameter.
DCM is the matrix of the coordinates of the rotated frame axes in the initial frame.
See also: 3x3z-u_rotation, 6x6v-u_rotation, 3x3v-nl_rotation, 6x6v-nl_rotation
Contents
Description
The block named 3x3z-u_rotation gives the non linear direction cosine matrix ($\mathbf{DCM}_\mathbf{z}$) associated to the rotation of a given angle $\theta$ around the $3^{rd}$ axis. To exploit this result, an intermediate frame $\mathcal{R}_i=(\mathbf{x}_i,\mathbf{y}_i,\mathbf{z}_i)$ is used such that $\mathbf{z}_i$ is along $\mathbf{v}$. Then: $$\mathbf{DCM}=\mathbf{P}_{2/1}=\mathbf{P}_{i/1}\underbrace{\left[\begin{array}{ccc}\cos(\theta) & -\sin(\theta) & 0 \\ \sin(\theta) & \cos(\theta) & 0 \\ 0 & 0 & 1\end{array}\right]}_{\mathbf{DCM}_\mathbf{z}} \mathbf{P}_{i/1}^T\,.$$
with:
- $\mathbf{P}_{i/1}=\mathbf{P_v}\left[\begin{array}{ccc} \mbox{det}(\mathbf{P_v}) & 0 & 0\\ 0 & 1 & 0 \\ 0 & 0 & 1\end{array}\right]$,
- $\mathbf{P_v}=[\mbox{null}([\mathbf{\tilde{v}}]^T_{\mathcal{R}_1})\quad [\mathbf{\tilde{v}}]_{\mathcal{R}_1}]$,
- $\mathbf{\tilde{v}}=\mathbf{v}/\|\mathbf{v}\|$.
Ports
Input: a (3x1) vector $\mathbf{x}$ in the frame $\mathcal{R}_{2}$ (resp. $\mathcal{R}_{1}$).
Output: the expression of the (3x1) vector $\mathbf{x}$ in the frame $\mathcal{R}_{1}$ (resp. $\mathcal{R}_{2}$).
$\left[\mathbf{x}\right]_{\mathcal{R}_{1}} = \mathbf{DCM} \, \left[\mathbf{x}\right]_{\mathcal{R}_{2}}$ (resp. $\left[\mathbf{x}\right]_{\mathcal{R}_{2}} = \mathbf{DCM}^T \, \left[\mathbf{x}\right]_{\mathcal{R}_{1}}$)
Parameters
The two parameters are
- the coordinates of the (3x1) rotation axis vector $\mathbf{v}$ in $\mathcal{R}_{1}$ (or $\mathcal{R}_{2}$).
- the angle $\theta$ (unit: $rd$). It can also be an uncertain parameter declared with "ureal" with mode "Range".
Example: >> ureal('theta',0,'Range',[-pi pi])
Remarks: when "ureal" us used, "ulinearize" rather than "linmod" is recommanded. Then the uncertain model is parameterized according to the real parameter labelled "tan_theta_div4".
A checkbox is proposed to implement the transposed: $\mathbf{DCM}^T$.
Simulink diagram under the mask