v?Pack

Copies elements of an array with specified indexing to a vector with unit increment.

Syntax

FORTRAN:

call vspacki( n, a, inca, y )

call vspackv( n, a, ia, y )

call vspackm( n, a, ma, y )

call vdpacki( n, a, inca, y )

call vdpackv( n, a, ia, y )

call vdpackm( n, a, ma, y )

call vcpacki( n, a, inca, y )

call vcpackv( n, a, ia, y )

call vcpackm( n, a, ma, y )

call vzpacki( n, a, inca, y )

call vzpackv( n, a, ia, y )

call vzpackm( n, a, ma, y )

C:

vsPackI( n, a, inca, y );

vsPackV( n, a, ia, y );

vsPackM( n, a, ma, y );

vdPackI( n, a, inca, y );

vdPackV( n, a, ia, y );

vdPackM( n, a, ma, y );

vcPackI( n, a, inca, y );

vcPackV( n, a, ia, y );

vcPackM( n, a, ma, y );

vzPackI( n, a, inca, y );

vzPackV( n, a, ia, y );

vzPackM( n, a, ma, y );

Include Files

Input Parameters

Name

Type

Description

n

FORTRAN 77: INTEGER

Fortran 90: INTEGER, INTENT(IN)

C: const int

Specifies the number of elements to be calculated.

a

FORTRAN 77: REAL for vspacki, vspackv, vspackm

DOUBLE PRECISION for vdpacki, vdpackv, vdpackm

COMPLEX for vcpacki, vcpackv, vcpackm

DOUBLE COMPLEX for vzpacki, vzpackv, vzpackm

Fortran 90: REAL, INTENT(IN) for vspacki, vspackv, vspackm

DOUBLE PRECISION, INTENT(IN) for vdpacki, vdpackv, vdpackm

COMPLEX, INTENT(IN) for vcpacki, vcpackv, vcpackm

DOUBLE COMPLEX, INTENT(IN) for vzpacki, vzpackv, vzpackm

C: const float* for vsPackI, vsPackV, vsPackM

const double* for vdPackI, vdPackV, vdPackM

const MKL_Complex8* for vcPackI, vcPackV, vcPackM

const MKL_Complex16* for vzPackI, vzPackV, vzPackM

FORTRAN: Array, DIMENSION at least(1 + (n-1)*inca) for v?packi,

Array, DIMENSION at least max( n,max(ia[j]) ), j=0, …, n-1 for v?packv,

Array, DIMENSION at least n for v?packm.

Specifies the input vector a.

C: Specifies pointer to an array that contains the input vector a. The arrays must be:

for v?PackI, at least(1 + (n-1)*inca)

for v?PackV, at least max( n,max(ia[j]) ), j=0, …, n-1

for v?PackM, at least n.

inca

FORTRAN 77: INTEGER for vspacki, vdpacki, vcpacki, vzpacki

Fortran 90: INTEGER, INTENT(IN) for vspacki, vdpacki, vcpacki, vzpacki

C: const int for vsPackI, vdPackI, vcPackI, vzPackI

Specifies the increment for the elements of a.

ia

FORTRAN 77: INTEGER for vspackv, vdpackv, vcpackv, vzpackv

Fortran 90: INTEGER, INTENT(IN) for vspackv, vdpackv, vcpackv, vzpackv

C: const int* for vsPackV, vdPackV, vcPackV, vzPackV

FORTRAN: Array, DIMENSION at least n.

Specifies the index vector for the elements of a.

C: Specifies the pointer to an array of size at least n that contains the index vector for the elements of a.

ma

FORTRAN 77: INTEGER for vspackm, vdpackm, vcpackm, vzpackm

Fortran 90: INTEGER, INTENT(IN) for vspackm, vdpackm, vcpackm, vzpackm

C: const int* for vsPackM, vdPackM, vcPackM, vzPackM

FORTRAN: Array, DIMENSION at least n,

Specifies the mask vector for the elements of a.

C: Specifies the pointer to an array of size at least n that contains the mask vector for the elements of a.

Output Parameters

Name

Type

Description

y

FORTRAN 77: REAL for vspacki, vspackv, vspackm

DOUBLE PRECISION for vdpacki, vdpackv, vdpackm

COMPLEX for vcpacki, vcpackv, vcpackm

DOUBLE COMPLEX for vzpacki, vzpackv, vzpackm

Fortran 90: REAL, INTENT(OUT) for vspacki, vspackv, vspackm

DOUBLE PRECISION, INTENT(OUT) for vdpacki, vdpackv, vdpackm

COMPLEX, INTENT(OUT) for vcpacki, vcpackv, vcpackm

DOUBLE COMPLEX, INTENT(OUT) for vzpacki, vzpackv, vzpackm

C: float* for vsPackI, vsPackV, vsPackM

double* for vdPackI, vdPackV, vdPackM

const MKL_Complex8* for vcPackI, vcPackV, vcPackM

const MKL_Complex16* for vzPackI, vzPackV, vzPackM

FORTRAN: Array, DIMENSION at least n. Specifies the output vector y.

C: Pointer to an array of size at least n that contains the output vector y.


Submit feedback on this help topic