feat: add zero-parameter ps.PointSolved point-source profile - #531
Merged
Conversation
Pairs with the PyAutoLens *Solved fit classes (PyAutoLabs/PyAutoLens#657, phase 2; Lombardi 2024 arXiv:2406.15280). Also documents jacobian_from's (x, y) component ordering landmine (docstring only). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds
ag.ps.PointSolved— a zero-parameter point-source profile for the new analytically-solved point-source fits (PyAutoLabs/PyAutoLens#657, phase 2 of 5, from Lombardi 2024 arXiv:2406.15280 §5.1). Composing it viaaf.Modelcontributes 0 free parameters: the source-plane centre (and flux, when the dataset has fluxes) is solved analytically by the paired PyAutoLens*Solvedfit classes instead of being sampled. Also documents a convention landmine found during this work:LensCalc.jacobian_fromreturns its 2x2 components in (x, y) row/column order, against the codebase's universal (y, x) convention — invisible to existing determinant-only callers, but silently corrupting for any tensor consumer (docstring warning added; no behaviour change).API Changes
Added
ag.ps.PointSolved(zero-parameter profile). No other public-surface changes;jacobian_fromchange is docstring-only.See full details below.
Test Plan
pytest test_autogalaxy/(1009 passed locally, incl. newPointSolvedconstruction +af.Modelprior-count tests)Full API Changes (for automation & release notes)
Added
ag.ps.PointSolved— zero-parameter point-source profile; pair with the PyAutoLensFitPositions*Solved/FitFluxesSolved/FitTimeDelaysSolvedfit classes. Requires no prior-config entry (verified:af.Modelcomposition yieldsprior_count == 0).Companion PRs: PyAutoArray (merge first) + PyAutoLens branches
feature/point-source-chi-squared-variants.Generated by the PyAutoLabs agent workflow.