# Quantum Geometry (RST) — Atomic Library
One function per file. Pluck and compose.
## Layout
| File | Primary function |
|------|------------------|
| `berry_curvature.py` | `berry_curvature_numeric(kx, ky, band_idx, hamiltonian_func, dk)` |
| `quantum_metric.py` | `quantum_metric_numeric(kx, ky, band_idx, hamiltonian_func, dk)` |
| `chern_number.py` | `chern_number(band_idx, hamiltonian_func, nkx, nky, dk)` |
| `eig_at_k.py` | `eig_at_k(kx, ky, band_idx, hamiltonian_func)` |
| `kagome_hamiltonian.py` | `hamiltonian_kagome(kx, ky, e0, t, lam)` |
| `eta_from_k.py` | `eta_from_k(k_vec, k_dirac, k_scale)` |
| `eta_from_energy.py` | `eta_from_energy(E_k, E_dirac, bandwidth, eps)` |
| `eta_from_metric.py` | `eta_from_metric(g_k, g_mean, eps)` |
| `n_qgeom_from_lattice.py` | `n_qgeom_from_lattice(lattice_class)` |
| `correlate_rst_vs_qg.py` | `correlate_rst_vs_qg(E, Omega, g, eta_vals, n, eta_def)` |
| `compute_along_path.py` | `compute_along_path(hamiltonian_func, path_func, n_pts, band_idx, dk)` |
| `paths/path_Gamma_K.py` | `path_Gamma_K(n_pts)` |
| `paths/path_Gamma_M.py` | `path_Gamma_M(n_pts)` |
| `paths/path_K_M.py` | `path_K_M(n_pts)` |
| `paths/path_radial_around_K.py` | `path_radial_around_K(n_pts, n_rays)` |
| `data/load_comin.py` | `load_comin_for_calibration()` |
| `data/load_berry_phase.py` | `load_berry_phase_for_calibration()` |
| `data/` | `load_all_for_calibration()` |
## Minimal usage
```python
from qg import (
hamiltonian_kagome,
berry_curvature_numeric,
quantum_metric_numeric,
eig_at_k,
eta_from_k,
n_qgeom_from_lattice,
path_Gamma_K,
compute_along_path,
)
# Wrap Kagome as callable
def H(kx, ky):
return hamiltonian_kagome(kx, ky)
# Along Gamma-K
kx, ky = path_Gamma_K(60)
result = compute_along_path(H, path_Gamma_K, 60, band_idx=1)
```
## Dependency graph
```
kagome_hamiltonian ─┬─> eig_at_k ─┬─> berry_curvature
│ ├─> quantum_metric
│ └─> chern_number
└─> compute_along_path
paths/* ──────────────> compute_along_path
eta_* ───────────────> correlate_rst_vs_qg
rst_engine.mu_rst ───> correlate_rst_vs_qg
```