Describe the Bug
In principle, different number of core would lead to same total energy, but in the example abacus-develop/tests/integrate/304_NO_GO_AF , the digital error is too large to ignore.
In my test, total energy for two Fe atoms for antiferromagnetic calculation is:
- 4 core: -6373.574042773125
- 8 core: -6373.574042694958
this error occured in tests:
- gamma_only=1 + nspin=2
- gamma_only=0 + nspin=2
- gamma_only=1 + nspin=1
- gamma_only=0 + nspin=1
I tested the difference of first step Hamiltonian matrix element between 1core-result and 16core-result, both of them has 54*54 matrix.
I found most of them is same in precision 6, but if the matrix element is about to 0 or maybe it is supposed to be 0, digital error occured that :
1 core: (0.710086,0) (2.46566e-17,0) (-7.64671e-17,0) (1.30987e-16,0) (-9.77472e-17,0) (2.37608e-16,0) (4.23795e-18,0) (-5.60824e-17,0) (-2.00249e-16,0)
16 core: (0.710086,0) (1.94918e-17,0) (-2.60598e-17,0) (8.4085e-17,0) (-1.43063e-16,0) (-4.64799e-16,0) (-1.05793e-17,0) (-3.10474e-17,0) (-2.61976e-16,0)
Additional Context
This digital error is from grid integral calculation for local potential part.