Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

?rot

Performs rotation of points in the plane.

Syntax

call srot(n, x, incx, y, incy, c, s)
call drot(n, x, incx, y, incy, c, s)
call crot(n, x, incx, y, incy, c, s)
call zrot(n, x, incx, y, incy, c, s)
call csrot(n, x, incx, y, incy, c, s)
call zdrot(n, x, incx, y, incy, c, s)
call rot(x, y, c, 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

INTEGER. Specifies the number of elements in vectors x and y.

x

REAL for srot

DOUBLE PRECISION for drot

COMPLEX for csrot

DOUBLE COMPLEX for zdrot

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

incx

INTEGER. Specifies the increment for the elements of x.

y

REAL for srot

DOUBLE PRECISION for drot

COMPLEX for csrot

DOUBLE COMPLEX for zdrot

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

incy

INTEGER. Specifies the increment for the elements of y.

c

REAL for srot

DOUBLE PRECISION for drot

REAL for csrot

DOUBLE PRECISION for zdrot

A scalar.

s

REAL for srot

DOUBLE PRECISION for drot

COMPLEX for crot

DOUBLE COMPLEX for zrot

REAL for csrot

DOUBLE PRECISION for zdrot

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.

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 rot interface are the following:

x

Holds the vector with the number of elements n.

y

Holds the vector with the number of elements n.