Dear exciting experts,
I have developed an algorithm for analyzing band energies in order to extract quantum oscillation information such as frequencies and effective masses, as well as band electronic density of states (DOS) contributions — quantities that can be useful for comparing DFT calculations to experimental data. You can read about it in P.M.C. Rourke and S.R. Julian, Computer Physics Communications 183, 324 (2012) (also arXiv:0803.1895) and download the current code release, named SKEAF v1.1.0, from the Wien2k Unsupported software goodies page.
I initially developed this program for use with BXSF files generated using Wien2k + XCrysDen, but if possible I would like my code to work with other DFT packages as well!
While preparing my next release of the SKEAF program, I have been looking at compatibility with ELK and exciting, using calculations of the band energies of Cu as a test.
I found that BXSF files generated using ELK differ in 3 ways from the ones generated by Wien2k + XCrysDen that my program is expecting:
#1. the energies are specified on an incorrect Periodic Grid, rather than a General Grid
#2. reciprocal lattice vectors include the factor of 2*Pi
#3. energies in units of Hartrees, rather than Rydbergs
But these are all easy to fix, and once I have appropriately corrected the ELK Cu BXSF file, the ELK SKEAF results agree with those from Wien2k and with the experimental data for Cu.
I found that BXSF files generated using exciting helium-3 + xmlfermis2bxsf.xsl have the same 3 problems as ELK, but have some additional issues too:
#4. the sign (+ve/-ve relative to the 0 of the Fermi energy) of the band energies has been switched —> this swaps around hole and electron orbits
#5. band energies have been multiplied by a factor 10^(-minexp), where minexp changes from calculation to calculation
#6. another mysterious problem that I don't understand with the band energies that causes incorrect DOS and effective mass values to be obtained, but does not affect the obtained frequencies (see below, I need your help!)
Problem #4 is easy to fix and problem #5 can be fixed with some trial and error (need to guess at the value of minexp, since as far as I know it is not recorded by exciting anywhere). Then, for frequencies only, the exciting SKEAF results agree with the ELK/Wien2k/experimental ones.
Unfortunately, even after doing these corrections, the exciting Cu effective masses and DOS contribution do not agree with what I find using ELK & Wien2k — the exciting values are too big by roughly a factor of 1.5-2, indicating that the exciting band energies are too small by this factor. Furthermore, the disagreement factor varies from orbit to orbit (& the DOS), so it looks like this factor is not uniform in k-space (i.e. it is different for different band energies on the k-grid)… but despite this, it does not seem to affect the positions of the Fermi energy crossings.
I looked through the exciting code, but do not understand it well enough to see what might be causing this problem #6. I would be very thankful for any insights that the exciting community may have about this issue!
Note that I am a new user of exciting, so I may well have made a mistake in my test calculation. I have copied my Cu input.xml file below (links removed), and would appreciate learning of any errors on my part.
Thank you very much for your help,
<title>Cu</title> <structure speciespath="[removed]"> <crystal scale="3.4156815" > <basevect>1.0 1.0 0.0</basevect> <basevect>1.0 0.0 1.0</basevect> <basevect>0.0 1.0 1.0</basevect> </crystal> <species speciesfile="Cu.xml"> <atom coord="0.0 0.0 0.0" bfcmt="0.0 0.0 0.0"></atom> </species> </structure> <groundstate ngridk="28 28 28" mixer="msec"></groundstate> <properties> <fermisurfaceplot/> </properties>