I'm sorry, I should have answered before!
I think that your pseudocode is right. That is
what siesta does in order to obtain the position of the
Fermi level.
Best regards,
Eduardo
On 02/05/2008, at 20:03, David Strubbe wrote:
Ebrahim,
No I never received any response, but I recently examined the code
in fermid.F to find out what is going on. As far as I can tell,
SIESTA definitely puts the Fermi energy in the gap, but the position
inside the gap is not meaningful. The algorithm to find the Fermi
energy is like this in pseudocode:
E = (highest energy level + lowest energy level) / 2;
do
{
Q = sum of occupancies of energy levels less than E
if Q < Qtot : E = (E + highest energy level) / 2;
if Q > Qtot : E = (E + lowest energy level) / 2;
} while (Q != Qtot);
Fermi energy = E.
Anywhere in the gap, assuming the electronic temperature isn't very
high, will give the same Q. So where the Fermi level ends up is
just determined by where the highest and lowest energy bands are,
and hence which energy in the gap is tried first. There is no
physical meaning to the position of the Fermi energy within the gap
in SIESTA.
If I have misunderstood anything here, please correct me, developers.
David Strubbe
UC Berkeley
On Fri, May 2, 2008 at 2:31 AM, eb na <[EMAIL PROTECTED]> wrote:
Hi David,
I'm interested to know if you have got any answer to your question.
I have the same problem.
other codes like ABINIT put the Fermi energy simply at the valence
band edge but in Siesta it has a value within the gap!
I wounder how the DFT could give any information of the exact value
of the Fermi energy?
looking forward to hear from you
regards,
Ebrahim Nadimi
TU Chemnitz, Germany
David Strubbe <[EMAIL PROTECTED]> schrieb:
Hello all,
Can someone tell me how SIESTA determines the Fermi energy for a
system with a gap?
David Strubbe
UC Berkeley
Beginnen Sie den Tag mit den neuesten Nachrichten. Machen Sie Yahoo!
zu Ihrer Startseite!