# Name

**HPL_dswap**y <-> x.

# Synopsis

`#include "hpl.h"`

`void`

`HPL_dswap(`

`const int`

`N`

,
`double *`

`X`

,
`const int`

`INCX`

,
`double *`

`Y`

,
`const int`

`INCY`

`);`

# Description

**HPL_dswap**swaps the vectors x and y.

# Arguments

N (local input) const int On entry, N specifies the length of the vectors x and y. N must be at least zero.

X (local input/output) double * On entry, X is an incremented array of dimension at least ( 1 + ( n - 1 ) * abs( INCX ) ) that contains the vector x. On exit, the entries of the incremented array X are updated with the entries of the incremented array Y.

INCX (local input) const int On entry, INCX specifies the increment for the elements of X. INCX must not be zero.

Y (local input/output) double * On entry, Y is an incremented array of dimension at least ( 1 + ( n - 1 ) * abs( INCY ) ) that contains the vector y. On exit, the entries of the incremented array Y are updated with the entries of the incremented array X.

INCY (local input) const int On entry, INCY specifies the increment for the elements of Y. INCY must not be zero.

# Example

`#include "hpl.h"`

int main(int argc, char *argv[]) { double x[3], y[3]; x[0] = 1.0; x[1] = 2.0; x[2] = 3.0; y[0] = 4.0; y[1] = 5.0; y[2] = 6.0; HPL_dswap( 3, x, 1, y, 1 ); printf("x=[%f,%f,%f]\n", x[0], x[1], x[2]); printf("y=[%f,%f,%f]\n", y[0], y[1], y[2]); exit(0); return(0); }