From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18994 invoked by alias); 30 Jun 2005 04:45:24 -0000 Mailing-List: contact gsl-discuss-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sources.redhat.com Received: (qmail 18981 invoked by uid 22791); 30 Jun 2005 04:45:17 -0000 Received: from post-hgw.ipp-hgw.mpg.de (HELO post-hgw.ipp-hgw.mpg.de) (194.94.214.13) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Thu, 30 Jun 2005 04:45:17 +0000 Received: from work08.ipp-hgw.mpg.de (mow@work08.ipp-hgw.mpg.de [194.94.214.48]) by post-hgw.ipp-hgw.mpg.de (8.9.2/8.9.2) with ESMTP id GAA72514; Thu, 30 Jun 2005 06:45:12 +0200 Date: Thu, 30 Jun 2005 04:45:00 -0000 From: Manoj Warrier To: "Robert G. Brown" cc: gsl-discuss@sources.redhat.com Subject: Re: multidimensional integration In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2005-q2/txt/msg00030.txt.bz2 Is not Monte-Carlo integration the recommended method for multi-dimensional integration? The GSL specific routines for this are described at: http://www.gnu.org/software/gsl/manual/gsl-ref_23.html#SEC371 I think your point (b) below hits the nail on the head. I have not used these techniques, and would like to hear other, more expert opinion. Best Regards. Manoj On Wed, 29 Jun 2005, Robert G. Brown wrote: > Hi fellow GSL'ers. > > We have a postdoc in our department who is preparing to integrate > something. In his previous position at another place, he used NAG to do > this, and has the requisite code already in place. He requested that we > buy and install a single copy of NAG just for him and a student to be > able to use this one routine to do this one integral on just one > computer, at a cost of many hundreds of dollars. > > I suggested that he look into using the GSL instead, since it is a very > high-quality library to my own direct experience and of course is both > free and universally installed in our department. GSL and NAG both use > QUADPACK as the basis for their 1D integrals (and have nearly identical > call structure) so I figured that the transition would actually be > painless. > > However, the integrand he has to integrate is actually defined and > integrated over somewhere between 5 to 7 dimensions (with rectangular > limits). The routine he used from NAG was actually d01fcc, which is NOT > from QUADPACK but rather implements the multidimensional adaptive > routine HALF with a custom interval rule. When I looked at GSL's online > manual (version 1.6 as of this last December) I didn't see a > multidimensional integration routine equivalent to d01fcc. > > SO, questions: > > a) Is a multidimensional integration routine equivalent to d01fcc > implemented or under development, and if so, where is it and/or how do I > get a version that has it? I looked at the CVS tree and didn't > immediately see one. In principle I could probably use e.g. a > multidimentional ODE solver but I'd think that having a d01fcc > equivalent would be much more efficient. > > b) If not, does anybody have any suggestions on the "best" way to > attack this sort of integral using existing tools? At five dimensions I > suspect that just calling 1 dim integrations five levels deep would > result in an awful lot of wasted energy and time. Framing it as an ODE > set also seems like it would work but likely not be terribly efficient > or terribly easy to control error-wise. > > c) On a related note, has anybody done a head-to-head performance > comparison of GSL with NAG -- either time/efficiency performance or > numerical accuracy type performance? This isn't a significant issue on > this particular project but is an issue that I expect to see come up in > the future. > > rgb > -- Manoj Warrier (manoj.warrier@ipp.mpg.de) Stellaratortheorie, Max-Planck Institut Fur Plasmaphysik TeilInstitut Greifswald Wendelsteinstrasse 1 D-17491 Greifswald Germany Tel: +49-3834-882434 --------- History of Computing 10-11-3003 --------------- Then there used to be this great user friendly OS which overwrote your MBR whenever you installed it. ---------------------------------------------------------