Source code for lenstronomy.Util.constants
__author__ = "sibirrer"
"""This class contains physical constants and conversion factors between units."""
import numpy as np
__all__ = (
"G c M_sun M_earth M_jupiter AU Mpc kpc pc day_s arcsec "
"a_ES F_ES delay_arcsec2days".split()
)
G = 6.67384 * 10 ** (-11) # Gravitational constant [m^3 kg^-1 s^-2]
c = 299792458 # [m/s]
M_sun = 1.9891 * 10**30 # solar mass in [kg]
M_earth = 5.9972 * 10**24 # Earth mass in [kg]
M_jupiter = 1.89813 * 10**27 # Jupiter mass in [kg]
AU = 1.495978707 * 10**11 # Distance Earth Sun (Astronomical unit) in [m]
Mpc = 3.08567758 * 10**22 # Mpc in [m]
kpc = 3.08567758 * 10**19 # kpc in [m]
pc = 3.08567758 * 10**16 # pc in [m]
r_sun = 6.96000 * 10**8 # radius of the sun in [m]
day_s = 24 * 3600 # day in second
arcsec = 2 * np.pi / 360 / 3600 # arc second in radian
# derived quantities
a_ES = G * M_sun / AU**2 # Earth-Sun acceleration
F_ES = G * M_sun * M_earth / AU**2
[docs]
def delay_arcsec2days(delay_arcsec, ddt):
"""Given a delay in arcsec^2 and a Delay distance, the delay is computed in days.
:param delay_arcsec: gravitational delay in units of arcsec^2 (e.g. Fermat
potential)
:param ddt: Time delay distance (in units of Mpc)
:return: time-delay in units of days
"""
return ddt * Mpc / c * delay_arcsec / day_s * arcsec**2