meepmeep.numba3d.lambert_phase_curve#
- meepmeep.numba3d.lambert_phase_curve(time: float | ndarray[tuple[Any, ...], dtype[_ScalarT]], ag: float, k: float, tc: float, p: float, c: ndarray[tuple[Any, ...], dtype[_ScalarT]], te: float = 0.0) float | ndarray[tuple[Any, ...], dtype[_ScalarT]][source]#
Evaluate the Lambertian phase-curve flux contribution at an absolute time.
Folds the absolute observation time back to an expansion-point-centered offset and delegates to the centered kernel. Evaluates \(F = (k/r)^2\, A_g\, f(\alpha)\) where \(f\) is the Lambert kernel, \(\alpha\) the instantaneous phase angle, and \(r\) the instantaneous star-planet distance in stellar radii.
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:
- time
floatorNDArray Absolute observation time(s).
- ag
float Geometric albedo.
- k
float Planet-to-star radius ratio \(R_p/R_\star\).
- tc
float Transit-centre time (time of inferior conjunction), on the same time axis as time.
- p
float Orbital period.
- c
NDArray A (3, 5) coefficient matrix produced by solve3d.
- te
float, optional Expansion-point offset from the transit centre [days] - the same value that was passed to solve3d. Defaults to 0.0, the expansion point at the transit centre.
- time
- Returns:
- flux
floatorNDArray Reflected planet-to-star flux ratio. Shape (N,) for an array time.
- flux