Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 3/22/2024
Public
Document Table of Contents

?dotci

Computes the conjugated dot product of a compressed sparse complex vector with a full-storage complex vector.

Syntax

res = cdotci(nz, x, indx, y )

res = zdotci(nzz, x, indx, y )

res = dotci(x, indx, y)

Include Files

  • mkl.fi, blas.f90

Description

The ?dotci routines return the dot product of x and y defined as

conjg(x(1))*y(indx(1)) + ... + conjg(x(nz))*y(indx(nz))

where the triple (nz, x, indx) defines a sparse complex vector stored in compressed form, and y is a real vector in full storage form. The functions reference only the elements of y whose indices are listed in the array indx. The values in indx must be distinct.

Input Parameters

nz

INTEGER. The number of elements in x and indx .

x

COMPLEX for cdotci

DOUBLE COMPLEX for zdotci

Array, size at least nz.

indx

INTEGER. Specifies the indices for the elements of x.

Array, size at least nz.

y

COMPLEX for cdotci

DOUBLE COMPLEX for zdotci

Array, size at least max(indx(i)).

Output Parameters

res

COMPLEX for cdotci

DOUBLE COMPLEX for zdotci

Contains the conjugated dot product of x and y, if nz is positive. Otherwise, it contains 0.

BLAS 95 Interface Notes

Routines in Fortran 95 interface have fewer arguments in the calling sequence than their FORTRAN 77 counterparts. For general conventions applied to skip redundant or reconstructible arguments, see BLAS 95 Interface Conventions.

Specific details for the routine dotci interface are the following:

x

Holds the vector with the number of elements (nz).

indx

Holds the vector with the number of elements (nz).

y

Holds the vector with the number of elements (nz).