Пример #1
0
    def test_light2mass_mge(self):
        from lenstronomy.LightModel.Profiles.gaussian import MultiGaussianEllipse
        multiGaussianEllipse = MultiGaussianEllipse()
        x_grid, y_grid = util.make_grid(numPix=100, deltapix=0.05)
        kwargs_light = [{
            'amp': [2, 1],
            'sigma': [0.1, 1],
            'center_x': 0,
            'center_y': 0,
            'e1': 0.1,
            'e2': 0
        }]
        light_model_list = ['MULTI_GAUSSIAN_ELLIPSE']
        lensAnalysis = LensAnalysis(
            kwargs_model={'lens_light_model_list': light_model_list})
        kwargs_mge = lensAnalysis.light2mass_mge(
            kwargs_lens_light=kwargs_light,
            numPix=100,
            deltaPix=0.05,
            elliptical=True)
        npt.assert_almost_equal(kwargs_mge['e1'],
                                kwargs_light[0]['e1'],
                                decimal=2)

        del kwargs_light[0]['center_x']
        del kwargs_light[0]['center_y']
        kwargs_mge = lensAnalysis.light2mass_mge(
            kwargs_lens_light=kwargs_light,
            numPix=100,
            deltaPix=0.05,
            elliptical=False)
        npt.assert_almost_equal(kwargs_mge['center_x'], 0, decimal=2)
Пример #2
0
 def test_light2mass_mge_elliptical_sersic(self):
     # same test as above but with Sersic ellipticity definition
     lens_light_kwargs = [{
         'R_sersic': 1.3479852771734446,
         'center_x': -0.0014089381116285044,
         'n_sersic': 2.260502794737016,
         'amp': 0.08679965264978318,
         'center_y': 0.0573684892835563,
         'e1': 0.22781838418202335,
         'e2': 0.03841125245832406
     }, {
         'R_sersic': 0.20907637464009315,
         'center_x': -0.0014089381116285044,
         'n_sersic': 3.0930684763455156,
         'amp': 3.2534559112899633,
         'center_y': 0.0573684892835563,
         'e1': 0.0323604434989261,
         'e2': -0.12430547471424626
     }]
     light_model_list = ['SERSIC_ELLIPSE', 'SERSIC_ELLIPSE']
     lensAnalysis = LensAnalysis(
         {'lens_light_model_list': light_model_list})
     kwargs_mge = lensAnalysis.light2mass_mge(lens_light_kwargs,
                                              model_bool_list=None,
                                              elliptical=True,
                                              numPix=500,
                                              deltaPix=0.5)
     print(kwargs_mge)
     npt.assert_almost_equal(kwargs_mge['e1'], 0.22, decimal=2)