Slater-Jastrow Wavefunctions
The Slater-Jastrow wavefunction is a product of a Slater determinant and a Jastrow factor. The Slater determinant is constructed from single-particle orbitals, which are determined by the chosen mean-field ansatz and the associated variational parameters. The Jastrow factor is a correlation factor that accounts for additional long-range correlations and onsite quantum fluctuations.
The wavefunction is given by:
The Gutzwiller projection \(\hat{P}^G\)
The Gutzwiller projector \(\hat{P}^G\) simply projects out the unphysical states of the wavefunction, which are those with double occupancy or onsite vacancies. This projection is handled exactly by the Monte Carlo updates, which only sample over states in the computational basis:
where \(r_i\) is the position of the \(i^{\text{th}}\) lattice site and \(m_i\) is the magnetic quantum number of the particle on that site. The Gutzwiller projector is then given by:
which is a sum over all possible single-occupancy spin-\(S\) states. The notation of the basis states is the same as that of the computational basis for qudits with \(d = 2S + 1\), where the lattice indices are dropped because they are implicit in the Gutzwiller projector. This projection is applied exactly by the Monte Carlo updates, and does not have to be explicitly included in the wavefunction.
The Jastrow factor \(\mathcal{J}\)
The Slater Determinant \(|\psi_{MF}\rangle\)
The Slater determinant is constructed from single-particle orbitals, which are determined by the chosen mean-field ansatz and the associated variational parameters. The Slater determinant is given by:
where the \(\phi_i(x_j)\) are the occupied single-particle states of the mean-field Hamiltonian \(H_{MF}\). \(H_{MF}\) encodes the chosen ansatz and the associated variational parameters. It takes the form
For more details on the mean-field Hamiltonian, see Specifying the mean field Hamiltonian.
Constructing the Slater determinant
Diagonalizing \(H_{MF}\) gives the available single-particle orbitals:
Note that this matrix has dimensions \(dN \times dN\), where \(d\) is the local dimension of the spins and \(N\) is the number of particles/sites. This list of orbitals is assumed to be sorted in order of increasing mean-field energy, so we will only use elements from the first \(N\) orbitals to construct the Slater determinant.
To combine the available orbitals with a basis state and initialize the Slater determinant, we first choose a basis state \(|x\rangle\) from the computational basis. In general this is done by randomly assigning a spin \(m_i\) to each lattice site, while ensuring the total-\(S^z = \sum_i m_i\) is zero. Given a configuration \(|x\rangle\), the Slater determinant is then the \(N\) rows of \(\Phi\) that correspond to the values of \(m_i\) in the basis state. For example, suppose we have a spin-1/2 system with 2 lattice sites. Suppose the chosen initial configuration is \(|x\rangle = |\uparrow, \downarrow\rangle\). The available single-particle orbitals are given by:
By convention, the lattice sites are grouped so that the full spatial wavefunction for a given value of \(m_i\) takes up \(N\) consecutive rows in each column. From the available orbitals above, the Slater determinant corresponding to the configuration \(|x\rangle = |\uparrow, \downarrow\rangle\) is given by:
Computing a proposed Monte Carlo update probability
Suppose we want to compute the probability of swapping the two particles in the above example. This probability is given by the ratio of the new and old Slater determinants:
In this small example, the full determinant could be computed at each Monte Carlo step. However, for larger systems, the determinant is too large to compute directly. Instead, the primary object we work with is the matrix \(W(x)\), defined as
where \(I_{dN\times N}\) is the identity matrix of shape \((dN, N)\), which selects only the first \(N\) columns of \(\Phi\), i.e. the occupied orbitals. \(S(x)\) is the Slater matrix, which is just the matrix of occupied orbitals that forms the Slater determinant, such that \(\psi(x) = \text{det}(S(x))\).
With this definition in mind, let us now rewrite the ratio of determinants in a more convenient form. Suppose the update \(x\rightarrow x'\) is a rank-2 update generated by swapping the particles at two sites. Then, the new Slater matrix can be written as
where \(U\) is a \((N, 2)\) permutation matrix of the form
The only nonzero entries of \(U\) are the rows indexed by \(i_1\) and \(i_2\), which are the rows of \(S(x)\) corresponding to the two particles being swapped. The matrix \(V\) is a \((2, N)\) matrix of the differencing the new and old particle occupations, which are rows of \(S(x')\) and \(S(x)\) respectively. For example, if the two particles being swapped are at sites \(i_1\) and \(i_2\), then \(V\) is given by
The notation \(x_{i}\) refers to the configuration of the \(i^{\text{th}}\) particle in the Slater determinant, i.e. \(x_{i} = (r_i, m_i)\).
With the notation in place, the update probability can be rewritten as
in terms of \(W(x)\):
Updating the Slater determinant
We can use the Woodbury matrix identity to compute the ratio of determinants when only changing a small number of rows and columns. The Woodbury matrix identity is: