Computes convolution or correlation for one-dimensional case.
Fortran:
status = vslsconvexec1d(task, x, xstride, y, ystride, z, zstride)
status = vsldconvexec1d(task, x, xstride, y, ystride, z, zstride)
status = vslcconvexec1d(task, x, xstride, y, ystride, z, zstride)
status = vslzconvexec1d(task, x, xstride, y, ystride, z, zstride)
status = vslscorrexec1d(task, x, xstride, y, ystride, z, zstride)
status = vsldcorrexec1d(task, x, xstride, y, ystride, z, zstride)
status = vslccorrexec1d(task, x, xstride, y, ystride, z, zstride)
status = vslzcorrexec1d(task, x, xstride, y, ystride, z, zstride)
C:
status = vslsConvExec1D(task, x, xstride, y, ystride, z, zstride);
status = vsldConvExec1D(task, x, xstride, y, ystride, z, zstride);
status = vslcConvExec1D(task, x, xstride, y, ystride, z, zstride);
status = vslzConvExec1D(task, x, xstride, y, ystride, z, zstride);
status = vslsCorrExec1D(task, x, xstride, y, ystride, z, zstride);
status = vsldCorrExec1D(task, x, xstride, y, ystride, z, zstride);
status = vslcCorrExec1D(task, x, xstride, y, ystride, z, zstride);
status = vslzCorrExec1D(task, x, xstride, y, ystride, z, zstride);
The FORTRAN 77 interfaces are specified in the mkl_vsl.f77 include file, the Fortran 90 interfaces are specified in the mkl_vsl.f90 include file, and the C interfaces are specified in the mkl_vsl_functions.h include file.
Name |
Type |
Description |
---|---|---|
task |
FORTRAN 77: INTEGER*4 task(2) for vslsconvexec1d, vsldconvexec1d, vslcconvexec1d, vslzconvexec1d INTEGER*4 task(2) for vslscorrexec1d, vsldcorrexec1d, vslccorrexec1d, vslzcorrexec1d Fortran 90: TYPE(VSL_CONV_TASK) for vslsconvexec1d, vsldconvexec1d, vslcconvexec1d, vslzconvexec1d TYPE(VSL_CORR_TASK) for vslscorrexec1d, vsldcorrexec1d, vslccorrexec1d, vslzcorrexec1d C: VSLConvTaskPtr for vslsConvExec1D, vsldConvExec1D, vslcConvExec1D, vslzConvExec1D VSLCorrTaskPtr for vslsCorrExec1D, vsldCorrExec1D, vslcCorrExec1D, vslzCorrExec1D |
Pointer to the task descriptor. |
x, y |
FORTRAN 77: REAL*4 for vslsconvexec1d and vslscorrexec1d, REAL*8 for vsldconvexec1d and vsldcorrexec1d, COMPLEX*8 forvslcconvexec1d and vslccorrexec1d, COMPLEX*16 forvslzconvexec1d and vslzcorrexec1d Fortran 90: REAL(KIND=4), DIMENSION(*) for vslsconvexec1d and vslscorrexec1d, REAL(KIND=8), DIMENSION(*) for vsldconvexec1d and vsldcorrexec1d, COMPLEX(KIND=4), DIMENSION (*) forvslcconvexec1d and vslccorrexec1d, COMPLEX(KIND=8), DIMENSION (*) for vslzconvexec1d and vslzcorrexec1d C: const float[] for vslsConvExec1D and vslsCorrExec1D, const double[] for vsldConvExec1D and vsldCorrExec1D, const MKL_Complex8[] for vslcConvExec1D and vslcCorrExec1D, const MKL_Complex16[] for vslzConvExec1D and vslzCorrExec1D |
Pointers to arrays containing input data. See Data Allocation for more information. |
xstride, ystride, zstride |
FORTRAN 77: INTEGER Fortran 90: INTEGER C: const int |
Strides for input and output data. For more information, see stride parameters. |
Name |
Type |
Description |
---|---|---|
z |
FORTRAN 77: REAL*4 for vslsconvexec1d and vslscorrexec1d, REAL*8 for vsldconvexec1d and vsldcorrexec1d, COMPLEX*8 forvslcconvexec1d and vslccorrexec1d, COMPLEX*16 forvslzconvexec1d and vslzcorrexec1d Fortran 90: REAL(KIND=4), DIMENSION(*) for vslsconvexec1d and vslscorrexec1d, REAL(KIND=8), DIMENSION(*) for vsldconvexec1d and vsldcorrexec1d, COMPLEX(KIND=4), DIMENSION (*) forvslcconvexec1d and vslccorrexec1d, COMPLEX(KIND=8), DIMENSION (*) for vslzconvexec1d and vslzcorrexec1d C: const float[] for vslsConvExec1D and vslsCorrExec1D, const double[] for vsldConvExec1D and vsldCorrExec1D, const MKL_Complex8[] for vslcConvExec1D and vslcCorrExec1D, const MKL_Complex16[] for vslzConvExec1D and vslzCorrExec1D |
Pointer to the array that stores output data. See Data Allocation for more information. |
status |
FORTRAN 77: INTEGER Fortran 90: INTEGER C: int |
Set to VSL_STATUS_OK if the task is executed successfully or set to non-zero error code otherwise. |
Each of the Exec1D routines computes convolution or correlation of the data provided by the arrays x and y and then stores the results in the array z. These routines represent a special one-dimensional version of the operation, assuming that the value of the parameter dims is 1. Using this version of execution routines can help speed up performance in case of one-dimensional data.
Parameters of the operation are read from the task descriptor created previously by a corresponding NewTask1D constructor and pointed to by task. If task is NULL, no operation is done.
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.