Dear Cheng, xspectra can handle metal systems: see for example PHYSICAL REVIEW B 80, 075102 (2009) fig.3.
The Fermi level is taken as the zero of the spectrum, and might be used to cut and remove the spectrum below E_F. By editing the value of ef_r in input you should obtain the same spectrum, only shifted at different energies. What is the Fermi level for your insulator? Notice, it will depend on the choice of occupation functions. So, probably xspectra was giving you the HOMO, while if you set smearing with gaussian functions you will get something close to (HOMO+LUMO)/2 (depending on occupied/empty DOSs). Indeed your E_F in this case is higher. In principle, for systems at T=0, anything in between the HOMO and the LUMO is reasonable. The resulting spectrum will not change but for the reference energy, it suffices that you do things consistently. Hope this helps, Guido On 06/26/2012 03:25 PM, ??? wrote: > Dear all, > I have installed QE5.0 with xpectra installed. > I just tested the diamond example and it runs through. > In this example, the diamond is treated as insulator.(Of course!) > In the second step, xspectra.x can get the Fermi level of 0.94038144 > Ry (12.8 eV). > If I set the system as metal with occupation "smearing", the > xspectra.x will complained when I try to get the Fermi level. > The error message is as below: > Metallic case > > > > %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > from input : error # 1 > Read fermi level from scf/nscf output > > %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > > stopping ... > > But the Fermi level printed in the scf output file is 15.88 eV. > My first question is why the two fermi level value are different so much. > Second question is whether xspectra.x can calculate the XAS for metalic > system? > Thank you in advance. > Best, > -- Guido Fratesi Dipartimento di Scienza dei Materiali Universita` degli Studi di Milano-Bicocca via Cozzi 53, 20125 Milano, Italy
