meepmeep.numba3d.emission_phase_curve_c

meepmeep.numba3d.emission_phase_curve_c#

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

Evaluate the cosine emission phase-curve flux at an expansion-point-centered time.

Centered counterpart of emission_phase_curve: assumes time has already been shifted to be relative to the expansion point. Returns the planet-to-star flux ratio of a simple cosine thermal-emission model, \(F = k^2\,f_\mathrm{ratio}\,(1 + \cos\delta\,c_z + \sin\delta\,s)/2\), where \(c_z = -z/d\) is the cosine of the phase angle, \(s\) the signed in-plane component built from the orbital normal, and \(\delta\) the hotspot offset. The flux peaks at \(k^2 f_\mathrm{ratio}\) when the hotspot faces the observer and falls to 0 on the far side.

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.

kfloat

Planet-to-star radius ratio \(R_p/R_\star\).

fratiofloat

Dayside-to-nightside per-surface-element flux ratio, scaling the phase-curve amplitude so the peak-to-peak swing is \(k^2 f_\mathrm{ratio}\).

offsetfloat

Hotspot offset [radians]. Shifts the emission peak away from secondary eclipse.

cNDArray

A (3, 5) coefficient matrix produced by solve3d. Both the position and velocity (its time derivative) are read.

Returns:
fluxfloat or NDArray

Reflected/emitted planet-to-star flux ratio. Shape (N,) for an array time.