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

  1. the real-space

  2. the real-space (1d)

  3. the full reciprocal space

  4. the full reciprocal space (1d)

  5. the active reciprocal space

  6. 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

I

Backward transformation from reciprocal space to real-space.

Idag

Conjugated backward transformation from real-space to reciprocal space.

J

Forward transformation from real-space to reciprocal space.

Jdag

Conjugated forward transformation from reciprocal space to real-space.

K

Preconditioning operator with k-point dependency.

L

Laplacian operator with k-point dependency.

Linv

Inverse Laplacian operator.

O

Overlap operator.

T

Translation operator.