Well this was a very tricky bug to find...and in fact the bug is in the IOTK library, not in yambo.
The error started in versions later than 3, when we introduced a check of the pseudopotential files to make sure that norm conserving ones were used, and not ultrasoft, so the .UPF files are now being scanned with the IOTK library.
In Feffe's case he had two files:
Code: Select all
H.pz-vbc.UPF
<PP_INFO>
Generated using ld1 code
Author: P. Giannozzi Generation date: 1990
Info: H LDA 1s1 VonBarth-Car local
...
Si.pz-vbc.UPF
<PP_INFO>
Generated using unknown code
Author: von Barth and Car Generation date: < 1984
Info: Si LDA 3s2 3p2 VonBarth-Car, l=2 local
The scan of the H file works fine, the scan of the Si file gives an error: this is due to libiotk getting confused by the "<" in "date: < 1984" !!!
Since none of my efforts to get around this using the IOTK routines worked, I suggest just erase the "<" in the PP_INFO section of your pseudopotentials. Of course this is not read, so it is harmless. The problem is also just limited to that particular file...or files with such a " <" character in the PP_INFO.
Phew!
Conor