BZ energy RIM analyzer (ypp -r)
|bzrim||#||BZ energy RIM analyzer|
|BZ_RIM_path= "."||#||Path to the SAVE folder with the RIM DB1|
|BZ_RIM_Nk=0||#||BZ Random Integration points|
|cooOut= "rlu" || || || ||Points coordinates (output) cc/rlu/iku/alat|
|K-points units |
|cc|| Cartesian coordinates|
|rlu|| reduced lattice coordinates or crystal coordinates|
|alat|| Cartesian coordinates in units of the lattice parameter "a"|
|iku|| integer reduced lattice units (internal Yambo units)|
Example: How to speed-up dielectric constant convergence using E-RIM
Here we show how to use E-RIM approach to speed-up the calculation of dielectric constants,
for more details see Andrea Marini thesis
at page 67.
- Start with a small grid, for example 2x2x2, not enough to get a converged epsilon in bulk Silicon
- Use ypp -r to generate random k-points in the Brillouin zone, for example generate 2000 points by setting BZ_RIM_Nk=2000
- Give the list of k-points to ABINIT (or PWSCF) and calculate the wave-functions on these points.
Notice that the bands that make difficult the convergence of dielectric constant are the ones close to the gap
so for example if in your regular sampling (2x2x2 in our case) you used 30 bands, for the random k-points it is
sufficient to calculate only the first 10 bands for each k-point (Silicon has 4 valence, so 6 conductions are enough).
- Read the energies without the wave-functions a2y -w (or p2y -w )
- Create the E-RIM database: go in the folder of point 1) make ypp -r, and set the path to the SAVE folder relatively to the
calculation of the electronic bands over the random k-points BZ_RIM_path= "/scratch/Silicon/randomk."
- ypp will read the random k-points and divide them according to their distance from the points on the regular grid (2x2x2),
it will print also the minum and maximum number of random k-point for each point of the grid
<---> :: BZ blocks filling : 10 23
and create the database SAVE/ndb.E_RIM.
- calculate again the dielectric constant, using the E-RIM to average the denominators, this time the dielectric constant will converges very very fast, and you will find in the file o.eps_q1_inv_rpa_dyson a line like
Probably the 2x2x2 grid is not enought even with E-RIM, but this example gives you and idea of E-RIM works. Moreover
other properties that depend from the integral of ε(q,ω), as G0W0 corrections, will converge even faster.
# BZ Energy RIM points : 2008
that indicates the average on the random k-points.
The same approach works also for the Bethe-Salpeter equation
using the inversion solver -y i
, see also " Speeding up the solution of the Bethe-Salpeter equation by a double-grid method and Wannier interpolation "
Notice that the calculation becomes slower, because for each k-point
the Green's functions are averaged on the random k-points, see also http://www.yambo-code.org/doc/../theory/docs/doc_Xd.php
and the PhD thesis of A. Marini.