issp-center-dev / mVMC

A numerical solver package for a wide range of quantum lattice models based on many-variable Variational Monte Carlo method
http://www.pasums.issp.u-tokyo.ac.jp/mvmc/en/
GNU General Public License v3.0
59 stars 19 forks source link

Non-periodic BC? #21

Open nikita-astronaut opened 3 years ago

nikita-astronaut commented 3 years ago

Dear mVMC developers,

I have a question about how one could employ periodic boundary conditions with a twist. I am interested in (a) general twist, (b) twist \pi (antiperiodic).

In case of (b), there is just a special flag in mVMC, that switches on the APBC mode. I have a question on how to use this mode, namely 1) This would modify the Tij (kineric term elements) that go over the boundary, by multiplying by -1. Should I do it myself when I fill-in the trans.def file, or this will be done automatically? 2) how I shall define the variational parameters (say, orbitals), if I use the APBC mode? In the PBC case, I would employ translational invariance, namely, `f{i, j} = f_{G(i), G(j)}where G is translation. Now, I need to introduce two "families" off_ij: one for thosef_ij` that connect sites without crossing [in terms of shortest distance] the boundary and other family that goes over the boundary. Within each family I can use translational invariance?

Basically, there are several references, for instance https://journals.aps.org/prb/pdf/10.1103/PhysRevB.90.115137, where mVMC was used with APBC. I wonder, how one defines the variational parameters in this case?

Thanks a lot for your help! Best wishes, Nikita

tmisawa commented 3 years ago

Dear Nikita,

I am sorry for the very late reply. This reply may be too late for helping you, but I replied to your questions for your reference.

  1. In the standard mode, by specifying phase0 or phase1, you can treat the twisted boundary. For example, phase0=180 means the antiperiodic boundary conditions for a0 direction [ The phase factor Exp[i(phase0/180)pi] is added at the boundary]. For more detail, please see the following manual.

https://issp-center-dev.github.io/mVMC/doc/en/html/standard.html?highlight=phase0

Please note that this mode is valid only for the itinerant electrons systems.

  1. If you employ the antiperiodic condition, f_{G(i), G(j)} should change its sign if G(i) or G(j) cross the boundary. For example, let consider 4-site chain (boundary exsits between site 0 and site 3) and 2 sub-lattice condition. Under +2 translation, T_{R=2} f_{0,3}C_{0↑} C_{3↓} changes as f_{0,3}C_{2↑}C_{5↓}=f_{0,3}C_{2↑} C_{5↓}=-f_{0,3}C_{2↑} C_{1↓} [sign change occurs because boundary exists between site 3 and site 5].
    Thie means f_{2,1} = -f(0,3) should be satisfied under antiperiodic boundary condition.

I hope this answer will be helpful for you.

Best, Takahiro