Developing a Hartree-Fock program, the algorithm
The Hartree-Fock algorithm can be broken down as follows. We recall that our Hartree-Fock matrix is
$$
\hat{h}_{\alpha\beta}^{HF}=\langle \alpha \vert\hat{h}_0 \vert \beta \rangle+
\sum_{j=1}^N\sum_{\gamma\delta} C^*_{j\gamma}C_{j\delta}\langle \alpha\gamma|V|\beta\delta\rangle_{AS}.
$$
Normally we assume that the single-particle basis \( \vert\beta\rangle \)
forms an eigenbasis for the operator \( \hat{h}_0 \) (this is our case), meaning that the
Hartree-Fock matrix becomes
$$
\hat{h}_{\alpha\beta}^{HF}=\epsilon_{\alpha}\delta_{\alpha,\beta}+
\sum_{j=1}^N\sum_{\gamma\delta} C^*_{j\gamma}C_{j\delta}\langle \alpha\gamma|V|\beta\delta\rangle_{AS}.
$$
The Hartree-Fock eigenvalue problem
$$
\sum_{\beta}\hat{h}_{\alpha\beta}^{HF}C_{i\beta}=\epsilon_i^{\mathrm{HF}}C_{i\alpha},
$$
can be written out in a more compact form as
$$
\hat{h}^{HF}\hat{C}=\epsilon^{\mathrm{HF}}\hat{C}.
$$