Static and time-dependent codes
There are two main branches of codes:
- Static codes
st-wslda-?dfor solving self-consistently static DFT equations. - Time-dependent codes
td-wslda-?dfor solving time-dependent DFT equations. Thetd-wslda-?dcodes require a starting point for the time evolution (i.e.\psi(\vec{r},t=0)), which is typically generated by the static codes.
In code names, ? stands for dimensionality, as described below.
Codes dimensionality (xx: st or td)
3D codes: xx-wslda-3d
The 3D codes do not impose any restriction on the form of the wave functions. The wave functions are assumed to be:
\psi=\varphi(x,y,z)
2D codes: xx-wslda-2d
In 2D codes, the wave functions are assumed to be:
\psi=\varphi(x,y)\frac{1}{\sqrt{L_z}}e^{ik_z z}
where
k_z = 0, \pm 1 \frac{2\pi}{L_z}, \pm 2 \frac{2\pi}{L_z}, \ldots , +(N_z-1) \frac{2\pi}{L_z}
For NZ=1, the code solves a 2D problem (there is only one mode in z-directions, which reduces to 1). Note, however, that the 2D problem requires a different prescription for coupling constant regularization than the one implemented in the W-SLDA toolkit.
1D codes: xx-wslda-1d
In 1D codes, the wave functions are assumed to be:
\psi=\varphi(x)\frac{1}{\sqrt{L_y}}e^{ik_y y}\frac{1}{\sqrt{L_z}}e^{ik_z z}
where
k_y = 0, \pm 1 \frac{2\pi}{L_y}, \pm 2 \frac{2\pi}{L_y}, \ldots , +(N_y-1) \frac{2\pi}{L_y}
k_z = 0, \pm 1 \frac{2\pi}{L_z}, \pm 2 \frac{2\pi}{L_z}, \ldots , +(N_z-1) \frac{2\pi}{L_z}
For NY=1 and NZ=1, the code solves a 1D problem. Note, however, that the 1D problem requires a different prescription for coupling constant regularization than the one implemented in the W-SLDA toolkit.