Light Curve Models

Created on Thurs Jun 13 09:52 2024

@author: MCR

Functions for creating light curve models.

class exouprf.light_curve_models.LightCurveModel(input_parameters, t, lc_model_type, linear_regressors=None, observations=None, gp_regressors=None, ld_model='quadratic', silent=False, lc_model_functions=None)

Secondary exoUPRF class. Creates light curve models given a set of input parameters and light curve model function.

compute_lightcurves(initialize=False)

Given a set of input parameters, compute a light curve model.

Parameters:

initialize (bool) – If True, just initialize the model.

simulate_observations()

Given a light curve model and expected scatter, simulate some fake observations.

update_parameters(input_parameters)

Update the planet parameter dictionary with new values.

Parameters:

input_parameters (dict) – Dictionary of input parameters and values. Should have form {parameter: value}.

exouprf.light_curve_models.asymmetric_transit(t, pl_params, ld, ld_model='quadratic', m=None, return_m=False)

Calculate an asymmetric transit model using catwoman.

Parameters:
  • t (ndarray(float)) – Time stamps at which to calculate the light curve.

  • pl_params (dict) – Dictionary of input parameters. Must contain the following: t0, time of mid-transit per, planet orbital period in days rp, planet-to-star radius ratio for top semi-circle rp2, planet-to-star radius ratio for bottom semi-circle a, planet semi-major axis in units of stellar radii inc, planet orbital inclination in degrees ecc, planet orbital eccentricity w, planet argument of periastron phi, angle of rotation of top semi-circle (e.g., 90deg yields side-by-side geometry).

  • ld (list(float)) – List of limb darkening parameters.

  • ld_model (str) – BATMAN limb darkening identifier.

  • m (batman.transitmodel) – Initialized transit model.

  • return_m (bool) – If True, return the intialized model.

Returns:

flux – Model light curve.

Return type:

ndarray(float)

exouprf.light_curve_models.exp_ramp(t, ramp_amp, ramp_tmsc)

Calculate an exponential ramp.

exouprf.light_curve_models.quad_curvature(t, t0, curv_amp, curv_off)

Calculate quadratic curvature with a variable amplitude and offset from mid-transit.

exouprf.light_curve_models.simple_eclipse(t, pl_params, m=None, return_m=False)

Calculate a simple eclipse model.

Parameters:
  • t (ndarray(float)) – Time stamps at which to calculate the light curve.

  • pl_params (dict) – Dictionary of input parameters. Must contain the following: t0, time of mid-transit per, planet orbital period in days rp, planet-to-star radius ratio a, planet semi-major axis in units of stellar radii inc, planet orbital inclination in degrees ecc, planet orbital eccentricity w, planet argument of periastron tsec, time of secondary eclipse fp, planet-to-star flux ratio.

  • m (batman.transitmodel) – Initialized transit model.

  • return_m (bool) – If True, return the intialized model.

Returns:

flux – Model light curve.

Return type:

ndarray(float)

exouprf.light_curve_models.simple_transit(t, pl_params, ld, ld_model='quadratic', m=None, return_m=False)

Calculate a simple transit model.

Parameters:
  • t (ndarray(float)) – Time stamps at which to calculate the light curve.

  • pl_params (dict) – Dictionary of input parameters. Must contain the following: t0, time of mid-transit per, planet orbital period in days rp, planet-to-star radius ratio a, planet semi-major axis in units of stellar radii inc, planet orbital inclination in degrees ecc, planet orbital eccentricity w, planet argument of periastron.

  • ld (list(float)) – List of limb darkening parameters.

  • ld_model (str) – BATMAN limb darkening identifier.

  • m (batman.transitmodel) – Initialized transit model.

  • return_m (bool) – If True, return the intialized model.

Returns:

flux – Model light curve.

Return type:

ndarray(float)

exouprf.light_curve_models.spot_crossing(t, spot_amp, spot_pos, spot_dur)

Calculate a Gaussian spot model.