# Finding the discontinuities of a function

I have a list of data and I want to find the discontinuities in the plot of them but I don't want to use interpolation because it is not that exact that it should be. is there any other way?

The equation and the list of its solutions is computed by:

Clear[s, z, q, r, L, Λ, y]
q = 0.2; r = 1.; L = 40; smin = -1; smax = 3; ds = 0.01;
y[s_] :=
NSolve[
z^(L - 4) + ((z + z^-1 - E^-s) (E^-s - q/r E^-s - z^-1) + q/r) /
((z + z^-1 - E^-s) (E^-s - q/r E^-s - z) + q/r) == 0, z];
Λ[s_] := r E^s (z + z^-1) - 2 r;
Do[Λ[s] = Max[Cases[Re[Λ[s] /. y[s]], Except[ComplexInfinity]]], {s, smin, smax, ds}]
T = Table[Λ[s], {s, smin, smax, ds}];


## 1 Answer

ContourPlotshows you the singularities(Denominator==0):

ContourPlot[0 == ((z + z^-1 - E^-s) (E^-s - q/r E^-s - z) + q/r) , {s, -3,3[![enter image description here][1]][1]}, {z, -1, 3}, MaxRecursion -> 4, FrameLabel -> {s, z}]


The contourlines can be evaluated

sols = Solve[ 0 == ((z + z^-1 - E^-s) (E^-s - q/r E^-s - z) + q/r), s]
(*{{s -> Log[(0.5 (4./z + 9. z - (1. (4. + 1. z^2))/z))/(
4. + 5. z^2)]},
{s ->Log[(0.5 (4./z + 9. z + (1. (4. + 1. z^2))/z))/(4. + 5. z^2)]}}*)