These are options for the k-point grid used in the SCF cycle. For other specialized grids, see the Macroscopic Polarization and Density of States sections.
Use: If it is zero, only the gamma point is used. The resulting k-grid is chosen in an optimal way, according to the method of Moreno and Soler (using an effective supercell which is as spherical as possible, thus minimizing the number of k-points for a given precision). The grid is displaced for even numbers of effective mesh divisions. This parameter is not used if kgrid_Monkhorst_Pack is specified. If the unit cell changes during the calculation (for example, in a cell-optimization run, the k-point grid will change accordingly (see ChangeKgridInMD for the case of variable-cell molecular-dynamics runs, such as Parrinello-Rahman). This is analogous to the changes in the real-space grid, whose fineness is specified by an energy cutoff. If sudden changes in the number of k-points are not desired, then the Monkhorst-Pack data block should be used instead. In this case there will be an implicit change in the quality of the sampling as the cell changes. Both methods should be equivalent for a well-converged sampling.
Default value: 0.0 Bohr
%block kgrid_Monkhorst_Pack
Mk(1,1) Mk(2,1) Mk(3,1) dk(1)
Mk(1,2) Mk(2,2) Mk(3,2) dk(2)
Mk(1,3) Mk(2,3) Mk(3,3) dk(3)
%endblock kgrid_Monkhorst_Pack
where Mk(j,i) are integers and dk(i) are usually
either 0.0 or 0.5 (the program will warn the user if the displacements
chosen are not optimal).
The k-grid supercell is defined from Mk
as in block SuperCell above, i.e.:
.
Note again that the matrix indexes are inverted: each input line
gives the decomposition of a supercell vector in terms of the unit
cell vectors.
Use: Used only if SolutionMethod = diagon.
The k-grid supercell is compatible and unrelated
(except for the default value, see below)
with the SuperCell specifier. Both supercells are given in
terms of the CELL specified by the LatticeVectors block.
If Mk is the identity matrix and dk
is zero, only the
point of the unit cell is used.
Overrides kgrid_cutoff
Default value:
point of the (super)cell.
(Default used only when kgrid_cutoff is not defined).
If .true., the k-point grid is recomputed at every iteration during MD runs that potentially change the unit cell: Parrinello-Rahman, Nose-Parrinello-Rahman, and Anneal. Regardless of the setting of this flag, the k-point grid is always updated at every iteration of a variable-cell optimization and after each step in a ``siesta-as-server'' run.
Default value: .false. for historical reasons. The rationale was to avoid sudden jumps in some properties when the sampling changes, but if the calculation is well-converged there should be no problems if the update is enabled.