coolest.api.profiles.mass#

Classes#

BaseMassProfile

Base class to define a mass profile to compute lensing quantities.

PEMD

Power-law Elliptical Mass Distribution (a.k.a. Elliptical Power-law)

ExternalShear

Coordinates of the origin for the external shear profile are assumed to be (0., 0.).

ConvergenceSheet

Coordinates of the origin for the convergence sheet are assumed to be (0., 0.).

Module Contents#

class BaseMassProfile[source]#

Base class to define a mass profile to compute lensing quantities. Each specific class must be consistent with the equivalent class from the coolest.template submodule.

NOTE: in the future, a new coolest.profiles submodule will merge profile definitions that are currently split between coolest.template and coolest.api.

abstract potential(**params)[source]#
abstract deflection(**params)[source]#
abstract convergence(**params)[source]#
abstract hessian(**params)[source]#
property template_class[source]#
property type[source]#
property parameter_names[source]#
class PEMD[source]#

Power-law Elliptical Mass Distribution (a.k.a. Elliptical Power-law) This follows implementations in lenstronomy (:, Birrer et al. [BirrerShajibGilman+21]:) based on the formulae [TessoreMetcalf15]:.

param_conv(theta_E, q, gamma)[source]#
potential(x, y, theta_E=1.0, gamma=2.0, phi=0.0, q=1.0, center_x=0.0, center_y=0.0)[source]#
deflection(x, y, theta_E=1.0, gamma=2.0, phi=0.0, q=1.0, center_x=0.0, center_y=0.0)[source]#
convergence(x, y, theta_E=1.0, gamma=2.0, phi=0.0, q=1.0, center_x=0.0, center_y=0.0)[source]#

Returns the convergence (kappa) at the given position (x, y)

hessian(x, y, theta_E=1.0, gamma=2.0, phi=0.0, q=1.0, center_x=0.0, center_y=0.0)[source]#
class ExternalShear[source]#

Coordinates of the origin for the external shear profile are assumed to be (0., 0.).

potential(x, y, gamma_ext=0.0, phi_ext=0.0)[source]#
deflection(x, y, gamma_ext=0.0, phi_ext=0.0)[source]#
convergence(x, y, gamma_ext=0.0, phi_ext=0.0)[source]#
hessian(x, y, gamma_ext=0.0, phi_ext=0.0)[source]#
class ConvergenceSheet[source]#

Coordinates of the origin for the convergence sheet are assumed to be (0., 0.).

potential(x, y, kappa_s=0.0)[source]#
deflection(x, y, kappa_s=0.0)[source]#
convergence(x, y, kappa_s=0.0)[source]#
hessian(x, y, kappa_s=0.0)[source]#