MathGroup Archive 2007

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

Search the Archive

Re: SingularityDepth option to NIntegrate in Mathematica 6

  • To: mathgroup at
  • Subject: [mg77779] Re: SingularityDepth option to NIntegrate in Mathematica 6
  • From: antononcube <antononcube at>
  • Date: Sat, 16 Jun 2007 03:59:22 -0400 (EDT)
  • References: <f4ojk5$67p$>

> Why is the SingularityDepth option no longer required / useful?

Since NIntegrate has a number of methods to which SingularityDepth
does not apply, SingularityDepth is a method suboption. It is a
suboption of the methods GlobalAdaptive and LocalAdaptive. Here is an


> Does setting the value of SingularityDepth have any effect?

Yes, setting the SingularityDepth has effect on the evaluation (for
backward compatibility), as it can be seen from the results below:

In[104]:= k = 0;NIntegrate[1/Sqrt[x], {x, 0, 1}, EvaluationMonitor :> k
Out[106]= 132

In[107]:= k = 0;NIntegrate[1/Sqrt[x], {x, 0, 1}, SingularityDepth ->
10, EvaluationMonitor :> k++];k

During evaluation of In[107]:= NIntegrate::ncvb: NIntegrate failed to
converge to prescribed accuracy after 9 recursive bisections in x \
near {x} = {0.00193758}. NIntegrate obtained 1.997237951127453` and \
0.004238324551439297` for the integral and error estimates. >>

Out[109]= 209

If, for example, a non-adaptive integration algorithm is used, then
specifying SingularityDepth does not have effect:

In[117]:= k = 0;
NIntegrate[1/Sqrt[x], {x, 0, 1}, Method -> DoubleExponential,
EvaluationMonitor :> k++];k

Out[119]= 33

In[120]:= k = 0;
NIntegrate[1/Sqrt[x], {x, 0, 1}, SingularityDepth -> 10, Method ->
DoubleExponential, EvaluationMonitor :> k++];k

Out[122]= 33

Anton Antonov,
Wolfram Research, Inc.

  • Prev by Date: Re: Are comments safe inside notebook cells
  • Next by Date: Re: Re: Problems updating Graphics3D Polygons
  • Previous by thread: SingularityDepth option to NIntegrate in Mathematica 6
  • Next by thread: Axis missing from simple ListPlot