Square-Lattice Tight Binding

Purpose and structure

This model places one orbital at each site of an $N_r\times N_c$ rectangular grid with row-major indexing and nearest-neighbor hopping.

Finite lattice geometries

Basis and scaling

The single-particle dimension is $N_rN_c$. Dense and CSR builders are available. Opposite edges can be reconnected independently along $x$ and $y$.

from quantum_lattice_models import square_lattice_tight_binding_sparse

H = square_lattice_tight_binding_sparse(
    n_rows=20, n_cols=20, periodic_x=True
)

Parameters

Builder Parameter Type Default Constraint
square_lattice_tight_binding n_rows int 3 >= 1
square_lattice_tight_binding n_cols int 4 >= 1
square_lattice_tight_binding hopping float 1.0
square_lattice_tight_binding onsite float 0.0
square_lattice_tight_binding periodic_x bool False
square_lattice_tight_binding periodic_y bool False
square_lattice_tight_binding_sparse n_rows int 8 >= 1
square_lattice_tight_binding_sparse n_cols int 8 >= 1
square_lattice_tight_binding_sparse hopping float 1.0
square_lattice_tight_binding_sparse onsite float 0.0
square_lattice_tight_binding_sparse periodic_x bool False
square_lattice_tight_binding_sparse periodic_y bool False

User notes

Use square_lattice_positions for plotting. This model has real hopping and no magnetic flux; use Harper-Hofstadter for Peierls phases.