Skip to Content
Back

Resolution convergence study

Parameter Sweeps

Frequencies converge from above as the real-space grid is refined: at low resolution, the dielectric step is poorly resolved and shifts band edges upward by a few percent. A convergence sweep is the cheapest way to pick a working resolution: keep doubling until the band edges stop moving within your target tolerance.

Explorer
resolution-convergence/
convergence.py
1import blaze
2
3# Increase the grid resolution and watch the bands converge.
4results = blaze.solve(
5    lattice_type="square",
6    resolution=[16, 48, 16],
7    epsilon_background=1.0,
8    epsilon_atoms=8.9,
9    radius_atom=0.2,
10    polarization="TM",
11)
12
13for r in results:
14    print(f"res={r.resolution}: band1 max = {r.freqs[:, 0].max():.5f}")

Band diagram

Run the example to see the band diagram.

Result · list[BandResult] (0)

Result
results:list[BandResult] (0)