Partial density of states¶
- class rhodent.pdos.PDOSCalculator(voronoi, energies, sigma, gpw_file=None, zerofermi=False)[source]¶
PDOS calculator
- Parameters:
voronoi (
VoronoiWeights
) – Voronoi weights objectenergies (
list
[float
] |ndarray
[Any
,dtype
[float64
]]) – Array of energies (in eV) for which the broadened PDOS is computedsigma (
float
) – Gaussian broadening width in eVgpw_file (
Optional
[str
]) – Filename of GPAW ground state filezerofermi (
bool
) – Eigenvalues relative to Fermi level ifTrue
, else relative to vacuum
- icalculate()[source]¶
Read eigenvalues and wave functions from ground state and calculate broadened PDOS.
The PDOS is projected on each group of atoms in
atom_projections
. Calculates Voronoi weights from ground state file using LCAO basis function overlaps and PAW corrections,\[W_{nn'} = \left<\psi_n|\hat{w}|\psi_{n'}\right> = \int w(\vec{r}) \psi_n^*(\vec{r}) \psi_{n'}(\vec{r}) d\vec{r}\]where the operator \(\hat{w} = w(\vec{r})\) is 1 in the Voronoi region of the atomic projections and 0 outside.
- Parameters:
voronoi – Voronoi weights calculator/reader
sigma – Gaussian broadening width in eV
- Yields:
Once per atom group in
atom_projections
a dictionary with keys –weight_n
- Array of dimensions(Nn)
of projections.None
on non-root ranks.pdos_e
- Broadened PDOS.None
on non-root ranks.
- Return type:
Generator
[dict
[str
,ndarray
[Any
,dtype
[float64
]] |None
],None
,None
]
- property log: Logger¶
Logger
- property sigma: float¶
Gaussian broadening width in eV.
- property voronoi: VoronoiWeights¶
Voronoi weights object