[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-gsl] [bug #43256] gsl_sf_coupling_6j overflows
From: |
Anders Søndergaard |
Subject: |
[Bug-gsl] [bug #43256] gsl_sf_coupling_6j overflows |
Date: |
Fri, 19 Sep 2014 12:45:53 +0000 |
User-agent: |
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:32.0) Gecko/20100101 Firefox/32.0 |
URL:
<http://savannah.gnu.org/bugs/?43256>
Summary: gsl_sf_coupling_6j overflows
Project: GNU Scientific Library
Submitted by: andersas
Submitted on: Fri 19 Sep 2014 12:45:52 PM GMT
Category: Runtime error
Severity: 3 - Normal
Operating System: Ubuntu linux
Status: None
Assigned to: None
Open/Closed: Open
Release: 1.16 (ubuntu latest)
Discussion Lock: Any
_______________________________________________________
Details:
I need to calculate 6-j symbols for somewhat large J.
For example the symbol:
(14, 16, 16
78, 62, 76) = 6/1739*sqrt(16971005238954/1556382731177197) = 0.000360286
but this fails because gsl_sf_fact overflows.
It is used internally in gsl_sf_coupling_6j.
I have looked a bit at the code, and I think in these large
cases it is possible to work with the logarithm of the factorials
and in the end exponentiate.
Other libraries I have tested also gets these symbols wrong (but silently
returns the wrong value),
except pythons sympy, which calculates the symbols as the square root of a
rational number.
I would rather not interface my Fortran program with Python.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?43256>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [Bug-gsl] [bug #43256] gsl_sf_coupling_6j overflows,
Anders Søndergaard <=