Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/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_?rot

Performs rotation of points in the plane.

Syntax

void cblas_srot (const MKL_INT n, float *x, const MKL_INT incx, float *y, const MKL_INT incy, const float c, const float s);
void cblas_drot (const MKL_INT n, double *x, const MKL_INT incx, double *y, const MKL_INT incy, const double c, const double s);
void cblas_crot (const MKL_INT n, void *x, const MKL_INT incx, void *y, const MKL_INT incy, const float c, const void* s);
void cblas_zrot (const MKL_INT n, void *x, const MKL_INT incx, void *y, const MKL_INT incy, const double c, const void* s); 
void cblas_csrot (const MKL_INT n, void *x, const MKL_INT incx, void *y, const MKL_INT incy, const float c, const float s);
void cblas_zdrot (const MKL_INT n, void *x, const MKL_INT incx, void *y, const MKL_INT incy, const double c, const double s);

Description

Given two complex vectors x and y, each vector element of these vectors is replaced as follows:

xi = c*xi + s*yi
yi = c*yi - s*xi

If s is a complex type, each vector element is replaced as follows:

xi = c*xi + s*yi
yi = c*yi - conj(s)*xi

Input Parameters

n

Specifies the number of elements in vectors x and y.

x

Array, size at least (1 + (n-1)*abs(incx)).

incx

Specifies the increment for the elements of x.

y

Array, size at least (1 + (n -1)*abs(incy)).

incy

Specifies the increment for the elements of y.

c

A scalar.

s

A scalar.

Output Parameters

x

Each element is replaced by c*x + s*y.

y

Each element is replaced by c*y - s*x, or by c*y-conj(s)*x if s is a complex type.