HF (Hartree–Fock)¶
The HF code solves the Hartree–Fock equation to approximately calculate the ground state density of a one-dimensional finite system of \(N\) like-spin electrons, with Hamiltonian \(\hat{T} + \hat{U} + \hat{V}_{\text{ext}}\), where \(\hat{U}\) is the operator for the softened Coulomb interaction potential given by
A perturbing potential may be applied to the ground state system, and the time-dependent Hartree–Fock equation solved approximately to calculate the system’s time evolution.
Calculating the ground state¶
Orbitals and corresponding non-degenerate energy eigenvalues \(\{ \varphi_{j}, \varepsilon_{j} \}_{j=1}^{N}\) for a non-interacting system of \(N\) electrons are first calculated from the single-particle Schrödinger equation with Hamiltonian \(\hat{T} + \hat{V}_{\text{ext}}\).
We then proceed to calculate the ground state electron density of this system:
From this we find the Hartree potential
and the Fock matrix (the self-energy in the exchange-only approximation)
Defining
the Hartree–Fock Hamiltonian \(\hat{H}\) acts via the integral transform
When our one-dimensional space is discretized to points on a grid, \(H(x,y)\) itself is a two-dimensional array, and acts as the Hamiltonian on the now one-dimensional arrays \(\{ \varphi_{j} \}_{j=1}^{N}\).
We solve the Hartree–Fock equation
to obtain a new set of orbitals and their corresponding eigenvalues.
Using these new orbitals the above process is iterated until a self-consistent solution is reached (i.e. until the change in the new electron density \(n\) is small enough compared to that of the previous iteration).
Time-dependence¶
A perturbing potential \(v_{\text{ptrb}}\) is added to the ground state system so that it now has Hamiltonian \(\hat{T} + \hat{U} + \hat{V}_{\text{ext}} + \hat{V}_{\text{ptrb}}\).
We construct the Time-Dependent Hartree–Fock Hamiltonian, which again acts via the same integral transform as explained previously, but now with a perturbation potential term added as
Beginning with the ground state (initial time) orbitals and energies \(\{ \varphi_{j}(t=0), \varepsilon_{j}(t=0) \}_{j=1}^{N}\) as already calculated, we apply the Crank–Nicolson method to evolve the system forward in time by a step of size \(\delta t\):
This process is repeated until the desired duration of the time-evolution has been simulated. The electron density of the system is calculated from the orbitals at each time-step.