Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix cusp for NaN's and catch bracketing failures #1594

merged 4 commits into from May 13, 2019


Copy link

commented May 10, 2019

Three changes to address issues seen in #1542

  1. Increase the bracketing iteration count to 100,000 and add another step size increase at 10,000
  2. Catch the std::runtime exception thrown if the bracketing reaches the maximum iteration count, and abort the code with a better message. Unhandled exceptions are not reported well, especially under MPI.
  3. Add a small offset to the wavefunction correction in the effective local energy calculation to prevent division by zero.

markdewing added some commits May 10, 2019

Catch bracket errors during cusp minimization
The code to bracket a minimum throws an exception, which is not well
reported, espcially under MPI.  This catches the exception and aborts
the execution with a more visible message.

The effective local energy divides by the value of wavefunction correction.
If it is zero, the result is a NaN, which makes bracketing and minimization
run poorly.  This is a simple hack to prevent the denominator from being zero.

@ghost ghost assigned markdewing May 10, 2019

@ghost ghost added the in progress label May 10, 2019

Copy link

left a comment

We might compute some "real world" statistics on the amount of bracketing required. Presumably there are efficiencies to be had.

@ghost ghost assigned prckent May 13, 2019

@prckent prckent merged commit 1fb3b7b into QMCPACK:develop May 13, 2019

3 checks passed


@ghost ghost removed the in progress label May 13, 2019

@markdewing markdewing deleted the markdewing:cusp_nan_fix branch Aug 19, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
2 participants
You can’t perform that action at this time.