Vector Math Library Functions vsincospi_(3MVEC)
NAME
vsincospi_, vsincospif_ - vector sincospi functions
SYNOPSIS
cc [ flag... ] file... -lmvec [ library... ]
void vsincospi_(int *n, double * restrict x, int *stridex,
double * restrict s, int *strides, double * restrict c, int *stridec);void vsincospif_(int *n, float * restrict x, int *stridex,
float * restrict s, int *strides, float * restrict c, int *stridec);DESCRIPTION
These functions evaluate both sinpi(x) and cospi(x), defined by sinpi(x) = sin(pi * x) and cospi(x) = cos(pi * x), for anentire vector of values at once. The first parameter speci-
fies the number of values to compute. Subsequent parameters specify the argument and result vectors. Each vector is described by a pointer to the first element and a stride, which is the increment between successive elements.Specifically, vsincospi_(n, x, sx, s, ss, c, sc) simultane-
ously computes s[i * *ss] = sinpi(x[i * *sx]) and c[i * *sc]= cospi(x[i * *sx]) for each i = 0, 1, ..., *n - 1. The
vsincosf_() function performs the same computation for sin-
gle precision data.Non-exceptional results are accurate to within a unit in the
last place.USAGE
The element count *n must be greater than zero. The strides for the argument and result arrays can be arbitrary integers, but the arrays themselves must not be the same oroverlap. A zero stride effectively collapses an entire vec-
tor into a single element. A negative stride causes a vector to be accessed in descending memory order, but note that the corresponding pointer must still point to the first element of the vector to be used; if the stride is negative, thiswill be the highest-addressed element in memory. This con-
vention differs from the Level 1 BLAS, in which array param-
eters always refer to the lowest-addressed element in memory
even when negative increments are used.SunOS 5.11 Last change: 14 Dec 2007 1
Vector Math Library Functions vsincospi_(3MVEC)
These functions assume that the default round-to-nearest
rounding direction mode is in effect. On x86, these func-
tions also assume that the default round-to-64-bit rounding
precision mode is in effect. The result of calling a vectorfunction with a non-default rounding mode in effect is unde-
fined. These functions handle special cases and exceptions in the spirit of IEEE 754. In particular, o sinpi(NaN), cospi(NaN) are NaN,o sinpi(+_0) is +_0,
o sinpi(+_Inf), cospi(+_Inf) are NaN, and an invalid
operation exception is raised. An application wanting to check for exceptions should callfeclearexcept(FE_ALL_EXCEPT) before calling these functions.
On return, if fetestexcept(FE_INVALID | FE_DIVBYZERO |
FE_OVERFLOW | FE_UNDERFLOW) is non-zero, an exception has
been raised. The application can then examine the result orargument vectors for exceptional values. Some vector func-
tions can raise the inexact exception even if all elements of the argument array are such that the numerical results are exact.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
feclearexcept(3M), fetestexcept(3M), attributes(5)SunOS 5.11 Last change: 14 Dec 2007 2