I am trying to write computer code which will find the energy and density function for an atom with $Z$ protons and $N$ electrons. I am working in 1D for simplicity and would like to make the overall code as simple as possible (I am using Hartree units aswell). I am using also using the Hartree approximation. This is my overall algorithm:
Finds hydrogen like wave-functions (i.e. no electron-election interaction)
Works out density function via $n(z) = \sum_i \left | \phi_i(z) \right |^2$
Works out Hartree potential $ V_H(r) = \int_0^\infty \frac{n(\vec{s})}{\left | \vec{r}-\vec{s} \right |} d\vec{s} $
Uses Kohn-Sham equation to find new individual wavefuncitons $\left (-\tfrac{1}{2}\bigtriangledown^2 + \frac{Z}{\left |r \right |} + V_H(\vec{r}) + V_{EX}(\vec{r}) \right )\phi_i = \varepsilon_i \phi_i$
Go back to step 1. and repeat.
I am having a number of difficulty and would be very grateful for some help with any of my questions.
Firstly to compute the Hartree potential I need to turn it into a 1D problem, so we assume even spherical distribution of charge:
$ V_H(r) = \int_0^\infty 4\pi s^2 \frac{ n(s)}{\left |r-s\right |} ds $
However this blows up when $r = s$. I have been looking into Gauss's law but had no luck.
Additionally, I am unsure how to compute the exchange-correlation term. I am trying to find a function which I can easily implement.
Any help would be great.