\" $NetBSD: log.3,v 1.8 2024/01/26 19:27:30 nros Exp $
\"
\" Copyright (c) 2011 Jukka Ruohonen <[email protected]>
\" All rights reserved.
\"
\" Redistribution and use in source and binary forms, with or without
\" modification, are permitted provided that the following conditions
\" are met:
\" 1. Redistributions of source code must retain the above copyright
\"    notice, this list of conditions and the following disclaimer.
\" 2. Redistributions in binary form must reproduce the above copyright
\"    notice, this list of conditions and the following disclaimer in the
\"    documentation and/or other materials provided with the distribution.
\"
\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
\" POSSIBILITY OF SUCH DAMAGE.
\"
Dd January 24, 2024
Dt LOG 3
Os
Sh NAME
Nm log ,
Nm logf ,
Nm logl ,
Nm log10 ,
Nm log10f ,
Nm log10l ,
Nm log1p ,
Nm log1pf ,
Nm log1pl ,
Nm log2 ,
Nm log2f
Nm log2l
Nd logarithm functions
Sh LIBRARY
Lb libm
Sh SYNOPSIS
In math.h
Ft double
Fn log "double x"
Ft float
Fn logf "float x"
Ft long double
Fn logl "long double x"
Ft double
Fn log10 "double x"
Ft float
Fn log10f "float x"
Ft log double
Fn log10l "long double x"
Ft double
Fn log1p "double x"
Ft float
Fn log1pf "float x"
Ft long double
Fn log1pl "long double x"
Ft double
Fn log2 "double x"
Ft float
Fn log2f "float x"
Ft long double
Fn log2l "long double x"
Sh DESCRIPTION
The following functions compute logarithms:
Bl -bullet -offset 2n
It
The
Fn log ,
Fn logf
and
Fn logl
functions return the natural logarithm.
It
The
Fn log10 ,
Fn log10f
and
Fn log10l
functions return the base 10 logarithm.
It
The
Fn log1p ,
Fn log1pf
and
Fn log1pl
functions return the natural logarithm of (1.0 +
Fa x )
accurately even for very small values of
Fa x .
It
The
Fn log2 ,
Fn log2f
and
Fn log2l
functions return the base 2 logarithm.
El
Sh RETURN VALUES
Upon successful completion, the functions return the logarithm of
Fa x
as described above.
Otherwise the following may occur:
Bl -enum -offset indent
It
If
Fa x
is \*(Na, all functions return \*(Na.
It
If
Fa x
is positive infinity, all functions return
Fa x .
If
Fa x
is negative infinity, all functions return \*(Na.
It
If
Fa x
is +0.0 or -0.0, the
Fn log ,
Fn log10 ,
and
Fn log2
families return either
Dv -HUGE_VAL ,
Dv -HUGE_VALF ,
or
Dv -HUGE_VALL ,
whereas the
Fn log1p
family returns
Fa x .
It
If
Fa x
is +1.0, the
Fn log ,
Fn log10 ,
and
Fn log2
families return +0.0.
If
Fa x
is -1.0, the
Fn log1p
family returns
Dv -HUGE_VAL ,
Dv -HUGE_VALF ,
or
Dv -HUGE_VALL .
El
Pp
In addition, on a
Tn VAX ,
Va errno
is set to
Er EDOM
and the reserved operand is returned
by
Fn log
unless
Fa x
> 0, by
Fn log1p
unless
Fa x
> \-1.
Sh SEE ALSO
Xr exp 3 ,
Xr ilogb 3 ,
Xr math 3
Sh STANDARDS
The described functions conform to
St -isoC-99 .
Sh HISTORY
A
Fn log
function appeared in
At v1 .