Skip to content

WIP: Introduce vector potential to GPAW

Mikael Kuisma requested to merge juhanim/gpaw:grid-vector-potential into master

Preliminary work on introducing vector potential, right now, only for grid mode.

Uses the idea of parallel transport, i.e. the kinetic energy operator is transformed as

\frac{1}{2}p_x^2 \leftarrow \frac{1}{2} e^{-i \int_0^x dx' A_x(x',y,z)} p_x^2 e^{i \int_0^x dx' A_x(x',y,z)}
\frac{1}{2}p_y^2 \leftarrow \frac{1}{2} e^{-i \int_0^y dy' A_y(x,y',z)} p_y^2 e^{i \int_0^y dy' A_y(x,y',z)}
\frac{1}{2}p_z^2 \leftarrow \frac{1}{2} e^{-i \int_0^z dz' A_z(x,y,z')} p_z^2 e^{i \int_0^z dz' A_z(x,y,z')}

which corresponds to

\frac{1}{2}{\mathbf p}^2 \leftarrow \frac{1}{2}\left( \mathbf{p} + \mathbf{A} \right)^2

Two test cases are included, one with constant magnetic field and one with constant vector potential (doing nothing).

TODO:

  • Parallel implementation
  • Gauge including PAW corrections
  • Periodic boundary conditions for constant vector potential (easy)
  • General unit cell Laplacians
  • Periodic boundary conditions for constant magnetic field (hard)
  • Lasers
  • Including absorbing boundary conditions
  • TDDFT
  • Macroscopic current observable
  • Bloch cell-periodic wave-functions
Edited by Mikael Kuisma

Merge request reports