GNU Scientific Library - Bugs: bug #58066, Digamma function returning...
You are not allowed to post comments on this tracker with your current authentication level.
bug #58066: Digamma function returning incorrect values for (most) negative integers
Submitter: | Jackson Vanover <jacksonvanover> | ||
Submitted: | Sat 28 Mar 2020 05:27:05 PM UTC | ||
Category: | Accuracy problem | Severity: | 3 - Normal |
Operating System: | Ubuntu 18.04 | Status: | None |
Assigned to: | None | Open/Closed: | Open |
Release: | 2.6 |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
Carbon-Copy List
No changes have been made to this item
Powered by Savane 3.12.
Corresponding source code
Using version 2.6 of GSL from ftp://ftp.gnu.org/gnu/gsl/gsl-2.6.tar.gz
OS is Ubuntu 18.04.2 LTS
Hardware is a Dell workstation with a 3.60 GHz Intel i7-4790 and 32 GB
of RAM
Compiler is gcc 7.4.0 with the -w option
Though the digamma function has poles at all negative integer values,
once the magnitude of the input is larger than 2,
GSL does not complain and returns incorrect values. For the inputs -1
and -2, the error handler is invoked with a domain error as might be
expected.
#include <gsl/gsl_sf.h>
#include <stdio.h>
#include <gsl/gsl_math.h>
#include <float.h>
int main (void){
double out;
out = gsl_sf_psi(-3);
printf("%.*f\n", DBL_DIG-1, out);
printf("%.21e\n", out);
return 0;
}