Orbit

class maelstrom.orbit.Orbit(period=None, lighttime=None, freq=None, eccen=None, omega=None, phi=None)[source]
This class defines an orbit model which solves the time delay equations

for given input parameters and times. The orbit model can return either a synthetic light curve composed of freq sinusoids which are phase modulated with the orbital parameters, or instead can return a synthetic time delay curve. Orbit will also solve radial velocity curves given the same parameters.

Parameters
  • period (pymc3.model.FreeRV, optional) – Orbital period tensor. Defaults to None.

  • lighttime (pymc3.model.FreeRV, optional) – Projected semi-major axis tensor. Defaults to None.

  • freq (array or pymc3.model.FreeRV, optional) – Frequencies used in the model. Defaults to None.

  • eccen (pymc3.model.FreeRV, optional) – Eccentricity tensor. Defaults to None.

  • omega (pymc3.model.FreeRV, optional) – Periapsis tensor. Defaults to None.

  • phi (pymc3.model.FreeRV, optional) – Phase of periapsis tensor. Defaults to None.

get_lightcurve_model(time, flux)[source]

Calculates a synthetic light curve given the orbital parameters of the Orbit object and supplied times and fluxes. The orbit.freq are phase modulated with binary motion.

Parameters
  • time (array) – Time-stamps

  • flux (array) – Flux values for each time

Returns

Synthetic light curve

Return type

array

get_radial_velocity(time)[source]

Calculates the radial velocity for the given time values

Parameters

time (array) – time values

Returns

RV values

Return type

array

get_time_delay(time)[source]

Calculates the time delay for the given time values.

Parameters

time (array) – Time values at which to calculate tau.

Returns

Time delay values for each time

Return type

array