v0.3.0: Hall tensor, nonorthogonal topology, spin-orbit, dephasing, sparse solvers
Every item on the v0.2.0 "not yet implemented" list is now implemented, each pinned to exact anchors (69 tests total, up from 40):
Finite-frequency Hall conductivity (sigma_tensor): the full complex interband conductivity tensor sigma_ab(omega). Its omega -> 0 Hall limit reproduces the TKNN quantization sigma_xy(0) = C e^2/h (PRL 49, 405 (1982)) against the package's own Chern number to 1e-6 -- sign included, via two independent routes through the code. Vanishes in the trivial Haldane phase, antisymmetric to machine precision, longitudinal part agrees with sigma_optical, exactly gauge invariant with overlap.
Nonorthogonal topology: Berry phases, Berry curvature and Chern numbers now accept overlap models through the smooth Loewdin frame d = S(k)^1/2 c -- a bundle isomorphism, so the Chern number is frame-invariant. Anchors: the overlap-deformed Haldane model keeps its exact integer Chern numbers in both phases; the overlap-SSH chain keeps quantized Zak phases with the exact pi difference.
Spin and spin-orbit as a first-class convention (with_spin, PAULI, kane_mele): spin doubling (exact doublets), Pauli-block Zeeman/SOC terms (splitting exactly 2B), and the Kane-Mele model (PRL 95, 226801 (2005)) -- equal to two Haldane copies to machine precision, spin-orbit gap exactly 6 sqrt(3) lambda_so at K, total Chern zero, spin sectors +/-1.
Interaction self-energies in transport: transmission / transmission_direct accept per-layer retarded Sigma(E) (constant or callable); a constant Sigma reproduces the impurity closed form, and RGF equals direct inversion with complex Sigma to machine precision. buttiker_transmission adds the current-conserving dephasing probe (PRB 33, 3020 (1986)): exact coherent limit at gamma = 0, hand-written scalar closed form on a single-site device, resonance suppression in a double barrier. Self-consistent (SCBA-type) self-energies remain out of scope, stated plainly.
Sparse / large systems (bloch_sparse, lowest_bands, kpm_dos): CSR assembly identical to the dense path element for element, Lanczos low-energy bands (generalized problem included) pinned to the open chain's closed form 2t cos(pi j/(N+1)), and the kernel polynomial DOS with the Jackson kernel (Rev. Mod. Phys. 78, 275 (2006)), matching the chain's closed-form DOS and integrating exactly to the orbital count.
Time-reversal k-mesh folding: monkhorst_pack(mesh, time_reversal=True) halves the grid for k-even observables, reproducing full-grid DOS, sigma and Drude weight to 1e-12; offered only when every block is real, refused otherwise.
Also: optional overlap parameters on the ssh and haldane builders, README rewritten with the new validation anchors and the updated honest scope list.
Install: pip install hamop -- archived on Zenodo under concept DOI 10.5281/zenodo.22311381.