Fillings input documentation
Initialize occupation factor (smearing) scheme.
Used to initialize class qimpy.electrons.Fillings
.
YAML template:
charge: 0.0 # Net charge of electrons + ions in e units. smearing: gauss # Smearing method for setting electron occupations. sigma: 0.002 # Width of the smearing function in Hartrees. kT: null # Specify temperature instead of sigma for Fermi smearing. mu: nan # Electron chemical potential in Hartrees. mu-constrain: no # Whether to hold chemical potential fixed to mu. B: 0.0 # External magnetic field (only for spin-polarized modes). M: 0.0 # Total magnetization (only for spin-polarized modes). M-constrain: no # Whether to hold magnetization fixed to M. n-bands: null # Specify number of bands or scheme to determine it. n-bands-extra: null # Number of extra bands retained by diagonalizers.
Parameters:
charge
Type: float, Default: 0.0
Net charge of electrons + ions in e units. This determines n_electrons = ions.Z_tot - charge.
smearing
Type: string, Default: gauss
Smearing method for setting electron occupations. Here ‘gauss’, ‘fermi’, ‘cold’, ‘mp1’ select Gaussian, Fermi-Dirac, Cold and first order Methfessel-Paxton (MP1) smearing respectively. Use no (or null) to disable smearing and keep the electron occupations fixed at their initial values.
sigma
Type: float, Default: 0.002
Width of the smearing function in Hartrees. This sets Gaussian width \(\sigma\) in the Gaussian, Cold and M-P schemes, and \(2k_BT\) in the Fermi-Dirac scheme. Overridden if kT is specified.
kT
Type: float or null, Default: null
Specify temperature instead of sigma for Fermi smearing. This directly sets \(k_BT\) in Hartrees and corresponds to \(\sigma/2\) for the other Gaussian-based smearing schemes. Overrides sigma if specified.
mu
Type: float, Default: nan
Electron chemical potential in Hartrees. This serves as an initial guess (rarely needed) if mu_constrain is no, and otherwise, it is the required value to hold \(\mu\) fixed at.
mu-constrain
Type: bool, Default: no
Whether to hold chemical potential fixed to mu. If yes, perform grand-canonical electronic DFT. Note that this only takes effect when smearing is not null.
B
Type: float or list of float, Default: 0.0
External magnetic field (only for spin-polarized modes). Must be scalar for non-spinorial and 3-vector for spinorial modes. If M_constrain is yes, then this is only an initial guess as the magnetic field then becomes a Legendre multiplier to constrain M.
M
Type: float or list of float, Default: 0.0
Total magnetization (only for spin-polarized modes). Must be scalar for non-spinorial and 3-vector for spinorial modes. This magnetization is assigned to the initial occupations and it may change when smearing is present depending on M_constrain.
M-constrain
Type: bool, Default: no
Whether to hold magnetization fixed to M. This only matters when smearing is not null.
n-bands
Type: int or string or null, Default: null
Specify number of bands or scheme to determine it.
atomic: set to the number of atomic orbitals.
x<scale>: scale relative to the minimum number of bands to accommodate electrons (‘x1.5’ implies 1.5 x n_bands_min).
An integer explicitly sets the number of bands.
n-bands-extra
Type: int or string or null, Default: null
Number of extra bands retained by diagonalizers. This is necessary to converge any degenerate subspaces straddling n_bands. May be specified as:
x<scale>: scale relative to n_bands
An integer explicitly sets the number of extra bands