mirror of
https://github.com/triqs/dft_tools
synced 2024-12-22 04:13:47 +01:00
Added preliminary parser description to the docs
This is a description of the preliminary design for the parser of PROJCAR/LOCPROJ files output by VASP.
This commit is contained in:
parent
8064c9604d
commit
aa39c37d8b
@ -3,7 +3,27 @@
|
||||
VASP input-output
|
||||
#################
|
||||
|
||||
The following VASP are used by PLOtools:
|
||||
* PLOCAR: raw projectors generated by VASP-PLO interface
|
||||
* EIGENVAL: Kohn-Sham eigenvalues as well as `k`-points with weights
|
||||
The following VASP files are used by PLOtools:
|
||||
* PROJCAR, LOCPROJ: raw projectors generated by VASP-PLO interface (VASP version >= 5.4.1)
|
||||
* EIGENVAL: Kohn-Sham eigenvalues as well as `k`-points with weights and Fermi weights
|
||||
* IBZKPT: `k`-point data (:math:`\Gamma`)
|
||||
* POSCAR: crystal structure data
|
||||
|
||||
Starting from version 5.4.1 VASP now supports an official output of various types of
|
||||
projectors that are requested in INCAR by specifying a set of sites, orbitals and types
|
||||
of projectors. The calculated projectors are output into files **PROJCAR** and **LOCPROJ**.
|
||||
The difference between these two files is that **LOCPROJ** contains raw matrices without
|
||||
any reference to sites/orbitals, while **PROJCAR** is more detailed on that.
|
||||
In particular, the information that can be obtained for each projector from **PROJCAR** is the following:
|
||||
|
||||
* site (and species) index
|
||||
* for each `k`-point and band: a set of complex numbers for labeled orbitals
|
||||
|
||||
At the same time, **LOCPROJ** contains the total number of projectors (as well as the
|
||||
number of `k`-points, bands, and spin channels) in the first line,
|
||||
which can be used to allocate the arrays before parsing.
|
||||
|
||||
To enhance the performance of the parser, it is implemented in plain C. The idea is
|
||||
that the python part of the parser first reads the first line of **LOCPROJ** and
|
||||
then calls the C-routine with necessary parameters to parse **PROJCAR**.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user