ColdSmearing¶
- class ColdSmearing(broadening)¶
- Parameters:
broadening (PhysicalQuantity of type energy or temperature) – The broadening of the distribution.
- broadening()¶
- Returns:
The broadening of the distribution.
- Return type:
PhysicalQuantity of type energy
Usage Examples¶
Use the cold smearing occupation function with a broadening of 0.1 eV on an LCAOCalculator:
numerical_accuracy_parameters = NumericalAccuracyParameters(
occupation_method=ColdSmearing(0.1*eV))
calculator = LCAOCalculator(numerical_accuracy_parameters=numerical_accuracy_parameters)
Notes¶
Note
For comparison of different occupation methods and suggestions for which one to choose, see Occupation Methods.
In the cold smearing scheme [1] one replaces the delta function in the density of states by the function:
The integer occupation numbers are then replaced by fractional occupations determined by the distribution
where \(x_i = \frac{\epsilon_i - \mu}{\sigma}\) with \(\sigma\) the broadening. In this context the generalized entropy becomes
with \(x_i = \frac{\epsilon_i - \mu}{\sigma}\).
Like in the Methfessel-Paxton scheme (see MethfesselPaxton
)
the benefit of the cold smearing scheme is that contributions to the
free energy from the broadening, lower than second order, are
eliminated. Therefore, the total energy and forces are quite close to
the real (zero temperature) value even for large values of the broadening
parameter. Compared to the Methfessel-Paxton scheme, cold smearing has
the additional benefit that negative occupations can not
occur.
It is possible to extrapolate the total energy to zero broadening by including the term