NAG FL Interface
f06psf (dspr2)

1 Purpose

f06psf computes the rank-2 update of a real symmetric matrix stored in packed form.

2 Specification

Fortran Interface
Subroutine f06psf ( uplo, n, alpha, x, incx, y, incy, ap)
Integer, Intent (In) :: n, incx, incy
Real (Kind=nag_wp), Intent (In) :: alpha, x(*), y(*)
Real (Kind=nag_wp), Intent (Inout) :: ap(*)
Character (1), Intent (In) :: uplo
C Header Interface
#include <nag.h>
void  f06psf_ (const char *uplo, const Integer *n, const double *alpha, const double x[], const Integer *incx, const double y[], const Integer *incy, double ap[], const Charlen length_uplo)
The routine may be called by the names f06psf, nagf_blas_dspr2 or its BLAS name dspr2.

3 Description

f06psf performs the symmetric rank-2 update operation
AαxyT + αyxT + A ,  
where A is an n by n real symmetric matrix, stored in packed form, x and y are n-element real vectors, and α is a real scalar.

4 References

None.

5 Arguments

1: uplo Character(1) Input
On entry: specifies whether the upper or lower triangular part of A is stored.
uplo='U'
The upper triangular part of A is stored.
uplo='L'
The lower triangular part of A is stored.
Constraint: uplo='U' or 'L'.
2: n Integer Input
On entry: n, the order of the matrix A.
Constraint: n0.
3: alpha Real (Kind=nag_wp) Input
On entry: the scalar α.
4: x* Real (Kind=nag_wp) array Input
Note: the dimension of the array x must be at least max1, 1+n-1 ×incx .
On entry: the n-element vector x.
If incx>0, xi must be stored in x1+i-1×incx, for i=1,2,,n.
If incx<0, xi must be stored in x1-n-i×incx, for i=1,2,,n.
Intermediate elements of x are not referenced.
5: incx Integer Input
On entry: the increment in the subscripts of x between successive elements of x.
Constraint: incx0.
6: y* Real (Kind=nag_wp) array Input
Note: the dimension of the array y must be at least max1, 1+n-1 ×incy .
On entry: the n-element vector y.
If incy>0, yi must be stored in y1+i-1×incy, for i=1,2,,n.
If incy<0, yi must be stored in y1-n-i×incy, for i=1,2,,n.
Intermediate elements of y are not referenced.
7: incy Integer Input
On entry: the increment in the subscripts of y between successive elements of y.
Constraint: incy0.
8: ap* Real (Kind=nag_wp) array Input/Output
Note: the dimension of the array ap must be at least n× n+1/2 .
On entry: the n by n symmetric matrix A, packed by columns.
More precisely,
  • if uplo='U', the upper triangle of A must be stored with element Aij in api+jj-1/2 for ij;
  • if uplo='L', the lower triangle of A must be stored with element Aij in api+2n-jj-1/2 for ij.
On exit: the updated matrix A.

6 Error Indicators and Warnings

None.

7 Accuracy

Not applicable.

8 Parallelism and Performance

f06psf is not threaded in any implementation.

9 Further Comments

None.

10 Example

None.