* libc/locale/locale.c: Use double quotes in code.
* libc/locale/locale.tex: Likewise.
* libc/libc.texinfo: Hyphenate "floating-point".
* libc/machine/necv70/necv70.tex: Likewise.
* libc/stdio/sprintf.c: Likewise.
* libc/stdio/sscanf.c: Likewise.
* libc/stdlib/atof.c: Likewise.
* libc/stdlib/ldtoa.c: Fix comment typo.
* libc/stdlib/div.c: Use @ifnottex instead of @ifinfo.
* libc/stdlib/ldiv.c: Likewise.
* libm/common/s_expm1.c: Likewise.
* libm/common/s_ilogb.c: Hyphenate "floating-point". Use "nonzero".
* libm/common/s_infinity: Hyphenate "double- and single-precision".
* libm/common/s_nan.c: Likewise. Also correct the FUNCTION summary.
* libm/common/s_nextafter.c: Fix typo. Hyphenate "double-precision"
and "floating-point".
* libm/common/s_scalbn.c: Correct the FUNCTION summary.
* libm/math/e_pow.c: Fix comment typo.
* libm/math/math.tex: Hyphenate "single-precision" and "floating-point".
* libm/math/s_asinh.c: Use @ifnottex instead of @ifinfo.
* libm/math/s_atan.c: Likewise.
* libm/math/s_frexp.c: Likewise. Also use "nonzero".
* libm/math/s_isnan.c: Hyphenate "single-precision" and
"floating-point". Use "nonzero".
* libm/math/s_ldexp.c: Use @ifnottex instead of @ifinfo.
* libm/math/w_acos.c: Likewise.
* libm/math/w_acosh.c: Likewise.
* libm/math/w_asin.c: Likewise.
* libm/math/w_atan2.c: Likewise.
* libm/math/w_atanh.c: Likewise.
* libm/math/w_cosh.c: Likewise.
* libm/math/w_exp.c: Likewise.
* libm/math/w_exp2.c: Likewise. Add missing @end and missing @tex
version of 2^x in the description.
* libm/math/w_fmod.c: Use @ifnottex instead of @ifinfo.
* libm/math/w_gamma.c: Likewise.
* libm/math/w_hypot.c: Likewise.
* libm/math/w_j0.c: Likewise.
* libm/math/w_sinh.c: Likewise.
* libm/math/w_pow.c: Replace "exp1.0nt" with "exponent".
* libm/mathfp/mathfp.tex: Hyphenate "single-precision" and
"floating-point".
* libm/mathfp/e_acosh.c: Use @ifnottex instead of @ifinfo.
* libm/mathfp/e_atanh.c: Likewise.
* libm/mathfp/e_hypot.c: Likewise.
* libm/mathfp/er_lgamma.c: Likewise.
* libm/mathfp/s_acos.c: Likewise.
* libm/mathfp/s_asine.c: Likewise.
* libm/mathfp/s_asinh.c: Likewise.
* libm/mathfp/s_atan.c: Likewise.
* libm/mathfp/s_atan2.c: Likewise.
* libm/mathfp/s_atangent.c: Likewise.
* libm/mathfp/s_cosh.c: Likewise.
* libm/mathfp/s_exp.c: Likewise.
* libm/mathfp/s_fmod.c: Likewise.
* libm/mathfp/s_frexp.c: Likewise. Also use "nonzero".
* libm/mathfp/s_isnan.c: Hyphenate "single-precision" and
"floating-point". Use "nonzero".
* libm/math/s_pow.c: Replace "exp1.0nt" with "exponent".
* libm/mathfp/s_ldexp.c: Use @ifnottex instead of @ifinfo.
* libm/mathfp/s_sineh.c: Likewise.
* libm/mathfp/w_jn.c: Likewise.
+2003-10-20 Bob Wilson <bob.wilson@acm.org>
+
+ * libc/locale/locale.c: Use double quotes in code.
+ * libc/locale/locale.tex: Likewise.
+ * libc/libc.texinfo: Hyphenate "floating-point".
+ * libc/machine/necv70/necv70.tex: Likewise.
+ * libc/stdio/sprintf.c: Likewise.
+ * libc/stdio/sscanf.c: Likewise.
+ * libc/stdlib/atof.c: Likewise.
+ * libc/stdlib/ldtoa.c: Fix comment typo.
+ * libc/stdlib/div.c: Use @ifnottex instead of @ifinfo.
+ * libc/stdlib/ldiv.c: Likewise.
+ * libm/common/s_expm1.c: Likewise.
+ * libm/common/s_ilogb.c: Hyphenate "floating-point". Use "nonzero".
+ * libm/common/s_infinity: Hyphenate "double- and single-precision".
+ * libm/common/s_nan.c: Likewise. Also correct the FUNCTION summary.
+ * libm/common/s_nextafter.c: Fix typo. Hyphenate "double-precision"
+ and "floating-point".
+ * libm/common/s_scalbn.c: Correct the FUNCTION summary.
+ * libm/math/e_pow.c: Fix comment typo.
+ * libm/math/math.tex: Hyphenate "single-precision" and "floating-point".
+ * libm/math/s_asinh.c: Use @ifnottex instead of @ifinfo.
+ * libm/math/s_atan.c: Likewise.
+ * libm/math/s_frexp.c: Likewise. Also use "nonzero".
+ * libm/math/s_isnan.c: Hyphenate "single-precision" and
+ "floating-point". Use "nonzero".
+ * libm/math/s_ldexp.c: Use @ifnottex instead of @ifinfo.
+ * libm/math/w_acos.c: Likewise.
+ * libm/math/w_acosh.c: Likewise.
+ * libm/math/w_asin.c: Likewise.
+ * libm/math/w_atan2.c: Likewise.
+ * libm/math/w_atanh.c: Likewise.
+ * libm/math/w_cosh.c: Likewise.
+ * libm/math/w_exp.c: Likewise.
+ * libm/math/w_exp2.c: Likewise. Add missing @end and missing @tex
+ version of 2^x in the description.
+ * libm/math/w_fmod.c: Use @ifnottex instead of @ifinfo.
+ * libm/math/w_gamma.c: Likewise.
+ * libm/math/w_hypot.c: Likewise.
+ * libm/math/w_j0.c: Likewise.
+ * libm/math/w_sinh.c: Likewise.
+ * libm/math/w_pow.c: Replace "exp1.0nt" with "exponent".
+ * libm/mathfp/mathfp.tex: Hyphenate "single-precision" and
+ "floating-point".
+ * libm/mathfp/e_acosh.c: Use @ifnottex instead of @ifinfo.
+ * libm/mathfp/e_atanh.c: Likewise.
+ * libm/mathfp/e_hypot.c: Likewise.
+ * libm/mathfp/er_lgamma.c: Likewise.
+ * libm/mathfp/s_acos.c: Likewise.
+ * libm/mathfp/s_asine.c: Likewise.
+ * libm/mathfp/s_asinh.c: Likewise.
+ * libm/mathfp/s_atan.c: Likewise.
+ * libm/mathfp/s_atan2.c: Likewise.
+ * libm/mathfp/s_atangent.c: Likewise.
+ * libm/mathfp/s_cosh.c: Likewise.
+ * libm/mathfp/s_exp.c: Likewise.
+ * libm/mathfp/s_fmod.c: Likewise.
+ * libm/mathfp/s_frexp.c: Likewise. Also use "nonzero".
+ * libm/mathfp/s_isnan.c: Hyphenate "single-precision" and
+ "floating-point". Use "nonzero".
+ * libm/math/s_pow.c: Replace "exp1.0nt" with "exponent".
+ * libm/mathfp/s_ldexp.c: Use @ifnottex instead of @ifinfo.
+ * libm/mathfp/s_sineh.c: Likewise.
+ * libm/mathfp/w_jn.c: Likewise.
+
2003-10-15 Alexandre Oliva <aoliva@redhat.com>
* Makefile.am: Add $(MAKE) comments to multido and multiclean
libc includes software developed by Martin Jackson, Graham Haley
and Steve Chamberlain of Tadpole Technology and released to Cygnus.
-libc uses floating point converstion software developed at AT&T, which
+libc uses floating-point conversion software developed at AT&T, which
includes this copyright information:
The author of this software is David M. Gay.
@file{libc} includes software developed by Martin Jackson, Graham Haley
and Steve Chamberlain of Tadpole Technology and released to Cygnus.
-@file{libc} uses floating point conversion software developed at AT&T,
+@file{libc} uses floating-point conversion software developed at AT&T,
which includes this copyright information:
@cartouche
information; <<localeconv>> reports on the settings of the current
locale.
-This is a minimal implementation, supporting only the required <<``C''>>
+This is a minimal implementation, supporting only the required <<"C">>
value for <[locale]>; strings representing other locales are not
honored unless MB_CAPABLE is defined in which case three new
-extensions are allowed for LC_CTYPE or LC_MESSAGES only: <<''C-JIS''>>,
-<<''C-EUCJP''>>, <<''C-SJIS''>>, or <<''C-ISO-8859-1''>>. (<<``''>> is
+extensions are allowed for LC_CTYPE or LC_MESSAGES only: <<"C-JIS">>,
+<<"C-EUCJP">>, <<"C-SJIS">>, or <<"C-ISO-8859-1">>. (<<"">> is
also accepted; it represents the default locale
-for an implementation, here equivalent to <<``C''>>.)
+for an implementation, here equivalent to <<"C">>.)
If you use <<NULL>> as the <[locale]> argument, <<setlocale>> returns
a pointer to the string representing the current locale (always
-<<``C''>> in this implementation). The acceptable values for
+<<"C">> in this implementation). The acceptable values for
<[category]> are defined in `<<locale.h>>' as macros beginning with
<<"LC_">>, but this implementation does not check the values you pass
in the <[category]> argument.
RETURNS
<<setlocale>> returns either a pointer to a string naming the locale
-currently in effect (always <<``C''>> for this implementation, or, if
+currently in effect (always <<"C">> for this implementation, or, if
the locale request cannot be honored, <<NULL>>.
<<localeconv>> returns a pointer to a structure of type <<lconv>>,
depending on location or culture. The @code{"C"} locale is the only
one defined in the ANSI C standard.
-This is a minimal implementation, supporting only the required @code{``C''}
+This is a minimal implementation, supporting only the required @code{"C"}
value for locale; strings representing other locales are not
-honored. (@code{``''} is also accepted; it represents the default locale
-for an implementation, here equivalent to @code{``C''}.
+honored. (@code{""} is also accepted; it represents the default locale
+for an implementation, here equivalent to @code{"C"}.
@file{locale.h} defines the structure @code{lconv} to collect the
@table @code
@item char *decimal_point
The decimal point character used to format ``ordinary'' numbers (all
-numbers except those referring to amounts of money). @code{``.''} in the
+numbers except those referring to amounts of money). @code{"."} in the
C locale.
@item char *thousands_sep
The character (if any) used to separate groups of digits, when
formatting ordinary numbers.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *grouping
Specifications for how many digits to group (if any grouping is done at
group, and a value of @code{0} (that is, the string's trailing
@code{NULL}) means to continue grouping digits using the last value
specified. Use @code{CHAR_MAX} to indicate that no further grouping is
-desired. @code{``''} in the C locale.
+desired. @code{""} in the C locale.
@item char *int_curr_symbol
The international currency symbol (first three characters), if any, and
the character used to separate it from numbers.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *currency_symbol
The local currency symbol, if any.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *mon_decimal_point
The symbol used to delimit fractions in amounts of money.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *mon_thousands_sep
Similar to @code{thousands_sep}, but used for amounts of money.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *mon_grouping
Similar to @code{grouping}, but used for amounts of money.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *positive_sign
A string to flag positive amounts of money when formatting.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char *negative_sign
A string to flag negative amounts of money when formatting.
-@code{``''} in the C locale.
+@code{""} in the C locale.
@item char int_frac_digits
The number of digits to display when formatting amounts of money to
@node machine,,syscalls,Top
@chapter NEC V70 Specific Functions
-The NEC V70 has machine instructions for fast IEEE floating point,
-including operations normally provided by the library.
+The NEC V70 has machine instructions for fast IEEE floating-point
+arithmetic, including operations normally provided by the library.
When you use the @file{/usr/include/fastmath.h} header file, the
names of several library math functions are redefined to call the
@code{fast_sinf} entry point really performs a @code{fsin.s}
operation. Because of this, the instructions are only useful when
using code compiled with an ANSI C compiler. The prototypes
-and definitions for the floating point versions of the math library
+and definitions for the floating-point versions of the math library
routines are only defined if compiling a module with an ANSI C
compiler.
o f
prints a signed value of the form <<[-]9999.9999>>; takes
- a floating point number
+ a floating-point number
o e
prints a signed value of the form <<[-]9.9999e[+|-]999>>; takes a
- floating point number
+ floating-point number
o E
prints the same way as <<e>>, but using <<E>> to introduce the
- exponent; takes a floating point number
+ exponent; takes a floating-point number
o g
prints a signed value in either <<f>> or <<e>> form, based on given
value and precision---trailing zeros and the decimal point are
- printed only if necessary; takes a floating point number
+ printed only if necessary; takes a floating-point number
o G
prints the same way as <<g>>, but using <<E>> for the exponent if an
- exponent is needed; takes a floating point number
+ exponent is needed; takes a floating-point number
o n
stores (in the same object) a count of the characters written;
<<(int *arg)>>.
o e, f, g
- Read a floating point number into the corresponding <[arg]>:
+ Read a floating-point number into the corresponding <[arg]>:
<<(float *arg)>>.
o E, F, G
- Read a floating point number into the corresponding <[arg]>:
+ Read a floating-point number into the corresponding <[arg]>:
<<(double *arg)>>.
o i
<<atoff>> converts the initial portion of a string to a <<float>>.
The functions parse the character string <[s]>,
-locating a substring which can be converted to a floating point
+locating a substring which can be converted to a floating-point
value. The substring must match the format:
. [+|-]<[digits]>[.][<[digits]>][(e|E)[+|-]<[digits]>]
The substring converted is the longest initial
@tex
$n/d$,
@end tex
-@ifinfo
+@ifnottex
<[n]>/<[d]>,
-@end ifinfo
+@end ifnottex
returning quotient and remainder as two integers in a structure <<div_t>>.
RETURNS
@tex
$n/d$,
@end tex
-@ifinfo
+@ifnottex
<[n]>/<[d]>,
-@end ifinfo
+@end ifnottex
returning quotient and remainder as two long integers in a structure <<ldiv_t>>.
RETURNS
/* Maximum exponent digits - base 10 */
#define MAX_EXP_DIGITS 5
-/* Control structure for long doublue conversion including rounding precision values.
+/* Control structure for long double conversion including rounding precision values.
* rndprc can be set to 80 (if NE=6), 64, 56, 53, or 24 bits.
*/
typedef struct
DESCRIPTION
<<expm1>> and <<expm1f>> calculate the exponential of <[x]>
and subtract 1, that is,
- @ifinfo
+ @ifnottex
e raised to the power <[x]> minus 1 (where e
- @end ifinfo
+ @end ifnottex
@tex
$e^x - 1$ (where $e$
@end tex
/*
FUNCTION
- <<ilogb>>, <<ilogbf>>---get exponent of floating point number
+ <<ilogb>>, <<ilogbf>>---get exponent of floating-point number
INDEX
ilogb
INDEX
DESCRIPTION
- All non zero, normal numbers can be described as <[m]> *
+ All nonzero, normal numbers can be described as <[m]> *
2**<[p]>. <<ilogb>> and <<ilogbf>> examine the argument
<[val]>, and return <[p]>. The functions <<frexp>> and
<<frexpf>> are similar to <<ilogb>> and <<ilogbf>>, but also
RETURNS
<<ilogb>> and <<ilogbf>> return the power of two used to form the
-floating point argument. If <[val]> is <<0>>, they return <<-
+floating-point argument. If <[val]> is <<0>>, they return <<-
INT_MAX>> (<<INT_MAX>> is defined in limits.h). If <[val]> is
infinite, or NaN, they return <<INT_MAX>>.
DESCRIPTION
<<infinity>> and <<infinityf>> return the special number IEEE
- infinity in double and single precision arithmetic
- respectivly.
+ infinity in double- and single-precision arithmetic
+ respectively.
QUICKREF
infinity - pure
/*
FUNCTION
- <<nan>>, <<nanf>>---representation of infinity
+ <<nan>>, <<nanf>>---representation of ``Not a Number''
INDEX
nan
DESCRIPTION
<<nan>> and <<nanf>> return an IEEE NaN (Not a Number) in
- double and single precision arithmetic respectivly. The
+ double- and single-precision arithmetic respectively. The
argument is currently disregarded.
QUICKREF
DESCRIPTION
-<<nextafter>> returns the double) precision floating point number
+<<nextafter>> returns the double-precision floating-point number
closest to <[val]> in the direction toward <[dir]>. <<nextafterf>>
performs the same operation in single precision. For example,
<<nextafter(0.0,1.0)>> returns the smallest positive number which is
/*
FUNCTION
-<<scalbn>>, <<scalbnf>>---scale by integer
+<<scalbn>>, <<scalbnf>>---scale by power of two
INDEX
scalbn
INDEX
* 1. Compute and return log2(x) in two pieces:
* log2(x) = w1 + w2,
* where w1 has 53-24 = 29 bit trailing zeros.
- * 2. Perform y*log2(x) = n+y' by simulating muti-precision
+ * 2. Perform y*log2(x) = n+y' by simulating multi-precision
* arithmetic, where |y'|<=0.5.
* 3. Return x**y = 2**n*exp(y'*log2)
*
called, but warning message are not printed.
In SVID mode, functions which overflow return 3.40282346638528860e+38,
-the maximum single precision floating point value, rather than infinity.
+the maximum single-precision floating-point value, rather than infinity.
Also, @code{errno} is set correctly, @code{matherr} is called, and, if
@code{matherr} returns 0, warning messages are printed for some errors.
For example, by default @samp{log(-1.0)} writes this message on standard
DESCRIPTION
<<asinh>> calculates the inverse hyperbolic sine of <[x]>.
<<asinh>> is defined as
-@ifinfo
+@ifnottex
. sgn(<[x]>) * log(abs(<[x]>) + sqrt(1+<[x]>*<[x]>))
-@end ifinfo
+@end ifnottex
@tex
$$sign(x) \times ln\Bigl(|x| + \sqrt{1+x^2}\Bigr)$$
@end tex
<<atanf>> is identical to <<atan>>, save that it operates on <<floats>>.
RETURNS
-@ifinfo
+@ifnottex
<<atan>> returns a value in radians, in the range of -pi/2 to pi/2.
-@end ifinfo
+@end ifnottex
@tex
<<atan>> returns a value in radians, in the range of $-\pi/2$ to $\pi/2$.
@end tex
DESCRIPTION
- All non zero, normal numbers can be described as <[m]> * 2**<[p]>.
+ All nonzero, normal numbers can be described as <[m]> * 2**<[p]>.
<<frexp>> represents the double <[val]> as a mantissa <[m]>
and a power of two <[p]>. The resulting mantissa will always
be greater than or equal to <<0.5>>, and less than <<1.0>> (as
long as <[val]> is nonzero). The power of two will be stored
in <<*>><[exp]>.
-@ifinfo
+@ifnottex
<[m]> and <[p]> are calculated so that
<[val]> is <[m]> times <<2>> to the power <[p]>.
-@end ifinfo
+@end ifnottex
@tex
<[m]> and <[p]> are calculated so that
$ val = m \times 2^p $.
DESCRIPTION
- These functions provide information on the floating point
+ These functions provide information on the floating-point
argument supplied.
There are five major number formats -
o zero
a number which contains all zero bits.
o subnormal
- Is used to represent number with a zero exponent, but a non zero fraction.
+ Is used to represent number with a zero exponent, but a nonzero fraction.
o normal
A number with an exponent, and a fraction
o infinity
A number with an all 1's exponent and a zero fraction.
o NAN
- A number with an all 1's exponent and a non zero fraction.
+ A number with an all 1's exponent and a nonzero fraction.
o-
The <<isnanf>>, <<isinff>> and <<finitef>> perform the same
operations as their <<isnan>>, <<isinf>> and <<finite>>
- counterparts, but on single precision floating point numbers.
+ counterparts, but on single-precision floating-point numbers.
QUICKREF
isnan - pure
DESCRIPTION
<<ldexp>> calculates the value
-@ifinfo
+@ifnottex
<[val]> times 2 to the power <[exp]>.
-@end ifinfo
+@end ifnottex
@tex
$val\times 2^{exp}$.
@end tex
its calculations on <<floats>>.
RETURNS
- @ifinfo
+ @ifnottex
<<acos>> and <<acosf>> return values in radians, in the range of 0 to pi.
- @end ifinfo
+ @end ifnottex
@tex
<<acos>> and <<acosf>> return values in radians, in the range of <<0>> to $\pi$.
@end tex
DESCRIPTION
<<acosh>> calculates the inverse hyperbolic cosine of <[x]>.
<<acosh>> is defined as
-@ifinfo
+@ifnottex
. log(<[x]> + sqrt(<[x]>*<[x]>-1))
-@end ifinfo
+@end ifnottex
@tex
$$ln\Bigl(x + \sqrt{x^2-1}\Bigr)$$
@end tex
You can modify error handling for these routines using <<matherr>>.
RETURNS
-@ifinfo
+@ifnottex
<<asin>> returns values in radians, in the range of -pi/2 to pi/2.
-@end ifinfo
+@end ifnottex
@tex
<<asin>> returns values in radians, in the range of $-\pi/2$ to $\pi/2$.
@end tex
<<atan2>> computes the inverse tangent (arc tangent) of <[y]>/<[x]>.
<<atan2>> produces the correct result even for angles near
-@ifinfo
+@ifnottex
pi/2 or -pi/2
-@end ifinfo
+@end ifnottex
@tex
$\pi/2$ or $-\pi/2$
@end tex
RETURNS
<<atan2>> and <<atan2f>> return a value in radians, in the range of
-@ifinfo
+@ifnottex
-pi to pi.
-@end ifinfo
+@end ifnottex
@tex
$-\pi$ to $\pi$.
@end tex
<<atanh>> and <<atanhf>> return the calculated value.
If
- @ifinfo
+ @ifnottex
|<[x]>|
- @end ifinfo
+ @end ifnottex
@tex
$|x|$
@end tex
the result is a NaN. A <<DOMAIN error>> is reported.
If
- @ifinfo
+ @ifnottex
|<[x]>|
- @end ifinfo
+ @end ifnottex
@tex
$|x|$
@end tex
<<cosh>> computes the hyperbolic cosine of the argument <[x]>.
<<cosh(<[x]>)>> is defined as
- @ifinfo
+ @ifnottex
. (exp(x) + exp(-x))/2
- @end ifinfo
+ @end ifnottex
@tex
$${(e^x + e^{-x})} \over 2$$
@end tex
DESCRIPTION
<<exp>> and <<expf>> calculate the exponential of <[x]>, that is,
- @ifinfo
+ @ifnottex
e raised to the power <[x]> (where e
- @end ifinfo
+ @end ifnottex
@tex
$e^x$ (where $e$
@end tex
DESCRIPTION
<<exp2>> and <<exp2f>> calculate 2 ^ <[x]>, that is,
- @ifinfo
+ @ifnottex
2 raised to the power <[x]>.
+ @end ifnottex
+ @tex
+ $2^x$
+ @end tex
You can use the (non-ANSI) function <<matherr>> to specify
error handling for these functions.
RETURNS
The <<fmod>> function returns the value
-@ifinfo
+@ifnottex
<[x]>-<[i]>*<[y]>,
-@end ifinfo
+@end ifnottex
@tex
$x-i\times y$,
@end tex
the natural logarithm of the gamma function of <[x]>. The gamma function
(<<exp(gamma(<[x]>))>>) is a generalization of factorial, and retains
the property that
-@ifinfo
+@ifnottex
<<exp(gamma(N))>> is equivalent to <<N*exp(gamma(N-1))>>.
-@end ifinfo
+@end ifnottex
@tex
$\mit \Gamma(N)\equiv N\times\Gamma(N-1)$.
@end tex
@tex
$\mit ln\bigl(\Gamma(x)\bigr)$ rather than simply $\mit \Gamma(x)$
@end tex
-@ifinfo
+@ifnottex
the natural log of the gamma function, rather than the gamma function
itself,
-@end ifinfo
+@end ifnottex
to extend the useful range of results representable.
The sign of the result is returned in the global variable <<signgam>>,
@tex
$\sqrt{x^2+y^2}$
@end tex
- @ifinfo
+ @ifnottex
<<sqrt(<[x]>*<[x]> + <[y]>*<[y]>)>>
- @end ifinfo
+ @end ifnottex
between the origin (0,0) and a point represented by the
Cartesian coordinates (<[x]>,<[y]>). <<hypotf>> differs only
in the type of its arguments and result.
DESCRIPTION
The Bessel functions are a family of functions that solve the
differential equation
-@ifinfo
+@ifnottex
. 2 2 2
. x y'' + xy' + (x - p )y = 0
-@end ifinfo
+@end ifnottex
@tex
$$x^2{d^2y\over dx^2} + x{dy\over dx} + (x^2-p^2)y = 0$$
@end tex
float <[x]>, <[y]>;
DESCRIPTION
- <<pow>> and <<powf>> calculate <[x]> raised to the exp1.0nt <[y]>.
+ <<pow>> and <<powf>> calculate <[x]> raised to the exponent <[y]>.
@tex
(That is, $x^y$.)
@end tex
DESCRIPTION
<<sinh>> computes the hyperbolic sine of the argument <[x]>.
Angles are specified in radians. <<sinh>>(<[x]>) is defined as
- @ifinfo
+ @ifnottex
. (exp(<[x]>) - exp(-<[x]>))/2
- @end ifinfo
+ @end ifnottex
@tex
$${e^x - e^{-x}}\over 2$$
@end tex
DESCRIPTION
<<acosh>> calculates the inverse hyperbolic cosine of <[x]>.
<<acosh>> is defined as
-@ifinfo
+@ifnottex
. log(<[x]> + sqrt(<[x]>*<[x]>-1))
-@end ifinfo
+@end ifnottex
@tex
$$ln\Bigl(x + \sqrt{x^2-1}\Bigr)$$
@end tex
<<atanh>> and <<atanhf>> return the calculated value.
If
- @ifinfo
+ @ifnottex
|<[x]>|
- @end ifinfo
+ @end ifnottex
@tex
$|x|$
@end tex
the result is a NaN. A <<DOMAIN error>> is reported.
If
- @ifinfo
+ @ifnottex
|<[x]>|
- @end ifinfo
+ @end ifnottex
@tex
$|x|$
@end tex
@tex
$\sqrt{x^2+y^2}$
@end tex
- @ifinfo
+ @ifnottex
<<sqrt(<[x]>*<[x]> + <[y]>*<[y]>)>>
- @end ifinfo
+ @end ifnottex
between the origin (0,0) and a point represented by the
Cartesian coordinates (<[x]>,<[y]>). <<hypotf>> differs only
in the type of its arguments and result.
the natural logarithm of the gamma function of <[x]>. The gamma function
(<<exp(gamma(<[x]>))>>) is a generalization of factorial, and retains
the property that
-@ifinfo
+@ifnottex
<<exp(gamma(N))>> is equivalent to <<N*exp(gamma(N-1))>>.
-@end ifinfo
+@end ifnottex
@tex
$\mit \Gamma(N)\equiv N\times\Gamma(N-1)$.
@end tex
@tex
$\mit ln\bigl(\Gamma(x)\bigr)$ rather than simply $\mit \Gamma(x)$
@end tex
-@ifinfo
+@ifnottex
the natural log of the gamma function, rather than the gamma function
itself,
-@end ifinfo
+@end ifnottex
to extend the useful range of results representable.
The sign of the result is returned in the global variable <<signgam>>,
called, but warning message are not printed.
In SVID mode, functions which overflow return 3.40282346638528860e+38,
-the maximum single precision floating point value, rather than infinity.
+the maximum single-precision floating-point value, rather than infinity.
Also, @code{errno} is set correctly, @code{matherr} is called, and, if
@code{matherr} returns 0, warning messages are printed for some errors.
For example, by default @samp{log(-1.0)} writes this message on standard
its calculations on <<floats>>.
RETURNS
- @ifinfo
+ @ifnottex
<<acos>> and <<acosf>> return values in radians, in the range of 0 to pi
.
- @end ifinfo
+ @end ifnottex
@tex
<<acos>> and <<acosf>> return values in radians, in the range of <<0>> t
o $\pi$.
than taking and returning floats.
RETURNS
-@ifinfo
+@ifnottex
<<asin>> and <<acos>> return values in radians, in the range of -pi/2 to pi/2.
-@end ifinfo
+@end ifnottex
@tex
<<asin>> and <<acos>> return values in radians, in the range of $-\pi/2$ to $\pi/2$.
@end tex
DESCRIPTION
<<asinh>> calculates the inverse hyperbolic sine of <[x]>.
<<asinh>> is defined as
-@ifinfo
+@ifnottex
. sgn(<[x]>) * log(abs(<[x]>) + sqrt(1+<[x]>*<[x]>))
-@end ifinfo
+@end ifnottex
@tex
$$sign(x) \times ln\Bigl(|x| + \sqrt{1+x^2}\Bigr)$$
@end tex
<<atanf>> is identical to <<atan>>, save that it operates on <<floats>>.
RETURNS
-@ifinfo
+@ifnottex
<<atan>> returns a value in radians, in the range of -pi/2 to pi/2.
-@end ifinfo
+@end ifnottex
@tex
<<atan>> returns a value in radians, in the range of $-\pi/2$ to $\pi/2$.
@end tex
<<atan2>> computes the inverse tangent (arc tangent) of <[y]>/<[x]>.
<<atan2>> produces the correct result even for angles near
-@ifinfo
+@ifnottex
pi/2 or -pi/2
-@end ifinfo
+@end ifnottex
@tex
$\pi/2$ or $-\pi/2$
@end tex
RETURNS
<<atan2>> and <<atan2f>> return a value in radians, in the range of
-@ifinfo
+@ifnottex
-pi to pi.
-@end ifinfo
+@end ifnottex
@tex
$-\pi$ to $\pi$.
@end tex
<<atanf>> is identical to <<atan>>, save that it operates on <<floats>>.
RETURNS
-@ifinfo
+@ifnottex
<<atan>> returns a value in radians, in the range of -pi/2 to pi/2.
<<atan2>> returns a value in radians, in the range of -pi/2 to pi/2.
-@end ifinfo
+@end ifnottex
@tex
<<atan>> returns a value in radians, in the range of $-\pi/2$ to $\pi/2$.
<<atan2>> returns a value in radians, in the range of $-\pi/2$ to $\pi/2$.
<<cosh>> computes the hyperbolic cosine of the argument <[x]>.
<<cosh(<[x]>)>> is defined as
- @ifinfo
+ @ifnottex
. (exp(x) + exp(-x))/2
- @end ifinfo
+ @end ifnottex
@tex
$${(e^x + e^{-x})} \over 2$$
@end tex
DESCRIPTION
<<exp>> and <<expf>> calculate the exponential of <[x]>, that is,
- @ifinfo
+ @ifnottex
e raised to the power <[x]> (where e
- @end ifinfo
+ @end ifnottex
@tex
$e^x$ (where $e$
@end tex
RETURNS
The <<fmod>> function returns the value
-@ifinfo
+@ifnottex
<[x]>-<[i]>*<[y]>,
-@end ifinfo
+@end ifnottex
@tex
$x-i\times y$,
@end tex
DESCRIPTION
- All non zero, normal numbers can be described as <[m]> * 2**<[p]>.
+ All nonzero, normal numbers can be described as <[m]> * 2**<[p]>.
<<frexp>> represents the double <[val]> as a mantissa <[m]>
and a power of two <[p]>. The resulting mantissa will always
be greater than or equal to <<0.5>>, and less than <<1.0>> (as
long as <[val]> is nonzero). The power of two will be stored
in <<*>><[exp]>.
-@ifinfo
+@ifnottex
<[m]> and <[p]> are calculated so that
<[val]> is <[m]> times <<2>> to the power <[p]>.
-@end ifinfo
+@end ifnottex
@tex
<[m]> and <[p]> are calculated so that
$ val = m \times 2^p $.
DESCRIPTION
- These functions provide information on the floating point
+ These functions provide information on the floating-point
argument supplied.
There are five major number formats -
o zero
a number which contains all zero bits.
o subnormal
- Is used to represent number with a zero exponent, but a non zero fract
+ Is used to represent number with a zero exponent, but a nonzero fract
ion.
o normal
A number with an exponent, and a fraction
o infinity
A number with an all 1's exponent and a zero fraction.
o NAN
- A number with an all 1's exponent and a non zero fraction.
+ A number with an all 1's exponent and a nonzero fraction.
o-
The <<isnanf>>, <<isinff>> and <<finitef>> perform the same
operations as their <<isnan>>, <<isinf>> and <<finite>>
- counterparts, but on single precision floating point numbers.
+ counterparts, but on single-precision floating-point numbers.
QUICKREF
isnan - pure
* isnan
*
* Input:
- * x - pointer to a floating point value
+ * x - pointer to a floating-point value
*
* Output:
* An integer that indicates if the number is NaN.
DESCRIPTION
<<ldexp>> calculates the value
-@ifinfo
+@ifnottex
<[val]> times 2 to the power <[exp]>.
-@end ifinfo
+@end ifnottex
@tex
$val\times 2^{exp}$.
@end tex
float <[x]>, <[y]>;
DESCRIPTION
- <<pow>> and <<powf>> calculate <[x]> raised to the exp1.0nt <[y]>.
+ <<pow>> and <<powf>> calculate <[x]> raised to the exponent <[y]>.
@tex
(That is, $x^y$.)
@end tex
<<sinh>> and <<cosh>> compute the hyperbolic sine or cosine
of the argument <[x]>.
Angles are specified in radians. <<sinh>>(<[x]>) is defined as
- @ifinfo
+ @ifnottex
. (exp(<[x]>) - exp(-<[x]>))/2
- @end ifinfo
+ @end ifnottex
@tex
$${e^x - e^{-x}}\over 2$$
@end tex
<<cosh>> is defined as
- @ifinfo
+ @ifnottex
. (exp(<[x]>) - exp(-<[x]>))/2
- @end ifinfo
+ @end ifnottex
@tex
$${e^x + e^{-x}}\over 2$$
@end tex
DESCRIPTION
The Bessel functions are a family of functions that solve the
differential equation
-@ifinfo
+@ifnottex
. 2 2 2
. x y'' + xy' + (x - p )y = 0
-@end ifinfo
+@end ifnottex
@tex
$$x^2{d^2y\over dx^2} + x{dy\over dx} + (x^2-p^2)y = 0$$
@end tex