Orbital Motion

pyLIMA.orbitalmotion.orbital_motion_2D.orbital_motion_2D_separation_shift(time, t0_om, ds_dt)

Compute the separation change induced by the linear orbital motion of the lens.

Parameters:
  • time (array, containing the time to treat)

  • t0_om (float, the time of reference of the orbital motion)

  • ds_dt (float, the linear rate of lens separation)

Returns:

  • dseparation (array, containts the variation of the lens separation du to the)

  • motion of the lens

pyLIMA.orbitalmotion.orbital_motion_2D.orbital_motion_2D_trajectory_shift(time, t0_om, dalpha_dt)

Compute the trajectory curvature induced by the linear orbital motion of the lens.

Parameters:
  • time (array, containing the time to treat)

  • t0_om (float, the time of reference of the orbital motion)

  • dalpha_dt (float, the linear rate of lens rotation)

Returns:

  • dalpha (array, containts the variation of the lens trajectory angle du to the)

  • motion of the lens

pyLIMA.orbitalmotion.orbital_motion_3D.eccentric_anomaly_function(time, ellipticity, t_periastron, speed)

Solve the Kepler equation, see https://github.com/dfm/kepler.py

Parameters:
  • time (array, the time to treat)

  • ellipticity (float, the eccentricity of the orbit)

  • t_periastron (float, the time of periastron of the orbit)

  • speed (float, the orbital velocity)

Returns:

eccentricities

Return type:

array, the associated eccentric anomalies at time t

pyLIMA.orbitalmotion.orbital_motion_3D.orbital_motion_keplerian(time, pyLIMA_parameters, om_model)

” Circular and Keplerian orbital motion of the lens. Use the same parametrization from Bozza 2021. See https://ui.adsabs.harvard.edu/abs/2021MNRAS.505..126B/abstract

Parameters:
  • time (array, containing the time to treat)

  • pyLIMA_parameters (a pyLIMA_parameters object)

  • om_model (list, [str,float] the orbital motion model)

Returns:

  • dseparation (array, containts the variation of the lens separation due to the)

  • motion of the lens

  • dalpha (array, containts the variation of the lens trajectory angle due to the)

  • motion of the lens

pyLIMA.orbitalmotion.orbital_motion_3D.orbital_parameters_from_position_and_velocities(separation_0, r_s, a_s, v_para, v_perp, v_radial, t0_om)

Compute the (unscaled!, i.e. GMass is not known) orbital parameters from the microlensing parameters See https://ui.adsabs.harvard.edu/abs/2021MNRAS.505..126B/abstract

Parameters:
  • separation_0 (float, the binary separation at t0_om)

  • r_s (float, the ratio of the radial separation s_z over the projected separation)

  • s_0

  • a_s (float, the ratio of the microlesing separation over the true (unscaled))

  • axis (semi-major)

  • v_para (float, the rotation speed along the s_0 axis, i.e. 1/s ds/dt)

  • v_perp (float, the rotation speed perpendicular to s_0 axis, i.e. dalpha/dt)

  • v_radial (float, the rotation speed in the z axis, i.e. 1/s ds_z/dt)

  • t0_om (float, the time of reference of the orbital _motion model)

Returns:

  • longitude_ascending_node (float)

  • inclination (float)

  • omega_peri (float)

  • orbital_velocity (float)

  • eccentricity (float)

  • true_anomaly (float)

  • t_periastron (float)

  • x_0 (float, the first column of the Rotation matrix)

  • y_0 (float, the second column of the Rotation matrix)

  • z_0 (float, the first column of the Rotation matrix)

pyLIMA.orbitalmotion.orbital_motion_3D.state_orbital_elements(separation_0, r_s, a_s, v_para, v_perp, v_radial)

Compute the stated orbital parameters from the microlensing parameters See https://ui.adsabs.harvard.edu/abs/2021MNRAS.505..126B/abstract

Parameters:
  • separation_0 (float, the binary separation at t0_om)

  • r_s (float, the ratio of the radial separation s_z over the projected separation)

  • s_0

  • a_s (float, the ratio of the microlesing separation over the true (unscaled))

  • axis (semi-major)

  • v_para (float, the rotation speed along the s_0 axis, i.e. 1/s ds/dt)

  • v_perp (float, the rotation speed perpendicular to s_0 axis, i.e. dalpha/dt)

  • v_radial (float, the rotation speed in the z axis, i.e. 1/s ds_z/dt)

Returns:

  • e_0 (array, the eccentricity vector)

  • h_0 (array, the specific angular momentum vector)

  • r_0 (array, the microlensing separation vector at time t0_om)

  • v_0 (array, the microlensing speed vector at time t0_om)

  • r_norm (float, the norm of the separation vector)

  • separation_z (float, the radial separation)

  • a_true (float,the semi-major-axis)

  • GMass (float, the unscaled mass)

  • orbital_velocity (float, the orbital velocity of the lens)