URL: <https://savannah.gnu.org/bugs/?58032>
Summary: gsl_sf_hyperg_1F1 returning incorrect result for nonpositive integers Project: GNU Scientific Library Submitted by: jacksonvanover Submitted on: Mon 23 Mar 2020 11:25:16 PM UTC Category: Accuracy problem Severity: 3 - Normal Operating System: Ubuntu 18.04 Status: None Assigned to: None Open/Closed: Open Release: 2.6 Discussion Lock: Any _______________________________________________________ Details: 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 When evaluating gsl_sf_hyperg_1F1 or gsl_sf_hyperg_1F1_int with b=0 and x=0, the return is consistently 1 even though the confluent hypergeometric function does not exist when b is a nonpositive integer (see https://dlmf.nist.gov/13.2) #include <gsl/gsl_sf.h> #include <stdio.h> #include <gsl/gsl_math.h> #include <float.h> int main (void){ double out1, out2; out1 = gsl_sf_hyperg_1F1(2, 0, 0); out2 = gsl_sf_hyperg_1F1_int(2, 0, 0); printf("%.*f\n", DBL_DIG-1, out1); printf("%.21e\n", out1); printf("%.*f\n", DBL_DIG-1, out2); printf("%.21e\n", out2); return 0; } _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?58032> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/