Double integration over infinite intervals in Fortran

Click For Summary

Discussion Overview

The discussion centers around the challenges of performing double integration in Fortran, particularly when one of the integration limits is infinite. Participants explore potential methods and routines that could facilitate this type of integration, including the use of existing libraries and the development of custom routines.

Discussion Character

  • Technical explanation, Exploratory, Debate/contested

Main Points Raised

  • One participant expresses difficulty with double integration where one limit is infinity and inquires about Fortran routines that can handle this scenario.
  • Another participant suggests that the complexity of the integral may influence the choice of method and requests more details about the integral itself.
  • A different participant proposes that developing a custom integration routine may be the best approach unless the integral is particularly challenging, noting that this is feasible for someone with Fortran experience.
  • This participant outlines two cases for handling integration over the interval [0,∞]: using a Gauss-Laguerre rule for integrands that decay exponentially and a mapping to [0,1] with a Gauss-Legendre rule for integrands that decay more slowly.
  • One participant acknowledges the suggestions and expresses intent to try the proposed methods.

Areas of Agreement / Disagreement

Participants do not reach a consensus on a specific routine or method for double integration over infinite intervals, and multiple approaches are discussed without resolution.

Contextual Notes

The discussion lacks specific details about the integral in question, which may affect the applicability of the proposed methods. There are also assumptions regarding the behavior of the integrand that are not fully explored.

Monika Randhawa
Messages
2
Reaction score
0
Hi.. I am stuck up with a double integration where one of the integration limit is infinity. I know quadpack (qagi) can handle integration over infinite intervals. But how to make it work for the double integration. Or if there is any other routine that can handle both double integration and integration over infinite intervals. Thanks...
 
Technology news on Phys.org
It would likely help if you could post the integral or give an indication of its nastiness. The possible answers may depend on that.
 
Monika Randhawa said:
Hi.. I am stuck up with a double integration where one of the integration limit is infinity. I know quadpack (qagi) can handle integration over infinite intervals. But how to make it work for the double integration. Or if there is any other routine that can handle both double integration and integration over infinite intervals. Thanks...

I don't know about any Fortran library having this. However, I believe that unless your integral is very difficult, e.g. having singularities, the best option is to develop your own integration routine. This is not difficult if you have some experience in Fortran programming. In this way you can also adapt the routine to your needs.
Essentially, for an integration over ##[0,\infty]## you have to cases:
Let's call the variable with infinite limit ##x##.
1) if the integrand decays exponentially to 0 as ##x\rightarrow \infty##, you should use a Gauss-Laguerre rule
2) if the integrand decays more slowly than exponentially to 0 as ##x\rightarrow \infty##, the best option is usually to use a mapping to ##[0,1]## and then a Gauss-Legendre rule

I cannot give you more specific information without knowing the problem in more detail.
 
Thanks... Let me try this.
 

Similar threads

  • · Replies 19 ·
Replies
19
Views
3K
  • · Replies 7 ·
Replies
7
Views
2K
  • · Replies 6 ·
Replies
6
Views
7K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 8 ·
Replies
8
Views
4K
Replies
2
Views
2K
  • · Replies 21 ·
Replies
21
Views
3K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 4 ·
Replies
4
Views
8K
Replies
2
Views
2K