Developer Reference for Intel® oneAPI Math Kernel Library for C
?lartgp
Generates a plane rotation.
Syntax
lapack_int LAPACKE_slartgp(float f, float g, float *cs, float *sn, float *r);
lapack_int LAPACKE_dlartgp(double f, double g, double *cs, double *sn, double *r);
Include Files
mkl.h
Description
The routine generates a plane rotation so that
where cs^{2} + sn^{2} = 1
This is a slower, more accurate version of the BLAS Level 1 routine ?rotg , except for the following differences:
f and g are unchanged on return.
If g =0, then cs =(+/-)1 and sn =0.
If f =0 and g ≠ 0, then cs =0 and sn =(+/-)1.
The sign is chosen so that r ≥ 0.
Input Parameters
A <datatype> placeholder, if present, is used for the C interface data types in the C interface section above. See C Interface Conventions for the C interface principal conventions and type definitions.
- f , g
-
REAL for slartgp DOUBLE PRECISION for dlartgp The first and second component of the vector to be rotated.
Output Parameters
- cs
-
REAL for slartgp DOUBLE PRECISION for dlartgp The cosine of the rotation.
- sn
-
REAL for slartgp DOUBLE PRECISION for dlartgp The sine of the rotation.
- r
-
REAL for slartgp DOUBLE PRECISION for dlartgp The nonzero component of the rotated vector.
Return Values
If info = 0 , the execution is successful.
If info =-1 , f is NaN.
If info = -2 , g is NaN.