autogalaxy.profiles.light_profiles.SphChameleon#

class autogalaxy.profiles.light_profiles.SphChameleon(centre: Tuple[float, float] = (0.0, 0.0), intensity: float = 0.1, core_radius_0: float = 0.01, core_radius_1: float = 0.05)[source]#
__init__(centre: Tuple[float, float] = (0.0, 0.0), intensity: float = 0.1, core_radius_0: float = 0.01, core_radius_1: float = 0.05)[source]#

The spherical Chameleon light profile.

This light profile closely approximes the Elliptical Sersic light profile, by representing it as two cored elliptical isothermal profiles. This is convenient for lensing calculations, because the deflection angles of an isothermal profile can be evaluated analyticially efficiently.

See autogalaxy.profiles.light_profiles.light_profiles.LightProfile for a description of light profile objects.

Parameters
  • centre – The (y,x) arc-second coordinates of the profile centre.

  • elliptical_comps – The first and second ellipticity components of the elliptical coordinate system, (see the module autogalaxy -> convert.py for the convention).

  • intensity – Overall intensity normalisation of the light profile (units are dimensionless and derived from the data the light profile’s image is compared too, which is expected to be electrons per second).

  • core_radius_0 – The core size of the first elliptical cored Isothermal profile.

  • core_radius_1 – The core size of the second elliptical cored Isothermal profile.

Methods

__init__([centre, intensity, core_radius_0, …])

The spherical Chameleon light profile.

blurred_image_2d_via_convolver_from(grid, …)

Evaluate the light object’s 2D image from a input 2D grid of coordinates and convolve it with a PSF, using a autoarray.operators.convolver.Convolver object.

blurred_image_2d_via_psf_from(grid, psf, …)

Evaluate the light object’s 2D image from a input 2D grid of coordinates and convolve it with a PSF.

cos_and_sin_to_x_axis()

Determine the sin and cosine of the angle between the profile’s ellipse and the positive x-axis, counter-clockwise.

dict()

A dictionary representation of the instance comprising a type field which contains the entire class path by which the type can be imported and constructor arguments.

eta_u(u, coordinates)

from_axis_ratio_and_phi([centre, …])

from_dict(cls_dict)

Instantiate an instance of a class from its dictionary representation.

from_json(file_path)

Load the dictable object to a .json file, whereby all attributes are converted from the .json file’s dictionary representation to create the instance of the object

grid_angle_to_profile(grid_thetas)

The angle between each angle theta on the grid and the profile, in radians.

grid_to_eccentric_radii(grid)

Convert a grid of (y,x) coordinates to an eccentric radius, which is (1.0/axis_ratio) * elliptical radius and used to define light profile half-light radii using circular radii.

grid_to_elliptical_radii(grid)

Convert a grid of (y,x) coordinates to an elliptical radius.

grid_to_grid_cartesian(grid, radius)

Convert a grid of (y,x) coordinates with their specified circular radii to their original (y,x) Cartesian coordinates.

grid_to_grid_radii(grid)

Convert a grid of (y, x) coordinates to a grid of their circular radii.

image_1d_from(grid)

Returns the light profile’s 1D image from a grid of Cartesian coordinates, which may have been transformed using the light profile’s geometry.

image_2d_from(grid)

Returns the Chameleon light profile’s 2D image from a 2D grid of Cartesian (y,x) coordinates.

image_2d_via_radii_from(grid_radii)

Returns the 2D image of the Sersic light profile from a grid of coordinates which are the radial distances of each coordinate from the its centre.

luminosity_integral(x)

Routine to integrate the luminosity of an elliptical light profile.

luminosity_within_circle_from(radius)

Integrate the light profile to compute the total luminosity within a circle of specified radius.

output_to_json(file_path)

Output the dictable object to a .json file, whereby all attributes are converted to a dictionary representation first.

padded_image_2d_from(grid, psf_shape_2d)

Evaluate the light object’s 2D image from a input 2D grid of padded coordinates, where this padding is sufficient to encapsulate all surrounding pixels that will blur light into the original image given the 2D shape of the PSF’s kernel..

radial_projected_shape_slim_from(grid)

To make 1D plots (e.g.

rotate_grid_from_reference_frame(grid)

Rotate a grid of (y,x) coordinates which have been transformed to the elliptical reference frame of a profile back to the original unrotated coordinate grid reference frame.

transform_grid_from_reference_frame(grid)

Transform a grid of (y,x) coordinates from the reference frame of the profile to the original observer reference frame, including a rotation to its original orientation and a translation from the profile’s centre.

transform_grid_to_reference_frame(grid)

Transform a grid of (y,x) coordinates to the reference frame of the profile, including a translation to its centre and a rotation to it orientation.

unmasked_blurred_image_2d_via_psf_from(grid, psf)

Evaluate the light object’s 2D image from a input 2D grid of coordinates and convolve it with a PSF, using a grid which is not masked.

visibilities_via_transformer_from(grid, …)

Evaluate the light object’s 2D image from a input 2D grid of coordinates and transform this to an array of visibilities using a autoarray.operators.transformer.Transformer object and therefore a Fourier Transform.

Attributes

angle

axis_ratio

The elliptical isothermal mass profile deflection angles break down for perfectly spherical systems where axis_ratio=1.0, thus we remove these solutions.

cos_phi

half_light_radius

phi_radians

sin_phi