public inbox for gsl-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Gerard Jungman <jungman@lanl.gov>
To: mendl@ma.tum.de, gsl-discuss@sourceware.org, help-gsl@gnu.org
Subject: Re: reference for Fermi-Dirac integral implementation
Date: Tue, 25 Jun 2013 22:34:00 -0000	[thread overview]
Message-ID: <51CA1AC9.6040709@lanl.gov> (raw)
In-Reply-To: <9d811eafdfc1fe9a3f2d9718ff9b3222.squirrel@wml.ma.tum.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

           reply	other threads:[~2013-06-25 22:34 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <9d811eafdfc1fe9a3f2d9718ff9b3222.squirrel@wml.ma.tum.de>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51CA1AC9.6040709@lanl.gov \
    --to=jungman@lanl.gov \
    --cc=gsl-discuss@sourceware.org \
    --cc=help-gsl@gnu.org \
    --cc=mendl@ma.tum.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).