[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

# Technical Reference: Base Operating System and Extensions , Volume 2

## SROTM or DROTM Subroutine

### Purpose

Applies the modified Givens transformation.

### Library

BLAS Library (libblas.a)

### FORTRAN Syntax

SUBROUTINE SROTM(N,X,INCX,Y,INCY,PARAM)
INTEGER N, INCX, INCY
REAL X(*), Y(*), PARAM(5)

```SUBROUTINE DROTM(N,X,INCX,Y,INCY,PARAM)
INTEGER N,INCX,INCY
DOUBLE PRECISION X(*),Y(*),PARAM(5)
```

### Description

Let H denote the modified Givens transformation defined by the parameter array PARAM. The SROTM or DROTM subroutine computes:

```---   ---            ---   ---
|   x   |            |   x   |
|       |  :=  H  *  |       |
|   y   |            |   y   |
---   ---            ---   ---
```

where H is a 2 x 2 matrix with the components defined by the elements of the array PARAM as follows:

```if PARAM(1) == 0.0
H(1,1) = H(2,2) = 1.0
H(2,1) = PARAM(3)
H(1,2) = PARAM(4)
```

```if PARAM(1) == 1.0
H(1,2) = H(2,1) = -1.0
H(1,1) = PARAM(2)
H(2,2) = PARAM(5)
```

```if PARAM(1) == -1.0
H(1,1) = PARAM(2)
H(2,1) = PARAM(3)
H(1,2) = PARAM(4)
H(2,2) = PARAM(5)
```

```if PARAM(1) == -2.0
H = I (Identity matrix)
```

### Parameters

 N On entry, N specifies the number of elements in X and Y; unchanged on exit. X Vector of dimension at least (1 + (N-1) * abs(INCX) ); on exit, modified as described above. INCX On entry, INCX specifies the increment for the elements of X; INCX must be greater than 0; unchanged on exit. Y Vector of dimension at least (1 + (N-1) * abs(INCY) ); on exit, modified as described above. INCY On entry, INCY specifies the increment for the elements of Y; INCY must be greater than 0; unchanged on exit. PARAM Vector of dimension (5); on entry, must be set as described above. Specifically, PARAM(1) is a flag and must have value of either 0.0, -1.0, 1.0, or 2.0; unchanged on exit.

### Implementation Specifics

If N <= 0 or H is an identity matrix, the subroutines return immediately.

### Related information

The SROTMG or DROTMG (SROTMG or DROTMG Subroutine) subroutine builds the PARAM array prior to use by the SROTM or DROTM subroutine.

[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]