mirror of https://gitlab.com/QEF/q-e.git
77 lines
3.4 KiB
Plaintext
77 lines
3.4 KiB
Plaintext
|
|
This example shows how to calculate the Density of States (DOS) and
|
|
how to plot the Fermi Surface of Ni .
|
|
|
|
The calculation proceeds as follows (for the meaning of the cited input
|
|
variables see the appropriate INPUT_* file)
|
|
|
|
1) make a self-consistent calculation for Ni (like in example 1).
|
|
(input=ni.scf.in, output=ni.scf.out)
|
|
|
|
2) make a band structure calculation for Ni (input=ni.dos.in,
|
|
output=ni.dos.out) on a uniform k-point grid (automatically
|
|
generated). In this example the Fermi level is calculated with the
|
|
tetrahedra method (not in the actual band structure calculation but in
|
|
the subsequent DOS calculation). If preferred, a gaussian broadening
|
|
may be specified in this or in the subsequent step.
|
|
|
|
3) the program dos.x reads file filpun (ni.pun) and calculates the DOS on a
|
|
uniform grid of energies from Emin to Emax, with grid step Delta E.
|
|
The output DOS is in file ni.dos, ready for plotting.
|
|
|
|
4) the program projfwc.x projects the crystal wavefunctions on an
|
|
orthogonalized basis set of atomic orbitals, calculates the Loewdin
|
|
charges, spilling parameter, and the projected DOS (total DOS in file
|
|
'ni.pdos_tot', s and d component in files 'ni.pdos_atm#1(Ni)_wfc#1(s)'
|
|
and 'ni.pdos_atm#1(Ni)_wfc#2(d)' respectively). (input=ni.pdos.in,
|
|
output=ni.pdos.in)
|
|
|
|
5) Fermi Surface plot, courtesy of
|
|
Eyvaz Isaev
|
|
Theoretical Physics Department
|
|
Moscow State Institute of Steel and Alloys
|
|
(eyvaz_isaev@yahoo.com, e.isaev@misis.ru)
|
|
First, one generates a grid of k-points (all of them, not only those
|
|
in the Irreducible Brilloin Zone) using auxiliary code kvecs_FS.x
|
|
Then, the non-scf calculation is performed
|
|
Then, auxiliary code bands_FS.x collects the data and produces a
|
|
file ni.fs.bxsf that can be read by XCrySDen (www.xcrysden.org) as:
|
|
xcrysden --bxsf ni.fs.bxsf
|
|
Additional info for customization of the script:
|
|
#
|
|
# A user has to edit so-called "user part" in order to define some required
|
|
# parameters.
|
|
#
|
|
# Sysname - a nickname for your system
|
|
# Calc_Type - The Fermi Surface calculations (FS) or band-structure
|
|
# calculations (Band) which will be included later.
|
|
# Presently band-structure calculations could be carried out
|
|
# by means of plotband.x from PP (postprocessing) directory
|
|
# or a little package distributed by E.Isaev (posted to pw_forum).
|
|
# nabc - a number for dividing of each edge of a parallelepiped.
|
|
# Be careful, the total number of generated k-points is
|
|
# (na+1)*(nb+1)*(nc+1), i.e. including \Gamma-point.
|
|
# n_start - starting band's number for the Fermi Surface calculations.
|
|
# It is obvious, we have to deal with the bands crossing the
|
|
# Fermi level.
|
|
# n_last - last band's number for FS calculations
|
|
#
|
|
# That's all!!! Present values in the script (may be edited):
|
|
Sysname='ni'
|
|
Calc_Type='FS'
|
|
nabc=' 16 16 16 '
|
|
n_start=2
|
|
n_last=5
|
|
#
|
|
#
|
|
# Nota Bene : You can take more bands and then choose from a XCrySDen menu
|
|
# only those bands which cross the Fermi level
|
|
# Nota Bene : If you have mistaken choosing bands to be considered for the
|
|
# FS construction, you do not need to restart all calculations.
|
|
# Just edit "bands_FS" file and restart "bands_FS.x" manually.
|
|
# It will read Bands.out and result Bands.bxsf which you can
|
|
# rename as you like.
|
|
#
|
|
# Spin-polarized calculations are not allowed, but will be done soon.
|
|
|
|
|