Skip to content

feat: solved parameters on linear profiles + PointSolved; model cookbook figures (PyAutoLens#736) - #616

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/model-figures-lens
Sep 11, 2026
Merged

Jammy2211 merged 1 commit into
mainfrom
feature/model-figures-lens

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Summary

PyAutoGalaxy half of model-figures phase 3 (PyAutoLens#736). Declares, through PyAutoFit's new __solved_parameters__ class-attribute protocol (PyAutoFit sibling PR), the quantities a fit solves rather than samples: LightProfileLinear.__solved_parameters__ = ("intensity",) (inherited by every lp_linear.* profile) and PointSolved.__solved_parameters__ = ("centre",). Basis declares nothing — it has no model-level amplitude; the solved intensities belong to its linear members (docstring says so). Model figures now show intensity · solved / centre · solved dashed pills where the picture used to imply "no amplitude" or an empty component.

Real-class semantics tests (test_autogalaxy/profiles/test_model_figure_semantics.py, 12): linear intensity solved vs standard intensity free; Basis has no amplitude and its 3 members collapse to a plate whose repeats line reads intensity solved; PointSolved one solved row, Point free tuple; af.Model(ag.mesh.Delaunay) leaves exactly areas_factor as missing (pixels is an R7 fixed row from the int annotation, zeroed_pixels takes its default — not the three-missing the plan assumed); Pixelization shows reconstruction · solved; free Redshift is a pill on the galaxy card, fixed redshift is the redshift = 0.5 subtitle.

Docs: docs/general/model_cookbook.md re-synced to autogalaxy_workspace/scripts/guides/modeling/cookbook.py (ag.lp_linear.*), a model figure after each of the 6 stages, and a "Reading the figure" paragraph (map vs legend; background tint follows nesting depth only and is decorative); docs/overview/overview_3_features.md gains the MGE model figure. PNGs under docs/general/images/model_cookbook/ with make_figures.py.

API Changes

Added class attributes LightProfileLinear.__solved_parameters__ and PointSolved.__solved_parameters__ (consumed by PyAutoFit's model figures). No behaviour change. See full details below.

Test Plan

  • test_autogalaxy/profiles/test_model_figure_semantics.py 12 passed; test_autogalaxy/profiles 756 passed (serial, task worktree with the sibling PyAutoFit branch).
  • Sphinx: 95 warnings vs baseline 105; none on touched pages. All PNGs ≤ 1400 px.
  • CI (lib-tests checks out the same-named PyAutoFit / PyAutoArray branches).
Full API Changes (for automation & release notes)

Added

  • autogalaxy.profiles.light.linear.abstract.LightProfileLinear.__solved_parameters__ = ("intensity",)
  • autogalaxy.profiles.point_sources.PointSolved.__solved_parameters__ = ("centre",)

Migration

  • None. Note for a future release: a PyAutoGalaxy release that relies on these being drawn needs autofit>= the first release carrying the protocol; the attributes are harmless on older PyAutoFit.

Generated by the PyAutoLabs agent workflow.

🤖 Generated with Claude Code

https://claude.ai/code/session_0178yLU9v19GtACcRPFggjGa

…k figures (PyAutoLens#736)

Model figures phase 3. LightProfileLinear declares intensity and PointSolved
declares centre through PyAutoFit's new `__solved_parameters__` protocol,
so model figures draw them as dashed `solved` pills instead of omitting
them; Basis deliberately declares nothing (its members carry the solved
amplitudes). Real-class semantics tests cover linear intensity, Basis,
PointSolved, Delaunay's missing areas_factor and free/fixed redshift. The
model cookbook docs page is re-synced to the workspace script and gains a
figure per stage plus a "Reading the figure" note; overview_3 gains the MGE
model figure.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0178yLU9v19GtACcRPFggjGa
@Jammy2211

Copy link
Copy Markdown
Collaborator Author

Workspace PR: PyAutoLabs/autogalaxy_workspace#240

@Jammy2211
Jammy2211 merged commit 3c383c1 into main Sep 11, 2026
4 checks passed
@Jammy2211
Jammy2211 deleted the feature/model-figures-lens branch September 11, 2026 15:46
@Jammy2211 Jammy2211 removed the pending-release PR queued for the next release build label Sep 26, 2026
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.

1 participant