Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 7/13/2023
Public
Document Table of Contents

Trigonometric Functions

Many routines in the Intel® C++ Compiler Classic Math Library are more optimized for Intel® microprocessors than for non-Intel microprocessors.

The mathimf.h header file includes prototypes for Intel® C++ Compiler Classic Math Library functions.

The 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);

atand2

Description: The atand2 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 atand2(double x, double y);
long double atand2l(long double x, long double y);
float atand2f(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);