Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

matherr



SIN(3m,L)                   AIX Technical Reference                   SIN(3m,L)



-------------------------------------------------------------------------------
sin, cos, tan, asin, acos, atan, atan2



PURPOSE

Computes trigonometric functions.

LIBRARY

Math Library (libm.a)

SYNTAX

#include <math.h>




                double sin (x)              double asin (x)
                double x;                   double x;
                double cos (x)              double acos (x)
                double x;                   double x;
                double tan (x)              double atan (x)
                double x;                   double x;
                                            double atan2 (y, x)
                                            double x, y;



DESCRIPTION

The sin, cos, and tan subroutines return the sine, cosine and tangent,
respectively, of their parameters, which are in radians.

The asin subroutine returns the arcsine of x, in the range -pi/2 to pi/2.

The acos subroutine returns the arccosine of x, in the range 0 to pi.

The atan subroutine returns the arctangent of x, in the range -pi/2 to pi/2.

The atan2 subroutine returns the arctangent of y/x, in the range -pi to pi,
using the signs of both parameters to determine the quadrant of the return
value.

ERROR CONDITIONS

These subroutines can perform either of the following types of error handling.
Both types of error handling allows you to define special actions to be taken
when an error occurs.




Processed November 7, 1990         SIN(3m,L)                                  1





SIN(3m,L)                   AIX Technical Reference                   SIN(3m,L)



  o On the PS/2 only, exception handling is performed by default according to
    ANSI/IEEE standard 754 for binary floating-point arithmetic for arguments x
    in the range between -2(63) and 2(63).  Otherwise, the behavior of these
    subroutines is undefined.

    If a hardware floating point processor is installed in your system, then
    using this option can provide greater performance in addition to IEEE
    exception handling.  This mode instructs the C compiler to generate code
    that avoids the overhead of the math library subroutines by generating math
    coprocessor code in-line.

  o On the AIX/370, matherr error handling is performed by default (see matherr
    handling, as described on page matherr-1).  To activate matherr error
    handling on the PS/2, include the -z option on the cc command line when
    compiling source code.  The default error-handling procedures for these
    subroutines are as follows:

    sin, cos, tan
       The sin, cos and tan subroutines lose accuracy when passed a large value
       for the x parameter.  For sufficiently large parameters, these functions
       return 0 when there would otherwise be a complete loss of significance.
       In this case, a message that indicates a TLOSS error is written to
       standard error.  For less extreme values, a PLOSS error is generated but
       no message is written.  In both cases, errno is set to ERANGE.

       The tan subroutine can return +/-HUGE if its parameter is near an odd
       multiple of pi/2 when the correct value would overflow, and sets errno
       to ERANGE.

    asin, acos
       The asin and acos subroutines return 0 and set errno to EDOM if their
       parameters are larger than 1.0.  In addition, an error message that
       indicates a domain error is written to the standard error output.

RELATED INFORMATION

In this book:  "matherr."


















Processed November 7, 1990         SIN(3m,L)                                  2



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