Skip to content

prompt: record use_adjoint_scaling resolved (PyAutoArray#478) - #267

Merged
Jammy2211 merged 1 commit into
mainfrom
claude/adjoint-scaling-resolved
Aug 22, 2026
Merged

prompt: record use_adjoint_scaling resolved (PyAutoArray#478)#267
Jammy2211 merged 1 commit into
mainfrom
claude/adjoint-scaling-resolved

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

Closes open item 1 on the pynufft removal record (draft/maintenance/libraries/remove_pynufft_legacy_transformer.md). PyAutoLabs/PyAutoArray#478 removed the use_adjoint_scaling parameter and the adjoint_scaling attribute from both remaining transformers and from the sole caller, Interferometer.apply_sparse_operator.

The record previously said only that the flag "is now a no-op", which left ambiguous whether it had ever done anything. It had — and the distinction matters for anyone holding old results, so the history is now written down:

Class Applied the factor?
TransformerDFT Never
TransformerNUFFTPyNUFFT Yes — Kaiser-Bessel compensation, the only real user (deleted in #475)
TransformerNUFFT Until bd18a769 (2026-05-22), then deliberately removed

Verified numerically before removing anything: True vs False was bit-identical (0.000e+00) on both classes, and nufftax matches the exact DFT at 1.562e-13 relative — the same figure before and after. Applying the factor would have been a 4096× error on a 32×32 grid, not a correction.

The caveat this surfaced

Worth flagging beyond the record itself: anyone who used TransformerNUFFT with use_adjoint_scaling=True before 2026-05-22 has results that differ by 4 * N_y * N_x from anything regenerated today. That discrepancy dates from bd18a769, not from #478 — it has been latent for three months. It is recorded in the prompt so it is not lost.

Test Plan

  • python3 scripts/lifecycle.py checklifecycle check: OK
  • dashboard.md / dashboard.html regenerated via pyauto-brain intake --apply dashboard (149 prompts), not hand-edited
  • Open item 2 (the unverified apply_sparse_operator / nufftax-adjoint incompatibility) is deliberately left open — it was not investigated here

Generated by Claude Code

Closes open item 1 on the pynufft removal record. The parameter and the
adjoint_scaling attribute are removed from both remaining transformers and
from the sole caller.

Records where the factor actually did work, since the pynufft removal's
notes left it ambiguous: TransformerDFT never applied it, the deleted
TransformerNUFFTPyNUFFT did (Kaiser-Bessel compensation), and
TransformerNUFFT applied it only until bd18a769 on 2026-05-22.

Also records the user-facing caveat that the earlier investigation
surfaced: results produced with TransformerNUFFT and use_adjoint_scaling
=True before 2026-05-22 differ by 4 * N_y * N_x from anything regenerated
today. That discrepancy dates from bd18a769, not from #478, and is worth
raising with anyone holding interferometer results from that period.
@Jammy2211
Jammy2211 merged commit 7fcbd7b into main Aug 22, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants