This is the mail archive of the
gsl-discuss@sourceware.org
mailing list for the GSL project.
Re: reference for Fermi-Dirac integral implementation
- From: Gerard Jungman <jungman at lanl dot gov>
- To: mendl at ma dot tum dot de, gsl-discuss at sourceware dot org, help-gsl at gnu dot org
- Date: Tue, 25 Jun 2013 16:33:45 -0600
- Subject: Re: reference for Fermi-Dirac integral implementation
- References: <9d811eafdfc1fe9a3f2d9718ff9b3222 dot squirrel at wml dot ma dot tum dot de>
On 06/21/2013 04:17 AM, mendl@ma.tum.de wrote:
Dear Gerard Jungman,
could you provide me with a reference (i.e., published paper) for your
implementation of the Fermi-Dirac integral function for the GNU Scientific
Library?
I'm currently working on a re-implementation for CUDA, and am thus curious
to learn about your work. For my case, only single precision accuracy is
needed, but the CUDA version should run fast since it has to be executed
many times.
Thanks a lot!
Christian Mendl
http://christian.mendl.net
Hi. Thanks for the question. I have included the GSL mailing list in my
reply,
so that the answer can be archived.
The fixed index functions are Chebyshev fits. I may have computed those
myself. If you happen to only need fixed index functions, the best thing
would be to recompute the fits at the fixed precision that you need.
But I assume you are actually asking about the variable index "F_j(x)".
The reference to "Goano" in fermi_dirac.c was unfortunately never spelled
out there. This reference should have been given as follows:
M. Goano, ACM Trans. Math. Soft. 21 (1995) 221.
"Algorithm 745: Computation of the Complete and Incomplete
Fermi-Dirac Integral"
Looking at the code, I see that some of the branches depend on other GSL
functions, including the hypergeometric functions. This is a can of worms,
since the hypergeometric implementations are the most complicated in the
library. Eventually, there must be a better way to do this, but it would
require some original research.
--
G. Jungman