-
Notifications
You must be signed in to change notification settings - Fork 151
Description
Describe the bug
Cusp correction (in the CASINO way, for all-electron calculations, with a GTO basis set) only works if atoms of same type are consecutive. For instance, if I give the input of a molecule in the following way:
H -0.923961000000000 1.231956000000000 -1.684781230000000
C 0.000000000000000 0.667176000000000 -1.684781230000000
C 0.000000000000000 -0.667176000000000 -1.684781230000000
H 0.923961000000000 1.231956000000000 -1.684781230000000
H 0.923961000000000 -1.231956000000000 -1.684781230000000
H -0.923961000000000 -1.231956000000000 -1.684781230000000
The cusp correction gives totally wrong energies, while if I input the molecule in the following way:
C 0.000000000000000 0.667176000000000 -1.684781230000000
C 0.000000000000000 -0.667176000000000 -1.684781230000000
H -0.923961000000000 1.231956000000000 -1.684781230000000
H 0.923961000000000 1.231956000000000 -1.684781230000000
H 0.923961000000000 -1.231956000000000 -1.684781230000000
H -0.923961000000000 -1.231956000000000 -1.684781230000000
the cusp correction works properly.
To Reproduce
Steps to reproduce the behavior:
- release version or git commit hash being built: observed in the last 3.17.1 version, as well 3.14 and 3.15.
- cmake command
- full program/test invocation command
- additional steps
Expected behavior
A clear and concise description of what you expected to happen.
I expect the cusp correction should work independently on the order of atoms, or the code should stop with an error message when the atom order is not consistent with the cusp correction.
System:
- system name: both on my laptop (mac os x) and on Archer2 cluster
- modules loaded [e.g. output of
module list] - other systems where this is reproducible [e.g. "my laptop", "none"]
Additional context
Add any other context about the problem here.