Limb Darkening#
These are convenience functions designed to transform limb darkening coefficients of commonly used limb darkening laws into coefficients of high-order polynomials that squishyplanet can use to model the intensity profile of the star.
- limb_darkening_laws.kipping_ld_law(q1: float, q2: float, return_profile: bool = False) Array | dict[str, Array][source]#
Kipping limb-darkening law.
A restriction of the quadratic law from Kipping 2013 that guaratees a monotonic increasing intensity profile
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu) - u_2 (1 - \mu)^2\]where
\[u_1 = 2 \sqrt{q_1} q_2\]\[u_2 = \sqrt{q_1} (1 - 2 q_2)\]- Parameters:
q1 (float) – Kipping limb-darkening coefficient
q2 (float) – Kipping limb-darkening coefficient
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
If return_profile is False, returns an array of u coefficients used by squishyplanet to compute the intensity profile.
If return_profile is True, returns a dictionary describing the intensity profile.
- Return type:
Array or dict
- limb_darkening_laws.linear_ld_law(u1: float, return_profile: bool = False) Array | dict[str, Array][source]#
Linear limb-darkening law.
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu)\]- Parameters:
u1 (float) – Linear limb-darkening coefficient
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
- u coefficients used by squishyplanet to compute the intensity profile
(here it’s just [u1, 0], since we always need at least two coefficients)
- dict (if return_profile=True):
Dictionary describing the intensity profile
- Return type:
Array
- limb_darkening_laws.nonlinear_3param_ld_law(u1: float, u2: float, u3: float, order: int = 12, return_profile: bool = False) Array | dict[str, Array][source]#
Non-linear 3-parameter limb-darkening law.
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu) - u_2 (1 - \mu^{1.5}) - u_3 (1 - \mu^2)\]- Parameters:
u1 (float) – Linear limb-darkening coefficient
u2 (float) – Square root limb-darkening coefficient
u3 (float) – Square limb-darkening coefficient
order (int, default=5) – Order of the polynomial fit to the intensity profile
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
- u coefficients of the least-squares polynomial fit to the intensity profile
created by the limb-darkening law across a dense grid of mu values
- dict (if return_profile=True):
Dictionary describing the intensity profile
- Return type:
Array
- limb_darkening_laws.nonlinear_4param_ld_law(u1: float, u2: float, u3: float, u4: float, order: int = 12, return_profile: bool = False) Array | dict[str, Array][source]#
Non-linear 4-parameter limb-darkening law.
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu^{0.5}) - u_2 (1 - \mu) - u_2 (1 - \mu^{1.5}) - u_3 (1 - \mu^2)\]- Parameters:
u1 (float) – Linear limb-darkening coefficient
u2 (float) – Square root limb-darkening coefficient
u3 (float) – Square limb-darkening coefficient
u4 (float) – Square limb-darkening coefficient
order (int, default=5) – Order of the polynomial fit to the intensity profile
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
- u coefficients of the least-squares polynomial fit to the intensity profile
created by the limb-darkening law across a dense grid of mu values
- dict (if return_profile=True):
Dictionary describing the intensity profile
- Return type:
Array
- limb_darkening_laws.quadratic_ld_law(u1: float, u2: float, return_profile: bool = False) Array | dict[str, Array][source]#
Quadratic limb-darkening law.
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu) - u_2 (1 - \mu)^2\]- Parameters:
u1 (float) – Linear limb-darkening coefficient
u2 (float) – Quadratic limb-darkening coefficient
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
- u coefficients used by squishyplanet to compute the intensity profile
(here it’s just [u1, u2], without modification: this is a silly function included only to give a consistent interface to the limb-darkening laws)
- dict (if return_profile=True):
Dictionary describing the intensity profile
- Return type:
Array
- limb_darkening_laws.squareroot_ld_law(u1: float, u2: float, order: int = 12, return_profile: bool = False) Array | dict[str, Array][source]#
Square root limb-darkening law.
\[\frac{I(\mu)}{I(\mu = 1)} = 1 - u_1 (1 - \mu) - u_2 (1 - \sqrt{\mu})\]- Parameters:
u1 (float) – Linear limb-darkening coefficient
u2 (float) – Square root limb-darkening coefficient
order (int, default=5) – Order of the polynomial fit to the intensity profile
return_profile (bool, default=False) – Whether to return a dictionary describing the intensity profile
- Returns:
- u coefficients of the least-squares polynomial fit to the intensity profile
created by the limb-darkening law across a dense grid of mu values
- dict (if return_profile=True):
Dictionary describing the intensity profile
- Return type:
Array