Commit f01e083
authored
Surf dems2 (#294)
* Expand surface sweep reporting and analysis
* Improve surface sweep plotting and docs
* Refactor surface sweep reporting: unified matplotlib plots, multi-shard merge, PDF report, FSS threshold fit
- Kill hand-rolled SVG plot writers; use matplotlib for both SVG and PDF via unified figure builders
- Split 340-line main() into focused helpers (resolve_backends, duration schedule, config banner, sweep loop, post-analysis)
- Add fit-quality warnings (fit_rms >= fit_epsilon), gate threshold fits on >=3 distances
- Fix _estimate_threshold to use per-round rate crossing (was using projected-over-d-rounds which underestimates)
- Add multi-shard merge via merge_sweep_shards(): accumulate shots across runs, re-fit from merged points
- Add JSON-only replay: --render-plots regenerates all plots from saved JSON without rerunning simulation
- Add multi-page PDF report (--save-report-pdf / --report-pdf) with styled cover, section dividers, appendix
- Wire in Wang-Harrington-Preskill FSS threshold fit from pecos.analysis.threshold_curve (arXiv:quant-ph/0207088)
- Annotate per-round plots with below-threshold power-law exponents and threshold markers with uncertainty bands
- Per-basis curves now use log-log axes; consistent color palette across all plot types
- Fix dashboard rebuild ordering in surface_sweep_report.py
- Add 28 unit tests covering fit math, merge semantics, JSON round-trip, PDF generation, plot ordering
* Fix grug-scout review issues: heterogeneous merge safety, strict zips, type clarity
* Fix clippy map_unwrap_or in pecos-random time_seed
* Apply clippy 1.95 auto-fixes across workspace
* Reformat after clippy 1.95 auto-fixes
* Fix remaining clippy 1.95 lints: checked_div, while_let_loop, sort_by_key, counter_loop
* Update lockfiles1 parent 00f889e commit f01e083
47 files changed
Lines changed: 4408 additions & 1005 deletions
File tree
- crates
- pecos-build/src
- llvm
- pecos-cli/src/cli
- pecos-core/src
- pecos-engines
- src
- byte_message
- tests
- pecos-hugr/src
- engine/handlers
- pecos-phir/src
- execution
- pecos-pymatching/src
- pecos-qasm
- src
- tests
- features
- gates
- pecos-qec/src/fault_tolerance
- dem_builder
- propagator
- pecos-qis-ffi/src
- pecos-quantum/src
- pecos-random/src
- pecos-simulators/src
- examples/surface
- exp
- pecos-experimental/src
- pecos-neo
- benches
- src
- command
- extensible
- noise/composite
- tool
- python
- pecos-rslib/src
- quantum-pecos/tests/pecos/unit
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
191 | 191 | | |
192 | 192 | | |
193 | 193 | | |
194 | | - | |
| 194 | + | |
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
168 | 168 | | |
169 | 169 | | |
170 | 170 | | |
171 | | - | |
172 | | - | |
| 171 | + | |
173 | 172 | | |
174 | 173 | | |
175 | 174 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
377 | 377 | | |
378 | 378 | | |
379 | 379 | | |
380 | | - | |
| 380 | + | |
381 | 381 | | |
382 | 382 | | |
383 | 383 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1303 | 1303 | | |
1304 | 1304 | | |
1305 | 1305 | | |
1306 | | - | |
| 1306 | + | |
1307 | 1307 | | |
1308 | 1308 | | |
1309 | 1309 | | |
1310 | 1310 | | |
1311 | 1311 | | |
1312 | | - | |
| 1312 | + | |
1313 | 1313 | | |
1314 | 1314 | | |
1315 | 1315 | | |
| |||
1537 | 1537 | | |
1538 | 1538 | | |
1539 | 1539 | | |
1540 | | - | |
| 1540 | + | |
1541 | 1541 | | |
1542 | 1542 | | |
1543 | 1543 | | |
| |||
1569 | 1569 | | |
1570 | 1570 | | |
1571 | 1571 | | |
1572 | | - | |
| 1572 | + | |
1573 | 1573 | | |
1574 | 1574 | | |
1575 | 1575 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
211 | 211 | | |
212 | 212 | | |
213 | 213 | | |
214 | | - | |
| 214 | + | |
215 | 215 | | |
216 | | - | |
| 216 | + | |
217 | 217 | | |
218 | 218 | | |
219 | 219 | | |
| |||
227 | 227 | | |
228 | 228 | | |
229 | 229 | | |
230 | | - | |
231 | | - | |
| 230 | + | |
232 | 231 | | |
233 | | - | |
| 232 | + | |
234 | 233 | | |
235 | 234 | | |
236 | 235 | | |
| |||
256 | 255 | | |
257 | 256 | | |
258 | 257 | | |
259 | | - | |
260 | 258 | | |
261 | 259 | | |
262 | 260 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
196 | 196 | | |
197 | 197 | | |
198 | 198 | | |
199 | | - | |
200 | | - | |
201 | | - | |
| 199 | + | |
| 200 | + | |
202 | 201 | | |
203 | 202 | | |
204 | 203 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
117 | 117 | | |
118 | 118 | | |
119 | 119 | | |
120 | | - | |
| 120 | + | |
121 | 121 | | |
122 | 122 | | |
123 | 123 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2351 | 2351 | | |
2352 | 2352 | | |
2353 | 2353 | | |
2354 | | - | |
| 2354 | + | |
2355 | 2355 | | |
2356 | 2356 | | |
2357 | 2357 | | |
| |||
0 commit comments