diff --git a/AGENTS.md b/AGENTS.md index 0dec0a3..d245a03 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -73,6 +73,10 @@ bespoke figures are a follow-up through the Eyes dashboard. `cluster` calls the `PlotterPoint` methods directly instead of `VisualizerPoint`, skipping the untracked tracer and galaxy figures; the "Fit Positions" and point-solver panels still draw the critical curves, which cost ~2 min per dataset on the 15-galaxy multi-plane lens (the PNGs match the visualizer's). +Every point-source `fit.png` (both chi-squared domains and `cluster`) also has a "Fit Source +Plane" panel — the observed positions traced to the point's own plane — whose presentation +follows the fit class: context only for an image-plane chi-squared, the chi-squared's own noise +footprint and value for a source-plane chi-squared (PyAutoLens#789). **Point solver.** `point_source_image_chi_squared` (via `visualize(quick_update=False)`) and `cluster` (per plane) also keep `point_solver.png`: the model's real `PointSolver` refining onto diff --git a/gallery/viz_manifest.yaml b/gallery/viz_manifest.yaml index 6d213a7..eb0a923 100644 --- a/gallery/viz_manifest.yaml +++ b/gallery/viz_manifest.yaml @@ -20,8 +20,8 @@ figures: producer: scripts/cluster/visualization.py domain: cluster source: point_0 - bytes: 68170 - sha256: a77734d4569f512ec14657e5a6fb2c1308a1e49c7b2153e00bf83f2c83f9e860 + bytes: 155979 + sha256: 194a96de28638648ea81b47e0733fdd973f98abc69db1c1bac217ff831c7dc69 - file: scripts/cluster/images/visualization/point_0/point_solver.png producer: scripts/cluster/visualization.py domain: cluster @@ -38,8 +38,8 @@ figures: producer: scripts/cluster/visualization.py domain: cluster source: point_1 - bytes: 65871 - sha256: 813846220f1a47d03f88084b92cb93507a91b6410ae72dd0138cf13eda54c667 + bytes: 194829 + sha256: 62f2ac2dede915f85571cd8d1bbd30be7e27450e94486731ff6c0b9571c026e6 - file: scripts/cluster/images/visualization/point_1/point_solver.png producer: scripts/cluster/visualization.py domain: cluster @@ -380,8 +380,8 @@ figures: producer: scripts/point_source_image_chi_squared/visualization.py domain: point_source_image_chi_squared source: '' - bytes: 59992 - sha256: 75919308cfe263625a6d71450f2eb83acc2b13a0b08f1edc3ee97720c4f5f75a + bytes: 138722 + sha256: 482203f4614a3505f2f486e3530f88278c715b364f2be2be3d71d7f1497435a1 - file: scripts/point_source_image_chi_squared/images/visualization/fit_image_with_points.png producer: scripts/point_source_image_chi_squared/visualization.py domain: point_source_image_chi_squared @@ -416,8 +416,8 @@ figures: producer: scripts/point_source_source_chi_squared/visualization.py domain: point_source_source_chi_squared source: '' - bytes: 60766 - sha256: 386aaf5cf28aa8b69b71a53962a3edde8d5673769ab7eb7f7ae81f1fe2fe9399 + bytes: 196069 + sha256: 766245d8083139d16ad5ad8228351eca4e216b2bae4f269c22954845b86a4bbf - file: scripts/point_source_source_chi_squared/images/visualization/fit_image_with_points.png producer: scripts/point_source_source_chi_squared/visualization.py domain: point_source_source_chi_squared diff --git a/scripts/cluster/images/visualization/point_0/fit.png b/scripts/cluster/images/visualization/point_0/fit.png index 55d542e..5b98a78 100644 Binary files a/scripts/cluster/images/visualization/point_0/fit.png and b/scripts/cluster/images/visualization/point_0/fit.png differ diff --git a/scripts/cluster/images/visualization/point_1/fit.png b/scripts/cluster/images/visualization/point_1/fit.png index 682e25d..90d7791 100644 Binary files a/scripts/cluster/images/visualization/point_1/fit.png and b/scripts/cluster/images/visualization/point_1/fit.png differ diff --git a/scripts/cluster/visualization.py b/scripts/cluster/visualization.py index 4c9860a..fbbfdd4 100644 --- a/scripts/cluster/visualization.py +++ b/scripts/cluster/visualization.py @@ -24,7 +24,9 @@ ``fit_point(quick_update=True)`` and ``point_solver`` in ``visualize``), writing the figures the visualizer would. The "Fit Positions" and point-solver panels draw the tracer's critical curves, computed once per dataset (as the visualizer does) on a 100x100 grid covering the solver grid: for -this 15-galaxy multi-plane lens that costs ~2 min per dataset. +this 15-galaxy multi-plane lens that costs ~2 min per dataset. The "Fit Source Plane" panel of +``fit.png`` draws the caustics of the point's own plane (``point_0`` is at z=1, in front of the +last plane), computed separately for a point not in the last plane. The point plotter writes ``dataset_point.png`` (renamed to ``dataset.png``); every other file the visualizer writes is deleted. diff --git a/scripts/point_source_image_chi_squared/images/visualization/fit.png b/scripts/point_source_image_chi_squared/images/visualization/fit.png index f562144..49e965c 100644 Binary files a/scripts/point_source_image_chi_squared/images/visualization/fit.png and b/scripts/point_source_image_chi_squared/images/visualization/fit.png differ diff --git a/scripts/point_source_image_chi_squared/visualization.py b/scripts/point_source_image_chi_squared/visualization.py index 2db2b00..e0b9342 100644 --- a/scripts/point_source_image_chi_squared/visualization.py +++ b/scripts/point_source_image_chi_squared/visualization.py @@ -12,7 +12,8 @@ scripts/point_source_image_chi_squared/images/visualization/ dataset.png <- visualize_before_fit (the plotter writes dataset_point.png; renamed) - fit.png <- visualize + fit.png <- visualize: Fit Positions + Fit Source Plane (traced positions for + context only: the image-plane chi-squared has no source-plane noise) image_with_points.png <- visualize_before_fit: the observed positions over ``data.fits`` (dataset only, no model) fit_image_with_points.png <- visualize: the observed positions, the model's diff --git a/scripts/point_source_source_chi_squared/images/visualization/fit.png b/scripts/point_source_source_chi_squared/images/visualization/fit.png index 3a9e03b..08dbc48 100644 Binary files a/scripts/point_source_source_chi_squared/images/visualization/fit.png and b/scripts/point_source_source_chi_squared/images/visualization/fit.png differ diff --git a/scripts/point_source_source_chi_squared/visualization.py b/scripts/point_source_source_chi_squared/visualization.py index e717bb7..6cfbc18 100644 --- a/scripts/point_source_source_chi_squared/visualization.py +++ b/scripts/point_source_source_chi_squared/visualization.py @@ -11,7 +11,9 @@ scripts/point_source_source_chi_squared/images/visualization/ dataset.png <- visualize_before_fit (the plotter writes dataset_point.png; renamed) - fit.png <- visualize(quick_update=True) + fit.png <- visualize(quick_update=True): Fit Positions + Fit Source Plane (the + traced positions with the sigma/|mu| circles the magnification + chi-squared uses) image_with_points.png <- visualize_before_fit: the observed positions over ``data.fits`` (dataset only, no model) fit_image_with_points.png <- visualize(quick_update=True): the observed