|
|
| |
MATH(3) |
FreeBSD Library Functions Manual |
MATH(3) |
math —
floating-point mathematical library
The math library includes the following components:
<math.h> |
basic routines and real-valued functions |
<complex.h> |
complex number support |
<tgmath.h> |
polymorphic (type-generic) versions of functions |
<fenv.h> |
routines to control rounding and exceptions |
The rest of this manual page describes the functions provided by
<math.h> . Please consult
complex(3),
tgmath(3),
and fenv(3)
for information on the other components.
Each of the following double functions has a
float counterpart with an
‘f ’ appended to the name and a
long double counterpart with an
‘l ’ appended. As an example, the
float and long double counterparts
of double
acos (double x) are
float
acosf (float x) and
long double
acosl (long double x),
respectively. The classification macros and silent order predicates are type
generic and should not be suffixed with
‘f ’ or
‘l ’.
Name |
Description |
cbrt |
cube root |
fma |
fused multiply-add |
hypot |
Euclidean distance |
sqrt |
square root |
Name |
Description |
fpclassify |
classify a floating-point value |
isfinite |
determine whether a value is finite |
isinf |
determine whether a value is infinite |
isnan |
determine whether a value is NaN |
isnormal |
determine whether a value is normalized |
Name |
Description |
frexp |
extract exponent and mantissa |
ilogb |
extract exponent |
ldexp |
multiply by power of 2 |
logb |
extract exponent |
scalbln |
adjust exponent |
scalbn |
adjust exponent |
Name |
Description |
copysign |
copy sign bit |
fabs |
absolute value |
fdim |
positive difference |
fmax |
maximum function |
fmin |
minimum function |
signbit |
extract sign bit |
Name |
Description |
nan |
generate a quiet NaN |
Name |
Description |
ceil |
integer no less than |
floor |
integer no greater than |
fmod |
positive remainder |
llrint |
round to integer in fixed-point format |
llround |
round to nearest integer in fixed-point format |
lrint |
round to integer in fixed-point format |
lround |
round to nearest integer in fixed-point format |
modf |
extract integer and fractional parts |
nearbyint |
round to integer (silent) |
nextafter |
next representable value |
nexttoward |
next representable value |
remainder |
remainder |
remquo |
remainder with partial quotient |
rint |
round to integer |
round |
round to nearest integer |
trunc |
integer no greater in magnitude than |
The ceil (),
floor (), llround (),
lround (), round (), and
trunc () functions round in predetermined directions,
whereas llrint (), lrint (),
and rint () round according to the current (dynamic)
rounding mode. For more information on controlling the dynamic rounding
mode, see
fenv(3)
and
fesetround(3).
Name |
Description |
isgreater |
greater than relation |
isgreaterequal |
greater than or equal to relation |
isless |
less than relation |
islessequal |
less than or equal to relation |
islessgreater |
less than or greater than relation |
isunordered |
unordered relation |
Name |
Description |
acos |
inverse cosine |
acosh |
inverse hyperbolic cosine |
asin |
inverse sine |
asinh |
inverse hyperbolic sine |
atan |
inverse tangent |
atanh |
inverse hyperbolic tangent |
atan2 |
atan(y/x); complex argument |
cos |
cosine |
cosh |
hyperbolic cosine |
erf |
error function |
erfc |
complementary error function |
exp |
exponential base e |
exp2 |
exponential base 2 |
expm1 |
exp(x)-1 |
j0 |
Bessel function of the first kind of the order 0 |
j1 |
Bessel function of the first kind of the order 1 |
jn |
Bessel function of the first kind of the order n |
lgamma |
log gamma function |
log |
natural logarithm |
log10 |
logarithm to base 10 |
log1p |
log(1+x) |
log2 |
base 2 logarithm |
pow |
exponential x**y |
sin |
trigonometric function |
sinh |
hyperbolic function |
tan |
trigonometric function |
tanh |
hyperbolic function |
tgamma |
gamma function |
y0 |
Bessel function of the second kind of the order 0 |
y1 |
Bessel function of the second kind of the order 1 |
yn |
Bessel function of the second kind of the order n |
The routines in this section might not produce a result that is
correctly rounded, so reproducible results cannot be guaranteed across
platforms. For most of these functions, however, incorrect rounding occurs
rarely, and then only in very-close-to-halfway cases.
A math library with many of the present functions appeared in
Version 7 AT&T UNIX. The library was
substantially rewritten for 4.3BSD to provide better
accuracy and speed on machines supporting either VAX or IEEE 754
floating-point. Most of this library was replaced with FDLIBM, developed at
Sun Microsystems, in FreeBSD 1.1.5. Additional
routines, including ones for float and
long double values, were written for or imported into
subsequent versions of FreeBSD.
Many of the routines to compute transcendental functions produce inaccurate
results in other than the default rounding mode.
On the i386 platform, trigonometric argument reduction is not
performed accurately for huge arguments, resulting in large errors for such
arguments to cos (), sin (),
and tan ().
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |