Electron gases¶
An electron gas contains interacting electrons in some geometry with a constant compensating positive charge.
Uniform electron gas¶
ueg {
-- options,
}
- Returns:
- a system object.
ueg
creates a system object for the (conventional) electron gas:
(including an appropriate uniform background potential to counteract the charge), using a single-particle basis of plane waves, \(\psi_{\bf k} = e^{i {\bf k}.{\bf r}}\).
Options¶
sys
type: system object produced by a previous call.
Optional.
If provided, a previously created system object is updated with the new settings supplied, otherwise a new system object is created.
electrons
type: integer.
Required.
Number of electrons in the unit cell.
ms
type: integer.
Required.
Set the spin polarisation of the system in units of electron spin (i.e. a single electron can take values 1 or -1).
sym
type: integer or string.
Optional. Default:
aufbau
.Set the symmetry (i.e. crystal momentum) of the system if a reference determinant is not provided. This can be set to:
- An integer specifying the index of a specific wavevector; see the output produced by creating a system for possible values and their corresponding wavevectors.
aufbau
. Uses the symmetry of a determinant selected using the Aufbau principle.tot_sym
. Uses the totally symmetric representation, whatever its index may be.
rs
type: float.
Optional. Default: 1.
Set the density, \(r_s\), of the UEG.
cutoff
type: float.
Optional. Default: 3.
Set the maximum kinetic energy of the orbitals included in the basis set.
Note that this is in scaled units of \((2\pi/L)^2\), where \(L\) is the dimension of simulation cell defined by electrons and rs and is compared to the kinetic energy of each plane-wave without the twist angle included. In this way the cutoff can be kept constant whilst the twist is varied and the basis set used will remain consistent.
dim
type: integer.
Optional. Default: 3.
Set the dimension of the electron gas. 2- and 3-dimensional gases are implemented.
twist
type: \(N\)-dimensional vector
Optional. Default: 0 in each dimension.
Apply a twist to the wavevector grid. The twist is an ndim-dimensional vector in terms of the reciprocal lattice vectors. The twist angle is chosen to be within the primitive reciprocal cell, and hence the components should be between -0.5 and +0.5.
verbose
type: boolean.
Optional. Default: true.
Print out the single-particle basis set.
Ringium¶
ringium {
-- options,
}
- Returns:
- a system object.
Ringium [Loos13], is a 1D system of electrons confined to a ring of radius \(R\):
where \(r_{ij} = R\sqrt{2-2\cos(\theta_i-\theta_j)}\), using a single-particle basis of functions \(\psi_n = e^{i n \theta}\). As it is 1D, the different spin polarisations are degenerate, so without loss of generality all electrons are forced to be spin up.
Options¶
sys
type: system object produced by a previous call.
Optional.
If provided, a previously created system object is updated with the new settings supplied, otherwise a new system object is created.
electrons
type: integer
Required.
Number of electrons in the system.
radius
type: float
Required.
The radius of the ring.
maxlz
type: integer
Required.
The maximum angular momentum of the orbitals used in the basis set.
Note that this is in units of \(\frac{\hbar}{2}\) and must have opposite parity to the number of electrons.
verbose
type: boolean.
Optional. Default: true.
Print out the single-particle basis set.