def test_mge_lens_light_elliptical(self):
     e1, e2 = 0.3, 0.
     kwargs_profile = [{
         'amp': 1.,
         'sigma': 2,
         'center_x': 0.,
         'center_y': 0,
         'e1': e1,
         'e2': e2
     }]
     kwargs_options = {'lens_light_model_list': ['GAUSSIAN_ELLIPSE']}
     lensAnalysis = LensAnalysis(kwargs_options)
     amplitudes, sigma, center_x, center_y = lensAnalysis.multi_gaussian_lens_light(
         kwargs_profile, n_comp=20, e1=e1, e2=e2, deltaPix=0.05, numPix=400)
     mge = MultiGaussianEllipse()
     flux = mge.function(1.,
                         1,
                         amp=amplitudes,
                         sigma=sigma,
                         center_x=center_x,
                         center_y=center_y,
                         e1=e1,
                         e2=e2)
     flux_true = lensAnalysis.LensLightModel.surface_brightness(
         1., 1., kwargs_profile)
     npt.assert_almost_equal(flux / flux_true, 1, decimal=1)
Beispiel #2
0
 def test_multi_gaussian_lens_light(self):
     kwargs_profile = [{
         'Rs': 0.16350224766074103,
         'q': 0.4105628122365978,
         'center_x': -0.019983826426838536,
         'center_y': 0.90000011282957304,
         'phi_G': 0.14944144075912402,
         'sigma0': 1.3168943578511678
     }, {
         'Rs': 0.29187068596715743,
         'q': 0.70799587973181288,
         'center_x': 0.020568531548241405,
         'center_y': 0.036038490364800925,
         'Ra': 0.020000382843298824,
         'phi_G': -0.37221683730659516,
         'sigma0': 85.948773973262391
     }]
     kwargs_options = {
         'lens_model_list': ['SPEP'],
         'lens_model_internal_bool': [True],
         'lens_light_model_internal_bool': [True, True],
         'lens_light_model_list': ['HERNQUIST_ELLIPSE', 'PJAFFE_ELLIPSE']
     }
     lensAnalysis = LensAnalysis(kwargs_options)
     amplitudes, sigma = lensAnalysis.multi_gaussian_lens_light(
         kwargs_profile, n_comp=20)
     mge = MultiGaussian()
     flux = mge.function(1., 1, amp=amplitudes, sigma=sigma)
     npt.assert_almost_equal(flux, 0.04531989512955493, decimal=8)
Beispiel #3
0
 def test_multi_gaussian_lens_light(self):
     kwargs_profile = [{
         'Rs': 0.16350224766074103,
         'e1': 0,
         'e2': 0,
         'center_x': 0,
         'center_y': 0,
         'amp': 1.3168943578511678
     }, {
         'Rs': 0.29187068596715743,
         'e1': 0,
         'e2': 0,
         'center_x': 0,
         'center_y': 0,
         'Ra': 0.020000382843298824,
         'amp': 85.948773973262391
     }]
     kwargs_options = {
         'lens_model_list': ['SPEP'],
         'lens_model_internal_bool': [True],
         'lens_light_model_internal_bool': [True, True],
         'lens_light_model_list': ['HERNQUIST_ELLIPSE', 'PJAFFE_ELLIPSE']
     }
     lensAnalysis = LensAnalysis(kwargs_options)
     amplitudes, sigma, center_x, center_y = lensAnalysis.multi_gaussian_lens_light(
         kwargs_profile, n_comp=20)
     mge = MultiGaussian()
     flux = mge.function(1.,
                         1,
                         amp=amplitudes,
                         sigma=sigma,
                         center_x=center_x,
                         center_y=center_y)
     flux_true = lensAnalysis.LensLightModel.surface_brightness(
         1, 1, kwargs_profile)
     npt.assert_almost_equal(flux / flux_true, 1, decimal=2)
     del kwargs_profile[0]['center_x']
     del kwargs_profile[0]['center_y']
     amplitudes_new, sigma, center_x, center_y = lensAnalysis.multi_gaussian_lens_light(
         kwargs_profile, n_comp=20)
     npt.assert_almost_equal(amplitudes_new, amplitudes, decimal=2)