meepmeep.numba3d.ev_signal_od

Contents

meepmeep.numba3d.ev_signal_od#

meepmeep.numba3d.ev_signal_od(alpha, mass_ratio, inc, t, tpa, p, dt, ep_table, ep_times, coeffs, dcoeffs)[source]#

Ellipsoidal variation signal with gradients.

Accepts a scalar time or a 1-D array of times and dispatches to the scalar (_ev_signal_osd()) or vector (ev_signal_ovd()) kernel at compile time (inside @njit) or at call time (pure Python).

Implements \(S = -\alpha\,q\,\sin^2 i\,(2 c_z^2 - 1) / d^3\) where \(c_z = z/d\) and \(d = \sqrt{x^2 + y^2 + z^2}\). The inc argument is the orbital inclination; its full derivative (the implicit position contribution plus the explicit sin^2 i prefactor) is accumulated into the single inclination slot (slot 3).

Time argument is the 4th positional.

Derivative ordering: (tc, p, a, i, e, w, lan, alpha, mass_ratio) - length 9.

Parameters:
alphafloat

Gravity-darkening coefficient (Lillo-Box et al. 2014, Eq. 7).

mass_ratiofloat

Planet-to-star mass ratio \(M_p / M_\star\).

incfloat

Orbital inclination [radians]. The same quantity as the i axis of the gradient; its full derivative lands in slot 3.

tfloat or ndarray

Time(s) at which to evaluate the signal and gradient.

tpa, p, dt, ep_table, ep_times, coeffs, dcoeffs

See _pos_osd().

Returns:
outfloat or ndarray

Ellipsoidal variation signal. Arrays of shape (N,) for an array time argument.

doutndarray

Gradient w.r.t. (tc, p, a, i, e, w, lan, alpha, mass_ratio). Shape (9,) for a scalar time, (N, 9) for an array time.