[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]

*AIX Version 4.3 Base Operating System and Extensions Technical Reference, Volume 2*

## SSPR or DSPR Subroutine

### Purpose

Performs the symmetric rank 1 operation.

### Library

BLAS Library (**libblas.a**)

### FORTRAN Syntax

**SUBROUTINE** **SSPR(***UPLO***, ***N***, ***ALPHA***,**
*X***, ***INCX***, ***AP***)**
**REAL** *ALPHA*
**INTEGER** *INCX***,***N*
**CHARACTER*1** *UPLO*
**REAL** *AP***(*), ***X***(*)**

**SUBROUTINE** **DSPR(***UPLO***, ***N***, ***ALPHA***,**
*X***, ***INCX***, ***AP***)**
**DOUBLE PRECISION** *ALPHA*
**INTEGER** *INCX***,***N*
**CHARACTER*1** *UPLO*
**DOUBLE PRECISION** *AP***(*), ***X***(*)**

### Description

The **SSPR** or **DSPR** subroutine performs the symmetric rank 1 operation:

`A`
` := alpha * x * x' + `
`A`

where alpha is a real scalar, x is an *N* element vector and *A* is an *N* by *N* symmetric matrix, supplied in packed form.

### Parameters

*UPLO* |
On entry, *UPLO* specifies whether the upper or lower triangular part of the matrix *A* is supplied in the packed array *AP* as follows:
*UPLO *= 'U' or 'u' |
The upper triangular part of *A* is supplied in *AP*. |
*UPLO* = 'L' or 'l' |
The lower triangular part of *A* is supplied in *AP*. |
Unchanged on exit. |

*N* |
On entry, *N* specifies the order of the matrix *A*; *N* must be at least 0; unchanged on exit. |

*ALPHA* |
On entry, *ALPHA* specifies the scalar alpha; unchanged on exit. |

*X* |
A vector of dimension at least (1 + (*N*-1) * abs(*INCX*) ); on entry, the incremented array* X* must contain the *N* element vector x; unchanged on exit. |

*INCX* |
On entry, *INCX* specifies the increment for the elements of *X*; *INCX* must not be 0; unchanged on exit. |

*AP* |
A vector of dimension at least ( ( *N* * (*N*+1) )/2 ); on entry with *UPLO* = 'U' or 'u', the array *AP* must contain the upper triangular part of the symmetric matrix packed sequentially, column by column, so that *AP*(1) contains *A*(1,1), *AP*(2) and *AP*(3) contain *A*(1,2) and *A*(2,2) respectively, and so on. On exit, the array* AP* is overwritten by the upper triangular part of the updated matrix. On entry with *UPLO* = 'L' or 'l', the array *AP* must contain the lower triangular part of the symmetric matrix packed sequentially, column by column, so that *AP*(1) contains *A*(1,1), *AP*(2) and *AP*(3) contain *A*(2,1) and *A*(3,1) respectively, and so on. On exit, the array *AP* is overwritten by the lower triangular part of the updated matrix. |

[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]