logo

Main menu

HomeNewsPeopleDownloadYambo-pyRun the codeInput fileTutorialsDocumentation
Main Features Lecture Notes FAQ
PublicationsEventsContactsTest-Suite Forum

The Wikipedia Page of Yambo Yambo@Wiki

Fortran cafe The Fortran Cafe'

Bethe-Salpeter wine The Bethe-Salpeter-Equation (BSE) wine

A street entitled to Yambo in Rome
A bar entitled to Yambo in Rome
A bar entitled to Yambo in Rome Yambo road, bar & restaurant

Brillouin Zone sampling

In this section, before to describe the Brillouin Zone sampling, some general basic concepts are given. For a complete description we refer the reader to many textbooks on solid state physics. If a material is periodic for translations within a Bravais Lattice it is possible to use periodic boundary conditions defining a unit cell and, thanks to the Bloch's theorem, label the eigenstates by an index of the band "n" and by a quantum wavevector "k" which lives in the "so called" First Brillouin zone (BZ). In general, a crystal admits point symmetries, besides the translation group T, in this case the full space group will contain also rotations and we can define the "space group" as

if the fractional translations are zero the group is said non-symmorphic, if not symmorphic, while only the rotational parts form the so-called point group G(R). Given a k in the First Brillouin Zone, from G(R) it is convenient to choose the symmetry elements which leave unchanged (modulo vectors of the reciprocal lattice) the vector k: (which form the so-called little group of vector k G(k)

Now if a rotation R of the space group is not in G(k) it will send k in a vector k' in the "so called" star of k. In this way it is possible to define the irreducible wedge of the BZ as the volume of the BZ which contains one and only one k-vector for each of the stars. Owing to the invariance of the hamiltonian with respect to the space group operations, we have:

and

Both the response function and the quasi-particle energies calculations require, in principle, to calculate integrals over the first Brillouin zone such as:

where q is the the transferred wave-vector. For practical reasons, they are numerically performed as sums on discrete set of k-points which has to reproduce a good average of the integral over the volume of the BZ.

Generally, as for ground-state calculations, sets of uniform spaced "special" k-points, which exploit the symmetry properties of the system (such as those generated following the prescription of Chadi-Cohen or Monkhorst and Pack ) are used. The convergence with respect to the k-points sampling must be checked carefully and in general denser meshs with respect to ground state calculations are required for dielectric function calculations. In order to reduce the computational effort, yambo, as most of the available ground-state codes, can use the symmetry properties of the energy bands and the Bloch wave functions, which are related to the symmetry of the studied system, following the main relations described above. In this case, only the wavefunctions and the eigenvalues for a set of k-points (and for the required number of bands) in the irreducible part of the BZ (IBZ) are enough. In such a way the sum can be broken into a sum on the k-points contained in the irreducible part of the BZ (IBZ) and a sum over a set of symmetry operations of the point group of the crystal which leave q unchanged (modulus a G-vector).

In yambo the number of k-points and the k-points coordinates are read from the input file s.db1 in internal units, which are cartesian coordinates but in units of 2*pi/alat. The variable IkXLim define the number of k-points used in a response function calculation. It can be a reduced mesh with respect to the number of k-points read in the input file s.db1. This is particularly useful if a GW correction in an high-simmetry point of the BZ is required. Infact a uniform k-point grid can be used for the response function calculation and a shifted mesh in such a way that at least the wished k-point is included can be added and used for self-energy calculations defining the variable IkSigLim.

References