Source code for aimstools.preparation.utilities

from aimstools.misc import *
from numpy import pi, sqrt


[docs]def monkhorstpack2kptdensity(atoms, k_grid): """Convert Monkhorst-Pack grid to k-point density. atoms (ase.atoms.Atoms): Atoms object. k_grid (list): [nx, ny, nz]. Returns: float: Smallest line-density. """ assert len(k_grid) == 3, "Size of k_grid is not 3." recipcell = atoms.cell.reciprocal() kd = [] for i in range(3): if atoms.pbc[i]: kptdensity = k_grid[i] / (2 * pi * sqrt((recipcell[i] ** 2).sum())) kd.append(kptdensity) return round(min(kd), 2)