Calculating the Schottky barrier: Difference between revisions
(Created page with "<syntaxhighlight lang="python"> from ase.build import bulk from ase.io import write # --- Aluminum (FCC) --- al = bulk('Al', 'fcc', a=4.05) write('POSCAR_Al', al, format='vasp') # --- Silicon (diamond structure) --- si = bulk('Si', 'diamond', a=5.43) write('POSCAR_Si', si, format='vasp') </syntaxhighlight>") |
No edit summary |
||
| Line 1: | Line 1: | ||
The Schottky barrier is the energy barrier that forms at a metal–semiconductor junction when the two materials are brought into contact and their Fermi levels align at equilibrium. Its height governs charge transport across the junction and is a critical parameter in the design of semiconductor contacts, transistors, and rectifying diodes. Two complementary quantities characterise the barrier: the p-type Schottky barrier height <math>\varphi_{\mathrm{p}}</math>, which describes the barrier seen by holes in the semiconductor valence band, and the n-type Schottky barrier height <math>\varphi_{\mathrm{n}}</math>, which describes the barrier seen by electrons in the conduction band. This page describes how to compute both quantities for the Al(111)/Si(111) interface using the ''potential alignment method'''''citation needed''' with {{VASP}} and [[py4vasp]]. | |||
The potential alignment method obtains the Schottky barrier heights by combining three quantities from bulk calculations — the metal Fermi energy <math>E_{\mathrm{F}}</math>, the semiconductor valence-band maximum <math>E_{\mathrm{VBM}}</math>, and the semiconductor band gap <math>E_{\mathrm{g}}</math> — with the macroscopic electrostatic potential difference <math>\Delta\bar{V}</math> across the interface, which is extracted from a separate interface slab calculation. In {{VASP}}, the <math>\mathbf{G}=0</math> Fourier component of the Hartree potential is set to zero by convention, so all single-particle eigenvalues are already referenced to the average electrostatic potential of their respective unit cell. As a consequence, <math>E_{\mathrm{F}}</math> and <math>E_{\mathrm{VBM}}</math> can be read directly from the bulk {{FILE|OUTCAR}} files without any further potential referencing, and only the interface calculation requires the electrostatic potential written to {{FILE|LOCPOT}}. | |||
== Step-by-step instructions == | |||
{{NB|mind|Steps 1 and 2 are fully independent and can be submitted simultaneously.}} | |||
'''Step 1:''' Compute the Fermi energy of the metal using bulk Al. | |||
=== Step 1a: Geometry optimization of bulk Al === | |||
''(INCAR settings and expected output to be added.)'' | |||
=== Step 1b: Static calculation of bulk Al === | |||
''(INCAR settings and py4vasp snippet to extract <math>E_{\mathrm{F}}</math> to be added.)'' | |||
'''Step 2:''' Compute the band gap and valence-band maximum of the semiconductor using bulk Si. | |||
=== Step 2a: Geometry optimization of bulk Si === | |||
''(INCAR settings and expected output to be added.)'' | |||
=== Step 2b: Band-structure calculation of bulk Si with HSE06 === | |||
The band gap and valence-band maximum of Si are computed with the HSE06 hybrid functional, which yields an accurate band gap compared to the experimental value. This requires a hybrid band-structure calculation; follow the procedure described in [[Band-structure calculation using hybrid functionals]] to set up the {{FILE|KPOINTS}} file and the relevant {{FILE|INCAR}} tags. | |||
''(INCAR settings and py4vasp snippet to extract <math>E_{\mathrm{g}}</math> and <math>E_{\mathrm{VBM}}</math> to be added.)'' | |||
'''Step 3:''' Build the Al(111)/Si(111) interface structure. | |||
Building a lattice-matched metal–semiconductor interface slab is outside the scope of this page. Tools such as the <tt>CoherentInterfaceBuilder</tt> in [[pymatgen]]'''citation needed''' and the interface construction utilities in [[ASE]]'''citation needed''' can be used to generate suitable interface geometries. The target interface used here consists of 13 Al(111) layers and 12 Si(111) layers (6 bilayers), with a lattice mismatch of 0.9% and an initial interface gap of 4.6 Å. All atomic layers except the two Al layers and the two Si layers immediately adjacent to the interface are fixed (selective dynamics) to reduce computational cost while capturing interfacial relaxation. A pre-optimized {{FILE|POSCAR}} for this interface will be provided here; readers starting from that file may proceed directly to Step 5. | |||
'''Step 4:''' Relax the interface. | |||
''(INCAR settings, selective dynamics POSCAR snippet, and instructions to copy {{FILE|CONTCAR}} to {{FILE|POSCAR}} for the next step to be added.)'' | |||
'''Step 5:''' Compute the electrostatic potential of the interface. | |||
To extract the potential alignment, a static calculation is performed on the relaxed interface with {{TAG|LVHAR}} = .TRUE., which writes the ionic and Hartree contributions to the electrostatic potential to the {{FILE|LOCPOT}} file. Note that {{TAG|LVHAR}} = .TRUE. and {{TAG|LVTOT}} = .TRUE. write different quantities to {{FILE|LOCPOT}}: {{TAG|LVTOT}} includes the exchange-correlation contribution, while {{TAG|LVHAR}} does not. For potential alignment, only the electrostatic (ionic + Hartree) part is required, so {{TAG|LVHAR}} = .TRUE. is the correct choice. | |||
''(Full INCAR settings to be added.)'' | |||
'''Step 6:''' Extract <math>\Delta\bar{V}</math> from the electrostatic potential. | |||
''(py4vasp script using <tt>calculation.potential</tt> for planar and macroscopic averaging along the interface normal, figure of the macroscopic average potential, and procedure for reading <math>\Delta\bar{V}</math> from the flat bulk-like regions on each side to be added.)'' | |||
'''Step 7:''' Compute the Schottky barrier height. | |||
With <math>E_{\mathrm{F}}</math>, <math>E_{\mathrm{VBM}}</math>, <math>E_{\mathrm{g}}</math>, and <math>\Delta\bar{V}</math> in hand, the potential alignment difference <math>\Delta\bar{V} = \bar{V}_{\mathrm{m}} - \bar{V}_{\mathrm{sc}}</math> (positive if the metal side has the higher average potential) connects the bulk reference frames. The p-type and n-type Schottky barrier heights are then | |||
::<math> | |||
\varphi_{\mathrm{p}} = \Delta\bar{V} + E_{\mathrm{F}} - E_{\mathrm{VBM}}, | |||
</math> | |||
::<math> | |||
\varphi_{\mathrm{n}} = E_{\mathrm{g}} - \varphi_{\mathrm{p}}. | |||
</math> | |||
''(py4vasp script that loads all three calculations, assembles the four input quantities, and evaluates the two equations above to be added. Worked numerical example with the Al/Si values to be added.)'' | |||
== Recommendations and advice == | |||
''(To be added.)'' | |||
== Related tags and articles == | |||
''(To be added.)'' | |||
== References == | |||
<references/> | |||
[[Category:Electronic structure]][[Category:Howto]] | |||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
from ase.build import bulk | from ase.build import bulk | ||
Revision as of 10:44, 19 March 2026
The Schottky barrier is the energy barrier that forms at a metal–semiconductor junction when the two materials are brought into contact and their Fermi levels align at equilibrium. Its height governs charge transport across the junction and is a critical parameter in the design of semiconductor contacts, transistors, and rectifying diodes. Two complementary quantities characterise the barrier: the p-type Schottky barrier height [math]\displaystyle{ \varphi_{\mathrm{p}} }[/math], which describes the barrier seen by holes in the semiconductor valence band, and the n-type Schottky barrier height [math]\displaystyle{ \varphi_{\mathrm{n}} }[/math], which describes the barrier seen by electrons in the conduction band. This page describes how to compute both quantities for the Al(111)/Si(111) interface using the potential alignment methodcitation needed with VASP and py4vasp.
The potential alignment method obtains the Schottky barrier heights by combining three quantities from bulk calculations — the metal Fermi energy [math]\displaystyle{ E_{\mathrm{F}} }[/math], the semiconductor valence-band maximum [math]\displaystyle{ E_{\mathrm{VBM}} }[/math], and the semiconductor band gap [math]\displaystyle{ E_{\mathrm{g}} }[/math] — with the macroscopic electrostatic potential difference [math]\displaystyle{ \Delta\bar{V} }[/math] across the interface, which is extracted from a separate interface slab calculation. In VASP, the [math]\displaystyle{ \mathbf{G}=0 }[/math] Fourier component of the Hartree potential is set to zero by convention, so all single-particle eigenvalues are already referenced to the average electrostatic potential of their respective unit cell. As a consequence, [math]\displaystyle{ E_{\mathrm{F}} }[/math] and [math]\displaystyle{ E_{\mathrm{VBM}} }[/math] can be read directly from the bulk OUTCAR files without any further potential referencing, and only the interface calculation requires the electrostatic potential written to LOCPOT.
Step-by-step instructions
| Mind: Steps 1 and 2 are fully independent and can be submitted simultaneously. |
Step 1: Compute the Fermi energy of the metal using bulk Al.
Step 1a: Geometry optimization of bulk Al
(INCAR settings and expected output to be added.)
Step 1b: Static calculation of bulk Al
(INCAR settings and py4vasp snippet to extract [math]\displaystyle{ E_{\mathrm{F}} }[/math] to be added.)
Step 2: Compute the band gap and valence-band maximum of the semiconductor using bulk Si.
Step 2a: Geometry optimization of bulk Si
(INCAR settings and expected output to be added.)
Step 2b: Band-structure calculation of bulk Si with HSE06
The band gap and valence-band maximum of Si are computed with the HSE06 hybrid functional, which yields an accurate band gap compared to the experimental value. This requires a hybrid band-structure calculation; follow the procedure described in Band-structure calculation using hybrid functionals to set up the KPOINTS file and the relevant INCAR tags.
(INCAR settings and py4vasp snippet to extract [math]\displaystyle{ E_{\mathrm{g}} }[/math] and [math]\displaystyle{ E_{\mathrm{VBM}} }[/math] to be added.)
Step 3: Build the Al(111)/Si(111) interface structure.
Building a lattice-matched metal–semiconductor interface slab is outside the scope of this page. Tools such as the CoherentInterfaceBuilder in pymatgencitation needed and the interface construction utilities in ASEcitation needed can be used to generate suitable interface geometries. The target interface used here consists of 13 Al(111) layers and 12 Si(111) layers (6 bilayers), with a lattice mismatch of 0.9% and an initial interface gap of 4.6 Å. All atomic layers except the two Al layers and the two Si layers immediately adjacent to the interface are fixed (selective dynamics) to reduce computational cost while capturing interfacial relaxation. A pre-optimized POSCAR for this interface will be provided here; readers starting from that file may proceed directly to Step 5.
Step 4: Relax the interface.
(INCAR settings, selective dynamics POSCAR snippet, and instructions to copy CONTCAR to POSCAR for the next step to be added.)
Step 5: Compute the electrostatic potential of the interface.
To extract the potential alignment, a static calculation is performed on the relaxed interface with LVHAR = .TRUE., which writes the ionic and Hartree contributions to the electrostatic potential to the LOCPOT file. Note that LVHAR = .TRUE. and LVTOT = .TRUE. write different quantities to LOCPOT: LVTOT includes the exchange-correlation contribution, while LVHAR does not. For potential alignment, only the electrostatic (ionic + Hartree) part is required, so LVHAR = .TRUE. is the correct choice.
(Full INCAR settings to be added.)
Step 6: Extract [math]\displaystyle{ \Delta\bar{V} }[/math] from the electrostatic potential.
(py4vasp script using calculation.potential for planar and macroscopic averaging along the interface normal, figure of the macroscopic average potential, and procedure for reading [math]\displaystyle{ \Delta\bar{V} }[/math] from the flat bulk-like regions on each side to be added.)
Step 7: Compute the Schottky barrier height.
With [math]\displaystyle{ E_{\mathrm{F}} }[/math], [math]\displaystyle{ E_{\mathrm{VBM}} }[/math], [math]\displaystyle{ E_{\mathrm{g}} }[/math], and [math]\displaystyle{ \Delta\bar{V} }[/math] in hand, the potential alignment difference [math]\displaystyle{ \Delta\bar{V} = \bar{V}_{\mathrm{m}} - \bar{V}_{\mathrm{sc}} }[/math] (positive if the metal side has the higher average potential) connects the bulk reference frames. The p-type and n-type Schottky barrier heights are then
- [math]\displaystyle{ \varphi_{\mathrm{p}} = \Delta\bar{V} + E_{\mathrm{F}} - E_{\mathrm{VBM}}, }[/math]
- [math]\displaystyle{ \varphi_{\mathrm{n}} = E_{\mathrm{g}} - \varphi_{\mathrm{p}}. }[/math]
(py4vasp script that loads all three calculations, assembles the four input quantities, and evaluates the two equations above to be added. Worked numerical example with the Al/Si values to be added.)
Recommendations and advice
(To be added.)
Related tags and articles
(To be added.)
References
from ase.build import bulk
from ase.io import write
# --- Aluminum (FCC) ---
al = bulk('Al', 'fcc', a=4.05)
write('POSCAR_Al', al, format='vasp')
# --- Silicon (diamond structure) ---
si = bulk('Si', 'diamond', a=5.43)
write('POSCAR_Si', si, format='vasp')