I have to solve a PDE (in the context of the functional renormalization group in physics). I have a function of two variables, $U(l,p)$. I know $U(0,p)=U_0(p)$ and then I have an equation (eq925) that gives me $\partial_l U(l,p)$. Here is the code Definitions eq925 = D[U[l, p], l] == d U[l, p] - (d - 2) p D[U[l, p], p] - k[d]/d (1/(1 + D[U[l, p], p] + 2 p D[U[l, p], {p, 2}])); k[d_] := (2^(d - 1) \[Pi]^(d/2) Gamma[d/2]) U0[p_] := u0/6 (p - p0)^2 u0v = 0.01; p0v = 0.050459; d = 3; Attempt at solving s2 = NDSolve[{eq925, U[0, p] == Evaluate[U0[p] /. {u0 -> u0v, p0 -> p0v}]},U[l, p], {l, 0, 1}, {p, -4, 4}] Depending on the range of `p` in my `NDSolve` I get problems. If I only keep positive `p`, I get a reasonable solution, but if include (like I did in the previous line code) negative values of `p`, I get this error > NDSolve::eerr: Warning: scaled local spatial error estimate of 3152.029270554484` at l = 0.0659979486053968` in the direction of independent variable p is much greater than the prescribed error tolerance. Grid spacing with 25 points may be too large to achieve the desired accuracy or precision. A singularity may have formed or a smaller grid spacing can be specified using the MaxStepSize or MinPoints method options. >> I know I could have singularities in the denominator of `eq925`, but this should happen in my case for values around $p=-100$, which is far outside my range. Any ideas why this happens?