bug-gsl
[Top][All Lists]

## Re: [Bug-gsl] Issue with log1p

 From: Brian Gladman Subject: Re: [Bug-gsl] Issue with log1p Date: Sat, 8 Sep 2012 18:15:17 +0100

-----Original Message----- From: Rhys Ulerich
Sent: Saturday, September 08, 2012 4:59 PM
Subject: Re: [Bug-gsl] Issue with log1p

Hi Brian,


But in many files where log1p is used, the gsl_sys.h header (where gsl_log1p is declared) is not included so the compiler doesn't pick up the declaration
of gsl_log1p and hence wrongly concludes that it returns an int.

So the header gsl_sys.h needs to be included in all files where log_1p is
used.


Can you confirm that these are the relevant files?

specfunc/beta_inc.c
specfunc/legendre_poly.c
specfunc/gsl_sf_log.h
specfunc/trig.c
specfunc/beta.c
specfunc/gamma_inc.c
specfunc/test_sf.c
specfunc/poch.c
specfunc/log.c

=====================================
Hi Rhys,

The ones I found for log1p are:

cdf\exponentialinv.c
cdf\gammainv.c
cdf\geometric.c
cdf\gumbel1inv.c
cdf\gumbel2inv.c
cdf\paretoinv.c
cdf\rayleighinv.c
cdf\tdist.c
cdf\weibullinv.c
complex\math.c
randist\beta.c
randist\binomial.c
randist\exponential.c
randist\nbinomial.c
specfunc\erfc.c
specfunc\hyperg_1F1.c
sys\invhyp.c
sys\log1p.c


but I have since discovered that some of these are not necessary because other headers sometimes include the gsl_sys.h header.
==============================


This also applies to other functions that seek to substitute for missing
'standard' functions.


Have a list of functions I might check or a list of files for which
you suggest the gsl_sys.h header be included?

==============================

cdf\exponential.c
cdf\exponentialinv.c
cdf\gammainv.c
cdf\geometric.c
cdf\gumbel1.c
cdf\gumbel1inv.c
cdf\gumbel2.c
cdf\paretoinv.c
cdf\rayleigh.c
cdf\rayleighinv.c
cdf\tdist.c
cdf\tdistinv.c
cdf\weibull.c
cdf\weibullinv.c
complex\math.c
eigen\francis.c
eigen\genv.c
eigen\herm.c
eigen\hermv.c
eigen\nonsymmv.c
eigen\symm.c
eigen\symmv.c
ieee-utils\env.c
linalg\balance.c
multimin\simplex.c
multimin\simplex2.c
multiroots\dnewton.c
ode-initval2\test.c
poly\solve_cubic.c
randist\beta.c
randist\exponential.c
randist\nbinomial.c
rng\ranf.c
roots\newton.c
roots\secant.c
roots\steffenson.c
specfunc\elljac.c
specfunc\erfc.c
specfunc\hyperg_1F1.c
specfunc\hyperg_U.c
specfunc\legendre_con.c
specfunc\legendre_Qn.c
specfunc\trig.c
sys\expm1.c
sys\hypot.c
sys\invhyp.c
sys\ldfrexp.c


But again, a lot of these might not be necessary as gsl_sys.h is included in the gsl_math.h (and maybe other) headers

I really need to print out the full header hierarchy to work this out.


This now leaves me with a single failure to converge in both the cdf and poly tests and two hypergeometric function failures.

Brian