# Sparse CBLAS

This is an interface to “Sparse BLAS Level 1 Routines and Functions”, which perform a number of common vector operations on sparse vectors stored in compressed form.

Note that all index parameters, indx, are in C-type notation and vary in the range `[0..N-1]`.

?axpyi

void cblas_saxpyi(const int N, const float alpha, const float *X, const int *indx, float *Y);

void cblas_daxpyi(const int N, const double alpha, const double *X, const int *indx, double *Y);

void cblas_caxpyi(const int N, const void *alpha, const void *X, const int *indx, void *Y);

void cblas_zaxpyi(const int N, const void *alpha, const void *X, const int *indx, void *Y);

?doti

float cblas_sdoti(const int N, const float *X, const int *indx, const float *Y);

double cblas_ddoti(const int N, const double *X, const int *indx, const double *Y);

?dotci

void cblas_cdotci_sub(const int N, const void *X, const int *indx, const void *Y, void *dotui);

void cblas_zdotci_sub(const int N, const void *X, const int *indx, const void *Y, void *dotui);

?dotui

void cblas_cdotui_sub(const int N, const void *X, const int *indx, const void *Y, void *dotui);

void cblas_zdotui_sub(const int N, const void *X, const int *indx, const void *Y, void *dotui);

?gthr

void cblas_sgthr(const int N, const float *Y, float *X, const int *indx);

void cblas_dgthr(const int N, const double *Y, double *X, const int *indx);

void cblas_cgthr(const int N, const void *Y, void *X, const int *indx);

void cblas_zgthr(const int N, const void *Y, void *X, const int *indx);

?gthrz

void cblas_sgthrz(const int N, float *Y, float *X, const int *indx);

void cblas_dgthrz(const int N, double *Y, double *X, const int *indx);

void cblas_cgthrz(const int N, void *Y, void *X, const int *indx);

void cblas_zgthrz(const int N, void *Y, void *X, const int *indx);

?roti

void cblas_sroti(const int N, float *X, const int *indx, float *Y, const float c, const float s);

void cblas_droti(const int N, double *X, const int *indx, double *Y, const double c, const double s);

?sctr

void cblas_ssctr(const int N, const float *X, const int *indx, float *Y);

void cblas_dsctr(const int N, const double *X, const int *indx, double *Y);

void cblas_csctr(const int N, const void *X, const int *indx, void *Y);

void cblas_zsctr(const int N, const void *X, const int *indx, void *Y);

Parent topic: CBLAS Interface to the BLAS