I am attempting to solve an equation of the type:
$ \left( -\tfrac{\partial^2}{\partial x^2} - f\left(x\right) \right) \psi(x) = \lambda \psi(x) $
Where $f(x)$ has a simple pole at $0$, for the smallest $N$ eigenvalues and eigenvectors. The boundary conditions are: $\psi(0) = 0$ and $\psi(R)=0$, and I'm only looking at the function over $(0,R]$.
However, if I do a very simple, evenly spaced finite difference method, The smallest eigenvalue is very inaccurate, (sometimes there is a "false" eigenvalue that is several orders of magnitude more negative than the one I know should be there, the real "first eigenvalue" becomes the second, but is still poor).
What affects the accuracy of such a finite difference scheme? I assume that the singularity is what is causing the problem, and that an unevenly spaced grid would improve things significantly, are there any papers that can point me towards a good non-uniform finite difference method? But perhaps a higher order difference scheme would improve it more? How do you decide (or is it just "try both and see")
note: my finite difference scheme is symmetric tridiagonal where the 3 diagonals are:
$\left( -\frac{1}{2 \Delta^2}, \; \frac{1}{\Delta^2} - f(x), \; -\frac{1}{2 \Delta^2} \right)$
Where $\Delta$ is the grid spacing. And I am solving the matrix using a direct symmetric solver (I am assuming that the accuracy is not affected drastically by the solver, am I wrong?)