I am trying to numerically estimate a complex 3D integral. Here is its version considerably reduced for the purposes of the present discussion:
NIntegrate[(x + ξ)^4/(
Sqrt[ξ] (y^2 + (x + ξ)^2)^3), {x, -100, 100}, {y, 0,
100}, {ξ, 0, 100}]
The integral has an integrable singularity. One can make it sure by passing to spherical coordinates. I believe that it should be possible to calculate it. However, it is this singularity that makes the integral difficult to estimate numerically. Regularization like
...{y, 0.001,100}, {ξ, 0.001, 100}...
does not help.
I tried most (though yet not all) of methods and strategies for the singular integrals listed in the tutorial/NIntegrateIntegrationStrategies. This was so far unsuccessful.
One of the recommendations I received in the message reporting the divergence was to increase "MaxErrorIncreases". However, I failed to find any documentation showing how to apply this option. Therefore,
My first question: Do you know, how to use "MaxErrorIncreases"?
The second question: Do you have any idea on calculating an integral of this type?
Edit: To address the question of @Akku14 Yes, I managed to integrate it over ksi exactly:
intt = Integrate[
1/Sqrt[ξ]* ((x + ξ)^4)/(y^2 + (x + ξ)^2)^3, {ξ,
0, ∞}, Assumptions -> {y > 0, x ∈ Reals}]
which yields
(* 1/64 π (10 (1/(x - I y)^(3/2) + 1/(x + I y)^(3/2)) - (
12 I (1/Sqrt[x - I y] - 1/Sqrt[x + I y]))/y +
3 I (1/(x - I y)^(5/2) - 1/(x + I y)^(5/2)) y) *)
On the one hand, this result seems suspicious. I am not quite sure that it is right. On the other hand, this does not really help. The integral
NIntegrate[intt, {x, -100, 100}, {y, 0, 100}]
still does not converge, at least, by itself.

Integratein x,y or xi. This makes things much easier. – Akku14 Mar 02 '20 at 10:35Method -> {"GlobalAdaptive", "SingularityHandler" -> "DuffyCoordinates", "SingularityDepth" -> 20, "MaxErrorIncreases" -> 20000}. See http://reference.wolfram.com/language/tutorial/NIntegrateIntegrationStrategies.html for documentation of these options. Good luck. Nothing really worked for me yet. – Michael E2 Mar 02 '20 at 13:31MaxErrorIncreasesinto the documentation search bar. My goodness, not a single relevant hit until the 17th (NIntegrate), which is the only relevant hit in all 33 hits. The tutorial I linked does not even come up in the whole list. Your first question should have been "easily found in the documentation," but it's not. – Michael E2 Mar 02 '20 at 13:59MaxErrorIncreasesI wrote up for another question, but I didn't get a chance to post it: the question was closed before I got a chance. https://gist.github.com/mroge02/a2d99912f5f885b5d2e9e28281272b71 – Michael E2 Mar 06 '20 at 02:04MaxErrorIncreasesis now on-site here: https://mathematica.stackexchange.com/a/215891/4999 – Michael E2 Mar 06 '20 at 22:23IntegrationMonitor :> (Sow[Total@Through[#@"Error"]] &)]. This is converted to relative error witherrors = Flatten@errors/integral;, theRealExponentof which is what is plotted. For a near-zero integral, the absolute error is probably more appropriate; one could change the line toerrors = Flatten@errors. (Probably the original should be divided byAbs[integral], butRealExponentdoesn't care if the numbers are negative or even complex.) -- Glad you find it helpful. Thanks! – Michael E2 Mar 13 '20 at 15:08