# NAG FL Interfacef06exf (droti)

## ▸▿ Contents

Settings help

FL Name Style:

FL Specification Language:

## 1Purpose

f06exf applies a real plane rotation to a sparse real vector and a real vector.

## 2Specification

Fortran Interface
 Subroutine f06exf ( nz, x, indx, y, c, s)
 Integer, Intent (In) :: nz, indx(*) Real (Kind=nag_wp), Intent (In) :: c, s Real (Kind=nag_wp), Intent (Inout) :: x(*), y(*)
#include <nag.h>
 void f06exf_ (const Integer *nz, double x[], const Integer indx[], double y[], const double *c, const double *s)
The routine may be called by the names f06exf, nagf_blas_droti or its BLAS name droti.

## 3Description

f06exf applies a real plane rotation to a sparse real vector $x$ stored in compressed form and a real vector $y$ in full storage form:
 $( xT yT ) ← ( c s -s c ) ( xT yT ) .$
The plane rotation has the form generated by f06aaf or f06baf.

## 4References

Dodson D S, Grimes R G and Lewis J G (1991) Sparse extensions to the Fortran basic linear algebra subprograms ACM Trans. Math. Software 17 253–263

## 5Arguments

1: $\mathbf{nz}$Integer Input
On entry: the number of nonzeros in the sparse vector $x$.
2: $\mathbf{x}\left(*\right)$Real (Kind=nag_wp) array Input/Output
Note: the dimension of the array x must be at least $\mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,{\mathbf{nz}}\right)$.
On entry: the nonzero elements of the sparse vector $x$.
On exit: the transformed vector $x$.
3: $\mathbf{indx}\left(*\right)$Integer array Input
Note: the dimension of the array indx must be at least $\mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(1,{\mathbf{nz}}\right)$.
On entry: ${\mathbf{indx}}\left(\mathit{i}\right)$ must contain the index of ${\mathbf{x}}\left(\mathit{i}\right)$ in the sparse vector $x$, for $\mathit{i}=1,2,\dots ,{\mathbf{nz}}$.
Constraint: the indices must be distinct.
4: $\mathbf{y}\left(*\right)$Real (Kind=nag_wp) array Input/Output
Note: the dimension of the array y must be at least $\underset{\mathit{k}}{\mathrm{max}}\phantom{\rule{0.25em}{0ex}}\left\{{\mathbf{indx}}\left(\mathit{k}\right)\right\}$.
On entry: the vector $y$. Only the elements corresponding to indices in indx are referenced.
On exit: the transformed vector $y$. Only elements corresponding to indices in indx are altered.
5: $\mathbf{c}$Real (Kind=nag_wp) Input
On entry: the value $c$, the cosine of the rotation.
6: $\mathbf{s}$Real (Kind=nag_wp) Input
On entry: the value $s$, the sine of the rotation.

None.

Not applicable.