Later versions of Elk produce dramatically different results. Is this a feature or a bug?
As you can see the initial release (1.0.0) appears to work fine and in fact matches Wien2k very well. The 1.0.0 results are also consistent with Exciting. Subsequent versions of Elk appear broken. All data were generated using the exact same input file, where _LATTICECONSTANT_ was set using a script.
Thanks for all the careful testing and the encouraging remarks! Apologies also for the delay in replying.
I can reproduce your data, and there is indeed a problem which was introduced in version 1.0.16. This was when we truncated the effective potential in G-space, ironically to improve stability (see 'genveffig.f90'). I've now restored the original routine in version 1.3.2, and the problem is fixed:
(I think the offset is due to the different method of calculating the exchange-correlation potential: natively the PBE routine returns the potential directly, whereas libxc requires a second step using integration by parts)
You may need to increase 'gmaxvr' to get the the code to converge for all lattice parameters.
Thanks again,
Kay.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Later versions of Elk produce dramatically different results. Is this a feature or a bug?
As you can see the initial release (1.0.0) appears to work fine and in fact matches Wien2k very well. The 1.0.0 results are also consistent with Exciting. Subsequent versions of Elk appear broken. All data were generated using the exact same input file, where _LATTICECONSTANT_ was set using a script.
By the way, LDA functionals seem to work fine, but PBE functionals I have tried (built-in as well as libxc, which is shown in the plot) do not.
I have not received any response from the user forum, and since this looks like a bug, I thought I would try the developer forum.
Thanks for the help and keep up the good work.
Greg
Dear Greg,
Thanks for all the careful testing and the encouraging remarks! Apologies also for the delay in replying.
I can reproduce your data, and there is indeed a problem which was introduced in version 1.0.16. This was when we truncated the effective potential in G-space, ironically to improve stability (see 'genveffig.f90'). I've now restored the original routine in version 1.3.2, and the problem is fixed:

(I think the offset is due to the different method of calculating the exchange-correlation potential: natively the PBE routine returns the potential directly, whereas libxc requires a second step using integration by parts)
You may need to increase 'gmaxvr' to get the the code to converge for all lattice parameters.
Thanks again,
Kay.