kwant.continuum.discretize_landau#
- kwant.continuum.discretize_landau(hamiltonian, N, momenta=None, grid_spacing=1)[source]#
Discretize a Hamiltonian in a basis of Landau levels.
- Parameters:
hamiltonian (str or sympy expression)
N (positive integer) – The number of Landau levels in the basis.
momenta (sequence of str (optional)) – The momenta defining the plane perpendicular to the magnetic field. If not provided, “k_x” and “k_y” are used.
grid_spacing (float, default: 1) – The grid spacing to use when discretizing the normal direction (parallel to the magnetic field).
- Returns:
builder – ‘hamiltonian’ discretized in a basis of Landau levels in the plane defined by ‘momenta’. If a third coordinate is present in ‘hamiltonian’, then this also has a translational symmetry in that coordinate direction. The builder has a parameter ‘B’ in addition to any other parameters present in the provided ‘hamiltonian’.
- Return type:
Notes
The units of magnetic field are \(ϕ₀ / 2 π a²\) with \(ϕ₀ = h/e\) the magnetic flux quantum and \(a\) the unit length.