(S|D)ROTM¶
Single and double ROTM.
Description¶
Applies a modified plane rotation to a series of points.
The exact form of the rotation matrix will depend on FLAG which is the first element of the PARAM input array.
![\fvar{PARAM} =
\left[
\begin{array}{c}
\fvar{FLAG} \\
\fvar{H11} \\
\fvar{H21} \\
\fvar{H12} \\
\fvar{H22}
\end{array}
\right]](../../_images/math/03438f91e7799b5c497fee9acb474375bf3babea.png)
If
:
![\left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]
\assign
\left[
\begin{array}{ll}
\fvar{H11} & \fvar{H12} \\
\fvar{H21} & \fvar{H22} \\
\end{array}
\right]
* \left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]](../../_images/math/e8dd25f27b9dfecc62a6897046786c6a63051906.png)
If
:
![\left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]
\assign
\left[
\begin{array}{ll}
1 & \fvar{H12} \\
\fvar{H21} & 1 \\
\end{array}
\right]
* \left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]](../../_images/math/e6eeeba4f3fbd6e6b14928f8a2c7595af7ebcd99.png)
If
:
![\left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]
\assign
\left[
\begin{array}{ll}
\fvar{H11} & 1 \\
-1 & \fvar{H22} \\
\end{array}
\right]
* \left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]](../../_images/math/70d91256f75593d3834b8794ca07d724308de60b.png)
If
:
![\left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]
\assign
\left[
\begin{array}{ll}
1 & 0 \\
0 & 1 \\
\end{array}
\right]
* \left[
\begin{array}{c}
x_{i} \\
y_{i}
\end{array}
\right]](../../_images/math/db4ba1e7a2af386ce5269fb86769b81ea298fe23.png)
BLAS Interface¶
void srotm(const qml_long *N, float *X, const qml_long *INCX, float *Y,
const qml_long *INCY, const float *PARAM);
void drotm(const qml_long *N, double *X, const qml_long *INCX, double *Y,
const qml_long *INCY, const double *PARAM);
CBLAS Interface¶
void cblas_srotm(const qml_long N, float *X, const qml_long INCX, float *Y,
const qml_long INCY, const float *PARAM);
void cblas_drotm(const qml_long N, double *X, const qml_long INCX, double *Y,
const qml_long INCY, const double *PARAM);
Arguments¶
| N | The number of elements in X and Y |
| X | The X coordinates for the series of points, must be at least: ![]() |
| INCX | Distance between individual elements in X |
| Y | The Y coordinates for the series of points, must be at least: ![]() |
| INCY | Distance between individual elements in Y |
| PARAM | Rotation parameter array of length 5 |

