QMCPACK / QMCPACK/qmcpack

HEG produces "random" results with batch

Open
#5,758 14 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C++
Stars
403
Forks
154
Avg merge
1d 12h
Merged PRs (30d)
82

Description

HEG calculations seem to produce random but stable results for any particular random seed.

**To Reproduce**
Run a HEG VMC calculation.

```xml


batch




p p p

6
5.0
14



-1
1.0


-1
1.0















1.082858193 0.6653279375 0.4358910287 0.2243616172 0.1102948764




1.696171854 1.047722154 0.6275148566 0.3175982878 0.1446706214









200
100
40
5.0










```

Update the project id to Keep you results.
Run another HEG calculation with the same input.
Compare to the run's scalar.dat's

Run 1
```
# index LocalEnergy LocalEnergy_sq LocalPotential Kinetic ElecElec BlockWeight BlockCPU AcceptRatio
0 5.0510903186e+00 3.8657572467e+01 -6.7322779272e+00 1.1783368246e+01 -6.7322779272e+00 2.5600000000e+04 3.7331729520e+00 5.1770368304e-01
1 5.0135188702e+00 3.8581755845e+01 -6.7352521701e+00 1.1748771040e+01 -6.7352521701e+00 2.5600000000e+04 3.7289637030e+00 5.1763950893e-01
2 5.0632069853e+00 3.9144665819e+01 -6.7381508086e+00 1.1801357794e+01 -6.7381508086e+00 2.5600000000e+04 3.7109413520e+00 5.1728794643e-01
3 5.0037196089e+00 3.8702979247e+01 -6.7330429175e+00 1.1736762526e+01 -6.7330429175e+00 2.5600000000e+04 3.7213199860e+00 5.1833705357e-01
4 5.0543480890e+00 3.8858143057e+01 -6.7358911315e+00 1.1790239221e+01 -6.7358911315e+00 2.5600000000e+04 3.7204689640e+00 5.1724330357e-01
```
Run 2
```
# index LocalEnergy LocalEnergy_sq LocalPotential Kinetic ElecElec BlockWeight BlockCPU AcceptRatio
0 6.6706736285e+00 5.7851923310e+01 -5.1452389250e+00 1.1815912553e+01 -5.1452389250e+00 2.5600000000e+04 3.7391328910e+00 5.1616071429e-01
1 6.6569517588e+00 5.7537601793e+01 -5.1454341345e+00 1.1802385893e+01 -5.1454341345e+00 2.5600000000e+04 3.7358367980e+00 5.1873604911e-01
2 6.6681928152e+00 5.7613986113e+01 -5.1454061489e+00 1.1813598964e+01 -5.1454061489e+00 2.5600000000e+04 3.7326993590e+00 5.1755301339e-01
3 6.6648498744e+00 5.8741626524e+01 -5.1429758167e+00 1.1807825691e+01 -5.1429758167e+00 2.5600000000e+04 3.7283851180e+00 5.1908203125e-01
4 6.6542603439e+00 5.7664675633e+01 -5.1458908133e+00 1.1800151157e+01 -5.1458908133e+00 2.5600000000e+04 3.7241059530e+00 5.1715959821e-01
```
Note: I did run these two with a tau of 10 instead of 5 in the hope of breaking out of a minima (not that that makes sense to me) tau=5 gives a higher acceptance ratio but behavior is otherwise the same.

**Expected behavior**
Block energies that converge within error bars.

**System:**
- sdgx-server

**Additional context**
I was hoping to use heg to establish correctness for the batched Energy Density Estimator, but obviously if it can't converge...

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.