Drude term and non-metal

Deals with issues related to computation of optical spectra in reciprocal space: RPA, TDDFT, local field effects.

Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan

Post Reply
hongtang2023
Posts: 45
Joined: Thu Mar 16, 2023 7:02 am

Drude term and non-metal

Post by hongtang2023 » Sat Dec 09, 2023 8:58 am

Dear Yambo team,

I know it sounds wired that for a gapped system (non-metal) one tries to include a Drude term.
Since it shows " [WARNING] System is not a metal. Drude term not included " .

However, can I force to include a Drude term for a small gap system ?

Or Can I just change the Fermi level to the conduction bands in the Yambo code input? by using filling or occupation factors? If so, please let me what tags I need to look at?


Thanks very much!


Best,
Hong
Dr. Hong Tang
Tulane University
New Orleans, LA
70118, USA

hongtang2023
Posts: 45
Joined: Thu Mar 16, 2023 7:02 am

Re: Drude term and non-metal

Post by hongtang2023 » Sun Dec 10, 2023 8:56 pm

Dear Yambo team,

I am studying this topic by myself.

1. Can I use " Nelectro " tag to raise the Fermi level of a semiconductor to mimic the electron doping effect to this semiconductor? Say if my semiconductor system has 18 valence electrons neutrally, then I set Nelectro=18.5 to mimic adding 0.5 electrons in the supercell. Is this OK?
If I do this, Yambo will ignore the occupation or filling status from the quantum espresso results, and Yambo will recalculate the occupation or filling for those bands affected, is this correct?

2. If I do so, how about the tag "ElecTemp " ? Is "ElecTemp" only for the occupation or filling around the Fermi level? If I set both ElecTemp and Nelectro, then Yambo will first raise the Fermilevel and then calculates the occupation or filling for those states just around the new Fermi level. Is this correct?


3. How about tag "BoseTemp"? Is it for phonon system? If I set "ElecTemp ", then BoseTemp = ElecTemp by default, right? What is the case I can set BoseTemp is not equal to ElecTemp? Nonequilibrium case?


Please help!

Best,
Hong
Dr. Hong Tang
Tulane University
New Orleans, LA
70118, USA

Giacomo Sesti
Posts: 1
Joined: Thu Dec 15, 2022 10:54 am

Re: Drude term and non-metal

Post by Giacomo Sesti » Mon Dec 11, 2023 10:45 am

Dear Hong,

The yambo code activates the Drude term when its associated frequency appears in the input. In particular, you have to define a Drude frequency and its damping (usually the default for the damping is 0.1 eV). Please note that the variable name changes depending on which calculation you want to perform.

In case in which you want to include the Drude term in the X matrix, you have to use the variable:

Code: Select all

DrudeWXd=( 0.000000 , 0.000000 )  eV
There type in first the Drude frequency and then the damping
Instead, if you want to include the Drude term in the BSE choose

Code: Select all

DrudeWBS=( 0.000000 , 0.000000 )  eV
Same usage as above

If you need the Drude term both in the X matrix and in the BSE, use both the variables. You can find a bit more about these variables at https://www.yambo-code.eu/wiki/index.php/Variables page

Concerning the occupation, it works as you have written out.
The " Nelectro " variable, indeed, controls the number of electron in the supercell
While the "ElecTemp " variable computes the occupations using the Fermi-Dirac distribution and determines the Fermi level. Default temperature is 25 meV.

In any case, Yambo usually recalculates the occupations when not reading dft ones.
The variable "BoseTemp" does indeed control the bosonic temperature, so yes even phonons. By default, it is the same as "ElecTemp " however you can freely change it in the input file.

Cheers,
Giacomo

Post Reply