5.17. operatorsΒΆ
Basis set dependent operators for a plane wave basis.
These operators act on discretized wave functions, i.e., the arrays W.
These W are column vectors. This has been chosen to let theory and code coincide, e.g.,
W^dagger W becomes W.conj().T @ W
.
The downside is that the i-th state will be accessed with W[:, i] instead of W[i]. Choosing the i-th state makes the array 1d.
These operators can act on six different options, namely
the real-space
the real-space (1d)
the full reciprocal space
the full reciprocal space (1d)
the active reciprocal space
the active reciprocal space (1d)
The active space is the truncated reciprocal space by restricting it with a sphere given by ecut.
Every spin dependence will be handled with handle_spin by calling the operators for each spin individually. The same goes for the handling of k-points, while for k-points W is represented as a list of arrays. This gives the final indexing for the k-point k, spin s, and state n of W[ik][s, :, n].
Functions
Backward transformation from reciprocal space to real-space. | |
Conjugated backward transformation from real-space to reciprocal space. | |
Forward transformation from real-space to reciprocal space. | |
Conjugated forward transformation from reciprocal space to real-space. | |
Preconditioning operator with k-point dependency. | |
Laplacian operator with k-point dependency. | |
Inverse Laplacian operator. | |
Overlap operator. | |
Translation operator. |