コード例 #1
0
    def test__setup_4x3_array__five_now_in_mask(self):
        array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])

        mask = np.array([[True, False, True], [False, False, False],
                         [True, False, True], [True, True, True]])

        array_1d = mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            mask, array_2d)

        assert (array_1d == np.array([2, 4, 5, 6, 8])).all()
コード例 #2
0
    def test__setup_3x3_data(self):
        array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

        mask = np.array([[True, True, True], [True, False, True],
                         [True, True, True]])

        array_1d = mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            mask, array_2d)

        assert (array_1d == np.array([5])).all()
コード例 #3
0
    def test__setup_3x4_array(self):
        array_2d = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])

        mask = np.array([[True, False, True,
                          True], [False, False, False, True],
                         [True, False, True, False]])

        array_1d = mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            mask, array_2d)

        assert (array_1d == np.array([2, 5, 6, 7, 10, 12])).all()
コード例 #4
0
    def map_2d_array_to_masked_1d_array(self, array_2d):
        """For a 2D array (e.g. an image, noise_map, etc.) map it to a masked 1D array of valuees using this mask.

        Parameters
        ----------
        array_2d : ndarray | None | float
            The 2D array to be mapped to a masked 1D array.
        """
        if array_2d is None or isinstance(array_2d, float):
            return array_2d
        return mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            self, array_2d)
コード例 #5
0
    def test__map_2d_array_to_masked_1d_array__compare_to_array_util(self):
        array_2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])

        mask = np.array([[True, False, True], [False, False, False],
                         [True, False, True], [True, True, True]])

        array_1d_util = mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            mask, array_2d)

        mask = msk.Mask(mask, pixel_scale=3.0)

        array_1d = mask.map_2d_array_to_masked_1d_array(array_2d)

        assert (array_1d == array_1d_util).all()
コード例 #6
0
ファイル: grids.py プロジェクト: AshKelly/PyAutoLens
    def convolve_array_1d_with_psf(self, padded_array_1d, psf):
        """Convolve a 1d padded array of values (e.g. intensities before PSF blurring) with a PSF, and then trim \
        the convolved array to its original 2D shape.

        Parameters
        -----------
        padded_array_1d: ndarray
            A 1D array of values which were computed using the *PaddedRegularGrid*.
        psf : ndarray
            An array describing the PSF kernel of the image.
        """
        padded_array_2d = mapping_util.map_unmasked_1d_array_to_2d_array_from_array_1d_and_shape(
            array_1d=padded_array_1d, shape=self.mask.shape)
        blurred_padded_array_2d = psf.convolve(array=padded_array_2d)
        return mapping_util.map_2d_array_to_masked_1d_array_from_array_2d_and_mask(
            array_2d=blurred_padded_array_2d,
            mask=np.full(self.mask.shape, False))