Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

tand(3M)

sin(3M)

cos(3M)

asin(3M)

acos(3M)

atan(3M)

atan2(3M)

isinf(3M)

isnan(3M)

values(5)

tan(3M)

NAME

tan(), tanf() − tangent functions

SYNOPSIS

#include <math.h>

double tan(double x);

float tanf(float x);

DESCRIPTION

tan() returns the tangent of x (x specified in radians). 

tan() may lose accuracy when x is far from zero. 

tanf() is a float version of tan(); it takes a float argument and returns a float result.  To use this function, compile either with the −Ae option or with the −Aa and −D_HPUX_SOURCE options.  Otherwise, the compiler promotes the float argument to double, and the function returns incorrect results. 

tanf() is not specified by any standard, but it is named in accordance with the conventions specified in the "Future Library Directions" section of the ANSI C standard. 

To use these functions, link in the math library by specifying −lm on the compiler or linker command line. 

RETURN VALUE

If x is NaN or ±INFINITY, tan() returns NaN. 

If the correct value after rounding would be smaller in magnitude than MINDOUBLE, tan() returns zero. 

If the correct value would overflow, tan() returns ±HUGE_VAL and sets errno to [ERANGE]. 

ERRORS

If tan() fails, errno is set to the following value. 

[ERANGE] The correct value would overflow. 

DEPENDENCIES

Millicode versions of the tan() and tanf() functions are available on PA1.1-based and PA2.0-based systems, in the library /usr/lib/milli.a.  Millicode versions of math library functions are usually faster than their counterparts in the standard library.  To use these versions, compile your program with the +DA1.1 option (the default on PA1.1-based systems) or the +DA2.0 option (the default on PA2.0-based systems) and with the +Olibcalls or the +Oaggressive optimization option. 

If an error occurs, the millicode versions return the value described in the RETURN VALUE section, but do not set errno. 

For more information, see the HP-UX Floating-Point Guide.

SEE ALSO

tand(3M), sin(3M), cos(3M), asin(3M), acos(3M), atan(3M), atan2(3M), isinf(3M), isnan(3M), values(5). 

STANDARDS CONFORMANCE

tan(): SVID3, XPG4.2, ANSI C

Hewlett-Packard Company  —  HP-UX Release 10.20:  July 1996

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026