meepmeep.numba3d.sep_c

Contents

meepmeep.numba3d.sep_c#

meepmeep.numba3d.sep_c(time: float | ndarray[tuple[Any, ...], dtype[_ScalarT]], c: ndarray[tuple[Any, ...], dtype[_ScalarT]]) float | ndarray[tuple[Any, ...], dtype[_ScalarT]][source]#

Evaluate the sky-projected planet-star separation in units of stellar radii at an expansion-point-centered time.

Centered counterpart of sep: assumes time has already been shifted to be relative to the expansion point. Only the x and y Taylor polynomials are evaluated; the z polynomial is skipped because the sky projection drops the line-of-sight component.

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

Parameters:
timefloat or NDArray

Time relative to the Taylor series expansion point.

cNDArray

A (3, 5) coefficient matrix produced by solve3d. Only rows 0 and 1 (x and y) are read.

Returns:
dfloat or NDArray

Sky-projected planet-star separation in units of stellar radii. Always non-negative.

Notes

Unlike the 2D analogue, which delegates to pos_c, this routine inlines the px/py Horner evaluations to avoid the wasted work of computing the z coefficient that pos_c would also evaluate.