mirror of
https://github.com/triqs/dft_tools
synced 2024-08-31 08:13:41 +02:00
65 lines
2.3 KiB
Plaintext
65 lines
2.3 KiB
Plaintext
|
|
Processing tools for PLOs generated by VASP.
|
|
|
|
The main purpose of this set of tools is to process raw data
|
|
generated by VASP and to convert data to the TRIQS format. The raw data
|
|
is read from files:
|
|
POSCAR (atomic positions)
|
|
EIGVAL (eignevalues)
|
|
PLOCAR (non-orthogonalized PLOs and Fermi-weights)
|
|
IBZKPT (k-points and tetrahedra)
|
|
|
|
An appropriate set of orthogonalized projectors is defined by
|
|
parameters defined in the config file (config-like syntax).
|
|
The config-file allows to define several groups of projectors.
|
|
|
|
|
|
Structure of PLOtools:
|
|
|
|
vaspio.py: reading of VASP-generated files
|
|
|
|
|
|
|
|
vaspio.py:
|
|
All VASP data are represented by objects which contain data read
|
|
from corresponding files. These objects will subsequently be used to
|
|
handle the data and convert it into a more functional internal representation.
|
|
|
|
|
|
Functions
|
|
|
|
read_lines(filename): generator yielding lines from a file <filename>
|
|
|
|
Classes:
|
|
Plocar: raw PLO data from PLOCAR file;
|
|
the data itself is read using an auxiliary C-routine 'read_plocar'
|
|
|
|
Poscar: structure data from POSCAR file
|
|
|
|
Kpoints: k-point data from IBZKPT file
|
|
note that k-point data is also contained in EIGENVAL file;
|
|
the two k-point sets will be checked for consistency.
|
|
|
|
Eigenval: Kohn-Sham eigenvalues as well as k-points with weights
|
|
|
|
Symmcar: symmetry operations stored by VASP into SYMMCAR file
|
|
|
|
|
|
ploortho.py (or projectors.py)
|
|
Set of routines for processing projectors. The functionality includes:
|
|
-- selecting a proper subset of non-orthogonalized projectors from the raw VASP input
|
|
-- transforming and orthogonalizing projectors
|
|
-- calculating DFT density matrix and local Hamiltonian
|
|
|
|
General design:
|
|
Input data: conf_pars (output of 'parse_input()'), VASP file descriptors (Eigenval, Plocar, etc.)
|
|
|
|
* A projector for a given k-point is described by class 'Projector'
|
|
PLOs project on a set or orbitals and a set of ions.
|
|
|
|
* Projector set is a container of 'Projector' objects.
|
|
Out of optimization purposes the projectors are stored in a multi-dimensional
|
|
array. A view in terms of Projector objects is, however, possible.
|
|
|
|
|