Developer Guide and Reference

Contents

Trigonometric Functions

Many routines in the Intel® Math Library are more optimized for Intel® microprocessors than for non-Intel microprocessors.
The
mathimf.h
header file includes prototypes for Intel® Math Library functions.
The Intel® Math Library supports the following trigonometric functions:

acos

Description:
The
acos
function returns the principal value of the inverse cosine of
x
in the range [0, pi] radians for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1
Calling interface:
double acos(double x);
long double acosl(long double x);
float acosf(float x);

acosd

Description:
The
acosd
function returns the principal value of the inverse cosine of
x
in the range [0,180] degrees for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1
Calling interface:
double acosd(double x);
long double acosdl(long double x);
float acosdf(float x);

acospi

Description:
The
acospi
function returns the principal value of the inverse cosine of
x
, divided by pi, in the range [0,1] for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1
Calling interface:
double acospi(double x);
float acospif(float x);

asin

Description:
The
asin
function returns the principal value of the inverse sine of
x
in the range [-pi/2, +pi/2] radians for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1
Calling interface:
double asin(double x);
long double asinl(long double x);
float asinf(float x);

asind

Description:
The
asind
function returns the principal value of the inverse sine of
x
in the range [-90,90] degrees for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1
Calling interface:
double asind(double x);
long double asindl(long double x);
float asindf(float x);

asinpi

Description:
The
asinpi
function returns the principal value of the inverse sine of
x
, divided by pi, in the range [-1/2,1/2] degrees for
x
in the interval [-1,1].
errno
: EDOM, for |x| > 1 divided by pi
Calling interface:
double asinpi(double x);
float asinpif(float x);

atan

Description:
The
atan
function returns the principal value of the inverse tangent of
x
in the range [-pi/2, +pi/2] radians.
Calling interface:
double atan(double x);
long double atanl(long double x);
float atanf(float x);

atan2

Description:
The
atan2
function returns the principal value of the inverse tangent of
y/x
in the range [-pi, +pi] radians.
errno
: EDOM, for x = 0 and y = 0
Calling interface:
double atan2(double y, double x);
long double atan2l(long double y, long double x);
float atan2f(float y, float x);

atan2pi

Description:
The
atan2pi
function returns the principal value of the inverse tangent of
y/x
, divided by pi, in the range [-1, +1].
errno
: EDOM, for x = 0 and y = 0
Calling interface:
double atan2pi(double y, double x);
float atan2pif(float y, float x);

atand

Description:
The
atand
function returns the principal value of the inverse tangent of
x
in the range [-90,90] degrees.
Calling interface:
double atand(double x);
long double atandl(long double x);
float atandf(float x);

atan2d

Description:
The
atan2d
function returns the principal value of the inverse tangent of
y/x
in the range [-180, +180] degrees.
errno
: EDOM, for x = 0 and y = 0.
Calling interface:
double atan2d(double x, double y);
long double atan2dl(long double x, long double y);
float atan2df(float x, float y);

atanpi

Description:
The
atanpi
function returns the principal value of the inverse tangent of
x
, divided by pi, in the range [-1/2, +1/2].
Calling interface:
double atanpi(double x);
float atanpif(float x);

cos

Description:
The
cos
function returns the cosine of
x
measured in radians.
Calling interface:
double cos(double x);
long double cosl(long double x);
float cosf(float x);

cosd

Description:
The
cosd
function returns the cosine of
x
measured in degrees.
Calling interface:
double cosd(double x);
long double cosdl(long double x);
float cosdf(float x);

cospi

Description:
The
cospi
function returns the cosine of
x
multiplied by pi,
cos(x*pi)
.
Calling interface:
double cospi(double x);
float cospif(float x);

cot

Description:
The
cot
function returns the cotangent of
x
measured in radians.
errno
: ERANGE, for overflow conditions at x = 0.
Calling interface:
double cot(double x);
long double cotl(long double x);
float cotf(float x);

cotd

Description:
The
cotd
function returns the cotangent of
x
measured in degrees.
errno
: ERANGE, for overflow conditions at x = 0.
Calling interface:
double cotd(double x);
long double cotdl(long double x);
float cotdf(float x);

sin

Description:
The
sin
function returns the sine of
x
measured in radians.
Calling interface:
double sin(double x);
long double sinl(long double x);
float sinf(float x);

sincos

Description:
The
sincos
function returns both the sine and cosine of
x
measured in radians.
Calling interface:
void sincos(double x, double *sinval, double *cosval);
void sincosl(long double x, long double *sinval, long double *cosval);
void sincosf(float x, float *sinval, float *cosval);

sincosd

Description:
The
sincosd
function returns both the sine and cosine of
x
measured in degrees.
Calling interface:
void sincosd(double x, double *sinval, double *cosval);
void sincosdl(long double x, long double *sinval, long double *cosval);
void sincosdf(float x, float *sinval, float *cosval);

sind

Description:
The
sind
function computes the sine of
x
measured in degrees.
Calling interface:
double sind(double x);
long double sindl(long double x);
float sindf(float x);

sinpi

Description:
The
sinpi
function returns the sine of
x
multiplied by pi,
sin(x*pi)
.
Calling interface:
double sinpi(double x);
float sinpif(float x);

tan

Description:
The
tan
function returns the tangent of
x
measured in radians.
Calling interface:
double tan(double x);
long double tanl(long double x);
float tanf(float x);

tand

Description:
The
tand
function returns the tangent of
x
measured in degrees.
errno
: ERANGE, for overflow conditions
Calling interface:
double tand(double x);
long double tandl(long double x);
float tandf(float x);

tanpi

Description:
The
tanpi
function returns the tangent of
x
multiplied by pi,
tan(x*pi)
.
Calling interface:
double tanpi(double x);
float tanpif(float x);

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.