Skip to content

add neutron scattering tutorial#5274

Open
kevinsung wants to merge 74 commits into
mainfrom
kjs/neutron-scattering
Open

add neutron scattering tutorial#5274
kevinsung wants to merge 74 commits into
mainfrom
kjs/neutron-scattering

Conversation

@kevinsung

@kevinsung kevinsung commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

corresponding paper: https://arxiv.org/abs/2603.15608

produced with assistance from Claude

kevinsung and others added 2 commits June 15, 2026 19:12
Co-authored-by: nathanearnestnoble <51792809+nathanearnestnoble@users.noreply.github.com>
@kevinsung kevinsung requested a review from a team June 15, 2026 19:54
@review-notebook-app

Copy link
Copy Markdown

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@qiskit-bot

Copy link
Copy Markdown
Contributor

One or more of the following people are relevant to this code:

  • @nathanearnestnoble

@nathanearnestnoble

Copy link
Copy Markdown
Collaborator

May want to remove "While that paper ran a 50-qubit experiment, here we run a 20-qubit experiment to keep the cost of performing approximate quantum compilation (AQC) more manageable." sentence at the start, now that you have been able to scale it up

@kevinsung

Copy link
Copy Markdown
Collaborator Author

May want to remove "While that paper ran a 50-qubit experiment, here we run a 20-qubit experiment to keep the cost of performing approximate quantum compilation (AQC) more manageable." sentence at the start, now that you have been able to scale it up

done

- make Next steps links root-relative and match actual page titles
- remove unneeded cspell ignore words (eigsh, Aer's, XLA)
- add TUT_SNS job tag to the hardware estimator
- copyedits: spell out DMRG, DD, and TREX on first use, lowercase
  "approximate quantum compiling", reword a few em dashes and "via",
  fix a double space and an en dash
henryzou50
henryzou50 previously approved these changes Jul 2, 2026

@henryzou50 henryzou50 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the changes, this tutorial looks great!

I pushed a commit with some small copyedits (root-relative Next steps links, trimming unused words from the cspell ignore list, a TUT_SNS job tag, and a few wording fixes in line with earlier review comments), so the checks should pass now. None of it touches code that affects results.

Beyond that, here are a few things I noted that could be changed or adjusted, let me know what you think.

Commentary/results

  • The intro's caveat only covers the AQC fidelity, but the printed ground-state ansatz fidelity also drops sharply (0.984 at 10 qubits → 0.646 at 50) with no explanation, so readers might think their ground-state prep failed. Suggest adding a sentence to the large-scale intro noting the ~0.65 fidelity is expected, and that increasing gs_n_layers or maxiter improves it at additional classical cost.
  • The text says the two-layer ansatz is used "where higher fidelity is needed," yet its printed fidelities (k=7–10: 0.67–0.77) are lower than the one-layer ones (k=1–6: 0.81–1.0). That's expected, as later time steps are just harder to compress, but a short sentence saying so would keep it from reading as a regression.
  • The large-scale section ends at the plots with no discussion. One or two closing sentences pointing out the continuum boundaries and the intensity at q = π would be nice here

Step 2c runtime for k > 6

When I ran the notebook, Step 2c only completed overnight, which matches the committed outputs: the one-layer stage (k=1–6) takes ~28 minutes, but the two-layer stage (k=7–10) takes ~5.3 hours (k=7 alone is ~3 hours, maybe because the stage boundary resets to fresh initial parameters and it runs all ~100 L-BFGS-B iterations on the 3412-parameter ansatz). That puts Step 2c at ~6 hours end to end.

Is there a way to shorten this, or should we expect it to always take this long to get good results?

Index placement (question for @abbycross)

The new entry is inserted at the top of the Observable estimation section in both _toc.json and index.mdx, whereas #5280 appended its tutorial at the end of the section. Which placement do we want?

- Explained in the large-scale intro that the lower fidelities at 50 qubits (~0.65 ground state, ~0.7 AQC) are expected, and which knobs improve them.
- Clarified that the two-layer AQC fidelities being lower than the one-layer ones is not a regression (later steps are harder to compress).
- Added a short closing discussion after the hardware plots tying the measured DSF back to the two-spinon continuum.

@henryzou50 henryzou50 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since Kevin is away, I applied the following commentary revisions as I mentioned before:

  • Explained in the large-scale intro that the lower fidelities at 50 qubits (~0.65 ground state, ~0.7 AQC) are expected, and which knobs improve them.
  • Clarified that the two-layer AQC fidelities being lower than the one-layer ones is not a regression (later steps are harder to compress).
  • Added a short closing discussion after the hardware plots tying the measured DSF back to the two-spinon continuum.

This tutorial LGTM! Let me know if you want to do a quick pass on this @nathanearnestnoble

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

5 participants