evanberkowitz / supervillain

MCMC for modified Villain constructions
https://supervillain.readthedocs.io/
Other
0 stars 0 forks source link

Villain sign-free neighborhood updates #113

Closed alcherman closed 8 months ago

alcherman commented 9 months ago

If we add a constraint term the Villain action appears to have a severe sign problem. But if we propose updates for n that satisfy dn = 0 mod W, the problematic term in the action will never contribute. There's another open issue to try to set up a worm-type algorithm to do this, but it seems likely there are simpler, more local field update algorithms that would do the job. It would be nice to work out a simple example of such an algorithm and implement it in the code - it may be good enough within the gapped phase!

evanberkowitz commented 9 months ago

I think at some point we came up with two kinds of updates which together seemed likely to be ergodic + maintain the constraint. If I can summarize, it was a combination of:

Was there anything else?

alcherman commented 9 months ago

That was it! I think that should work...

evanberkowitz commented 8 months ago

In #120 we change the NeighborhoodUpdate to change links only multiples of W so that they're always constraint-satisfying. But I haven't implemented a local coordinated dn=0 update (though the Villain worm maintains dn).

evanberkowitz commented 8 months ago

Closed by a combination of #125, #128, and #129 while attacking #123.