Open kayahans opened 1 year ago
The issue has nothing to do with drivers. Error printing happens during parsing Coulomb input. With rank 0 printing, other rank may run to error first and terminate all the ranks before rank 0 prints. Change to UniformCommunicateError addresses the issue. Please test out the fix.
The printing part is secondary to the main issue here. The main problem is that the reference energy is incorrect (likely due to premature termination of the sum). This has not been fixed, right?
Describe the bug Reference ion-ion energy of a quasi-2D system (bilayer graphene 3x3x1 tiling at gamma) converges to an incorrect value for bilayer separation at 7 Angstroms.
Due to the mismatch between the reference and QMCPACK ion-ion energies, after printing "Checking ion-ion Ewald energy against reference", QMCPACK terminates. I have used ewald lr_handler with increasing kc cutoff up to 100. Despite the increased cutoff, the problem is not resolved. For the set of ion-ion energy results below, I have used ccecp potentials and LDA functional:
QE values are printed in Ry for the primitive cell, therefore they are adjusted by multiplying with 9/2 for the 3x3x1 tiled supercell.
In the legacy code, the error was printed at every run I tested:
However, there were instances where the error was not printed in the batched code (see dmc folder in the attached files)
To Reproduce Steps to reproduce the behavior:
Expected behavior Reference values in the table should match the QE and QMCPACK ion-ion values within some tolerance with increasing kc cutoff. Batched code should also print the error at every run if encountered.
System:
Additional context Add any other context about the problem here. Input/output files: ewald_sum.zip