def test__3x3_grid__buffer_aligns_two_grids(self):
        galaxy = ag.Galaxy(redshift=0.5, light=ag.lp.EllSersic(intensity=1.0))

        grid_without_buffer = np.array([[-1.48, -1.48], [1.48, 1.48]])

        plane_image = plane_image_of_galaxies_from(
            shape=(3, 3), grid=grid_without_buffer, galaxies=[galaxy], buffer=0.02
        )

        mask = ag.Mask2D.manual(
            mask=np.full(shape=(3, 3), fill_value=False), pixel_scales=1.0, sub_size=1
        )

        grid = ag.Grid2D.manual_mask(
            grid=np.array(
                [
                    [-1.0, -1.0],
                    [-1.0, 0.0],
                    [-1.0, 1.0],
                    [0.0, -1.0],
                    [0.0, 0.0],
                    [0.0, 1.0],
                    [1.0, -1.0],
                    [1.0, 0.0],
                    [1.0, 1.0],
                ]
            ),
            mask=mask,
        )

        plane_image_galaxy = galaxy.image_2d_from_grid(grid=grid)

        assert (plane_image.array == plane_image_galaxy).all()
    def test__2x3_grid__shape_change_correct_and_coordinates_shift(self):
        galaxy = ag.Galaxy(redshift=0.5, light=ag.lp.EllSersic(intensity=1.0))

        grid = np.array([[-1.5, -1.5], [1.5, 1.5]])

        plane_image = plane_image_of_galaxies_from(
            shape=(2, 3), grid=grid, galaxies=[galaxy], buffer=0.0
        )

        mask = ag.Mask2D.manual(
            mask=np.full(shape=(2, 3), fill_value=False), pixel_scales=1.0, sub_size=1
        )

        grid = ag.Grid2D.manual_mask(
            grid=np.array(
                [
                    [-0.75, -1.0],
                    [-0.75, 0.0],
                    [-0.75, 1.0],
                    [0.75, -1.0],
                    [0.75, 0.0],
                    [0.75, 1.0],
                ]
            ),
            mask=mask,
        )

        plane_image_galaxy = galaxy.image_2d_from_grid(grid=grid)

        assert (plane_image.array == plane_image_galaxy).all()
    def test__3x3_grid__extracts_max_min_coordinates__creates_grid_including_half_pixel_offset_from_edge(
        self,
    ):
        galaxy = ag.Galaxy(redshift=0.5, light=ag.lp.EllSersic(intensity=1.0))

        grid = np.array([[-1.5, -1.5], [1.5, 1.5]])

        plane_image = plane_image_of_galaxies_from(
            shape=(3, 3), grid=grid, galaxies=[galaxy], buffer=0.0
        )

        mask = ag.Mask2D.manual(
            mask=np.full(shape=(3, 3), fill_value=False), pixel_scales=1.0, sub_size=1
        )

        grid = ag.Grid2D.manual_mask(
            grid=np.array(
                [
                    [-1.0, -1.0],
                    [-1.0, 0.0],
                    [-1.0, 1.0],
                    [0.0, -1.0],
                    [0.0, 0.0],
                    [0.0, 1.0],
                    [1.0, -1.0],
                    [1.0, 0.0],
                    [1.0, 1.0],
                ]
            ),
            mask=mask,
        )

        plane_image_galaxy = galaxy.image_2d_from_grid(grid)

        assert (plane_image.array == plane_image_galaxy).all()
Beispiel #4
0
 def plane_image_2d_from(self, grid: aa.type.Grid2DLike) -> "PlaneImage":
     return plane_util.plane_image_of_galaxies_from(
         shape=grid.mask.shape,
         grid=grid.mask.unmasked_grid_sub_1,
         galaxies=self.galaxies,
     )
 def plane_image_2d_from_grid(self, grid):
     return plane_util.plane_image_of_galaxies_from(
         shape=grid.mask.shape,
         grid=grid.mask.unmasked_grid_sub_1,
         galaxies=self.galaxies,
     )