Algorithm¶
Variational Monte Calro Method¶
The variational Monte Carlo (VMC) method is a method for calculating approximate wave functions of a ground state and low-lying excited states by optimizing variational parameters included in a trial wave function. In calculating expectation values of physical quantities for the trial wave functions, the Markov chain Monte Carlo method is applied for efficient important sampling.
In the mVMC package, we choose a spatial configuration for electrons as a complete set of bases in sampling:
where \(r_{n\sigma}\) is a position of \(n\)-th electron with \(\sigma (=\uparrow \rm{or} \downarrow)\) spin, and \(c_{r_{n\sigma}}^{\dagger}\) is a creation operator of electrons. By using this basis set, the expectation value of an operator \(A\) is expressed as
If we define a weight of the Markov chain Monte Carlo method as
we can rewrite \(\langle A \rangle\) in the following form:
By using this form, the Markov chain Monte Carlo method is performed for sampling with respect to \(x\). The local Green’s function \(G_{ij\sigma\sigma'}(x)\), which is defined as
is also evaluated by the same sampling method by taking \(A = c_{i\sigma}^{\dagger} c_{j\sigma'}\). We adopt the Mersenne twister method as a random number generator for sampling [Mutsuo2008 ].
Bogoliubov representation¶
In the VMC calculation for spin systems, we use the Bogoliubov
representation. In the input files defining the one-body term
(transfer
) and the two-body term (InterAll
), and the output
files for correlation functions, the indices must be assigned by the
Bogoliubov representation, in which the spin operators are generally
expressed by creation/annihilation operators of fermions as
Since the present package support only \(S=1/2\) spin systems, the Bogoliubov representation obtained by substituting \(S=1/2\) into the above equations is used.
Properties of the Pfaffian-Slater determinant¶
In this section, we explain some properties of the Pfaffian-Slater determinant. We derive the general relation between a Pfaffian-Slater determinant and a single Slater determinant in Antiparallel Pfaffian and General Pfaffian . We also discuss meaning of the singular value decomposition of coefficients \(f_{ij}\) in SVD.
Relation between \(f_{ij}\) and \(\Phi_{in\sigma}\) (the case of the anti-parallel pairing)¶
In the many-variable variational Monte Carlo (mVMC) method, the one-body part of the trial wave function is expressed by the Pfaffian Slater determinant defined as
where \(N_{s}\) is number of sites, \(N_{e}\) is number of total particles, and \(f_{ij}\) are variational parameters. For simplicity, we assume that \(f_{ij}\) are a real number. The single Slater determinant is defined as
Here, \(\Phi_{in\sigma}\) is an orthonormal basis, i.e., satisfies
where \(\delta_{nm}\) is the Kronecker’s delta. From this orthogonality, we can prove the relation
Next, let us prove the relation between \(f_{ij}\) and \(\Phi_{in\sigma}\) by modifying \(|\phi_{\rm SL}\rangle\). By the commutation relation for \(\psi^{\dagger}_{n\sigma}\), \(|\phi_{\rm SL}\rangle\) is rewritten as
where \(\mu(n)\) represents permutation of a sequence of natural numbers, \(n= 1, 2, \cdots, N_{e}/2\). For simplicity, let us take identity permutation (\(\mu(n) = n\)). By defining \(K_{n}^{\dagger}=\psi_{n\uparrow}^{\dagger}\psi_{n\downarrow}^{\dagger}\), and by using the relation \(K_{n}^{\dagger}K_{m}^{\dagger}=K_{m}^{\dagger}K_{n}^{\dagger}\), we can derive the relation
This result indicates that \(f_{ij}\) is expressed by the coefficients of the single Slater determinant as
We note that this is one of a number of possible expressions of \(f_{ij}\) derived from one single Slater determinant. Since \(f_{ij}\) depends not only on the choice of the pairing degrees of freedom (i.e., the choice of \(\mu(n)\)) but also on the choice of the gauge degrees of freedom (i.e., the sign of \(\Phi_{in\sigma}\)), the parameter \(f_{ij}\) has huge redundancy.
Relation between \(F_{IJ}\) and \(\Phi_{In}\) (the case of the general pairing)¶
We extend the relation between the Pfaffian-Slater wave function and the single Slater wave function into the general pairing case including the spin-parallel pairing. We define the Pfaffian-Slater wave function and the single Slater wave function as
respectively, where \(I\), \(J\) denote the site index including the spin degrees of freedom. By the similar argument as the anti-parallel pairing case, we can derive the following relation:
Because this relation hold for the case of anti-parallel pairing, we employ this relation in mVMC ver 1.0 and later.
Singular value decomposition of \(f_{ij}\)¶
We define matrices \(F\), \(\Phi_{\uparrow}\), \(\Phi_{\downarrow}\), and \(\Sigma\) as
When \(f_{ij}\) (i.e., the matrix \(F\)) is related with a single Slater determinant of the wave function, we can show that the singular value decomposition of \(F\) becomes
This result indicates that when the number of nonzero singular values is \(N_{e}/2\), and when all the nonzero singular values of \(F\) are one in the singular value decomposition of \(F\), the Pfaffian-Slater wave function parametrized by \(f_{ij}\) coincides with a single Slater determinant (i.e. a solution of the mean-field approximation). In other words, the numbers of the nonzero singular values and their difference from one offer a quantitative criterion how the Pfaffian-Slater determinant deviates from the single Slate determinant.
Power Lanczos method¶
In this section, we show how to determine \(\alpha\) in the power-Lanczos method. We also explain the calculation of physical quantities after the single-step Lanczos method.
Determination of \(\alpha\)¶
First, we briefly explain the sampling procedure of the variational Monte Carlo (VMC) method. Physical properties \(\hat{A}\) are calculated as follows:
There are two ways to calculate the product of the operators \(\hat{A}\hat{B}\).
As we explain later, in general, the latter way is numerical stable one. For example, we consider the expectation value of the variance, which is defined as \(\sigma^2=\langle (\hat{H}-\langle \hat{H}\rangle)^2\rangle\). There are two ways to calculate the variance.
From its definition, the latter way gives the positive definitive variance even for the finite sampling while the former way does not guarantee the positive definitiveness of the variance. Here, we consider the expectation values of energy and variance for the (single-step) power Lanczos wave function \(|\phi\rangle =(1+\alpha \hat{H}) |\psi \rangle\). The energy is calculated as
where we define \(h_1\), \(h_{2(11)},~h_{2(20)},\) and \(h_{3(12)}\) as
From the condition \(\frac{\partial E_{LS}(\alpha)}{\partial \alpha}=0\), i.e., by solving the quadratic equations, we can determine the \(\alpha\). The variance is calculate in the similar way.
Calculation of physical quantities¶
By using the optimized parameter \(\alpha\), we can calculate the expected value of the operator \(\hat{A}\) as
where we define \(A_0\), \(A_{1(10)},~A_{1(01)},\) and \(A_{2(11)}\) as