Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: NIntegrate with floating point limits

  • To: mathgroup at smc.vnet.net
  • Subject: [mg28878] Re: [mg28864] NIntegrate with floating point limits
  • From: BobHanlon at aol.com
  • Date: Thu, 17 May 2001 04:22:49 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

Whether x is an exact number or an inexact number is affecting 
the order of the evaluation and whether there is an infinite term 
in one of the intermediate steps.

Simplify the argument to the first CosIntegral

Clear[x];
((x - u)/x + 1) // Simplify

2 - u/x

x = N[1/4]; 
NIntegrate[ CosIntegral[2 - u/x] - CosIntegral[u/x], {u, 0, x}]

0.23619958861949253

Or simplify the argument to the second CosIntegral

Clear[x];
(1 - (x -u)/x ) // Simplify

u/x

x = N[1/4]; 
NIntegrate[CosIntegral[(x - u)/x + 1] - CosIntegral[u/x], {u, 0, x}]

0.23619958861949253

Or simplify them both

Clear[x, f];
f[x_] = Evaluate[
      Simplify[CosIntegral[(x - u)/x + 1] - CosIntegral[1 - (x - u)/x]]];
x = N[1/4]; 
NIntegrate[f[x], {u, 0, x}]

0.23619958861949253

Or avoid evaluating the integrand for u = 0

x = N[1/4]; 
NIntegrate[CosIntegral[(x - u)/x + 1] - CosIntegral[1 - (x - u)/x], 
{u, 10^-15, x}]

0.23619958861946183


Bob Hanlon

In a message dated 2001/5/16 3:38:43 AM, f.h.simons at tue.nl writes:

>Can someone explain why the following integral can only be computed
>numerically with exact limits and not with a floating point limit?
>
>x = 1/4; NIntegrate[ CosIntegral[(x - u)/x + 1] - CosIntegral[1 - (x -
>u)/x], {u, 0, x}]
>
>returns 0.2362;
>
>x = N[1/4]; NIntegrate[ CosIntegral[(x - u)/x + 1] - CosIntegral[1 - (x
>-
>u)/x], {u, 0, x}]
>
>returns some complaints and no result.
>
>In all cases I met so far, floating points limits in numerical integration
>caused no problems.
>


  • Prev by Date: Re: NIntegrate with floating point limits
  • Next by Date: Re: Decimal math bug?
  • Previous by thread: Re: NIntegrate with floating point limits
  • Next by thread: multiple ImplicitPlot