MathGroup Archive 1998

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

Search the Archive

RE: Method to eliminate




Sean Ross replied to Soo-Hwan:
I add some comments below.
 ----------
|> I want to know the method to eliminate NIntegrate warning. |>
|> The two warning message follows : |>
|> NIntegrate::slwcon:
|>    Numerical integration converging too slowly; |>      suspect one
of the following: singularity, |>      oscillatory integrand, or
insufficient |>      WorkingPrecision.
|>
|> NIntegrate::ncvb:
|>    NIntegrate failed to converge to prescribed |>      accuracy after
7 recursive bisections in x near |>     x = 0.126684.
|>
|> How can I escape from this problem ? When above-case happened, |> can
I believe the accuracy of my data ? |
|
|A better question is:  when you don't get the error message, can you
|believe the accuracy of your data?  The message is just that, a
|warning.  If it offends you, turn it off using Off[](see the
|mathematica book 2.8.21).  Don't blindly trust a numerical routine,
|even one as well written as the one in mathematica.  Learn about the
|issues involved in numeric integrals and write your own routine if you
|have any reason to suspect mathematicas.

Post your specific problem, and a member of the group might show you how
to  fix it.

Also:
Before you write your own algorithm take a look at the various methods
that  are built in.

I have tried to learn how the NIntegrate Options effect the algorithms,
and  when certain selection are needed.  WRI has written some tutorials
on this,  but not as detailed as I would like.

I was able to perform experiments to learn what happens when I use 
non-default values for GaussPoints, MinRecursion, MaxRecursion, and 
 SingularityDepth.  However, it would have been nice if the tutorials 
illustrated the lessons I had to discover on my own.  It would have
made it  a lot easier (especially since I have no formal education in
numerical  analysis).

To this day I have only a vague understanding of the GaussKronrod
method. 
 You might suggest I check a Numerical Analysis book.  Well I have
checked  several, and I have yet to find one that has more than two
paragraphs on  GaussKronrod integration.  The WRI tutorial notes say
"Calculating high  precision weights and abscissas for the Gauss rule
is fairly time consuming  for a large number of GaussPoints".  OK how
about an example to demonstrate  this.  It's hard to quantify "fairly
time consuming".   Also I can only make  an educated guess at how some
other methods work:  (DoubleExponential,  QuasiMonteCarlo,
MultiDimensional, Oscillatory).

Some of the Options are not as difficult to understand (AccuracyGoal, 
WorkingPrecision, Compiled, PrecisionGoal).

Perhaps a qualified member of the group would be willing to write a
detailed  tutorial on the NIntegrate Options.  The tutorial could be
presented at the  Mathematica User Conference, or in the Mathematica
Journal.  Besides the  NIntegrate Options there are likely other the
numerical algorithms in  Mathematica that could also be discussed.

Ted Ersek




  • Prev by Date: Re: Complex -> List does not work
  • Next by Date: Re: ParametricPlot3D Question
  • Prev by thread: RE: Diamond Video card problems?
  • Next by thread: JordanDecomposition trouble