Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 7/13/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

cblas_?dotui

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

Syntax

void cblas_cdotui_sub (const MKL_INT nz, const void *x, const MKL_INT *indx, const void *y, void *dotui);

void cblas_zdotui_sub (const MKL_INT nz, const void *x, const MKL_INT *indx, const void *y, void *dotui);

Include Files

  • mkl.h

Description

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

res = x[0]*y[indx[0]] + x[1]*y(indx[1]) +...+ x[nz - 1]*y[indx[nz - 1]]

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

The number of elements in x and indx.

x

Array, size at least nz.

indx

Specifies the indices for the elements of x.

Array, size at least nz.

y

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

Output Parameters

dotui

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