# Integral does not converge for certain x

I'm trying to evaluate an integral (which is a part of Caputo fractional derivative). Because it depends on both x and t I usually have a function wrapper that chooses a concrete x and things get going. I found that it's usually okay but when q is 0.7-9 or 1.7-9 for certain x's the NIntegrate does not converge. (Here I put x as a rational because I found it helps in evaluation for some reason.)

Here is one random instance of this:

q = 0.8;
NIntegrate[D[Sech[t],{t, Ceiling[q]}] (x-t)^(Ceiling[q]-q-1), {t,0,x}] /. x->241/50


Another x to try can be 103/50.

I've tried changing AccuracyGoal, MaxRecursion, Method but not with much luck. I have feeling that with proper Method it will find a good answer. It's been giving me some answers that are unstable -- they depend on the chosen Method, other times it gives me a complex answer which shouldn't be true.

I also plotted the integrand for when x is 241/50 and up to that x it looks convergent so I don't know where the problem is.

Thanks!

• Try changing variables to u = x-t – Carl Woll Jun 7 '17 at 6:25
• There is an integrable singularity at the right endpoint (x, that is) so it is not surprising there might be convergence issues. – Daniel Lichtblau Jun 7 '17 at 15:00

Maybe you can just change variables from t to u = x - t? For example:

q = .8;
foo[x_] := NIntegrate[
Derivative[Ceiling[q]][Sech][x-u]u^(Ceiling[q]-q-1),
{u, 0, x}
]

foo[241/50]
foo[103/50]


-0.481131

-1.71624

• That's beautiful and it works! One question: why do the bounds go from 0 to x instead of x to 0? When t = 0, u = x, when t = x, u = 0 – Buddhapus Jun 7 '17 at 6:58
• du = -dt so I included this sign change in the limits – Carl Woll Jun 7 '17 at 7:00