[docs]defcompute_direct_image_final_flux(f_total:npt.NDArray[np.float64],planet_radius:float,star_distance:float,)->npt.NDArray[np.float64]:"""Compute the final flux at the observer."""returnf_total*(planet_radius**2)/(star_distance**2)
[docs]classDirectImageModel(EmissionModel):"""A forward model for direct imaging of exo-planets."""
[docs]defcompute_final_flux(self,f_total:npt.NDArray[np.float64])->npt.NDArray[np.float64]:"""Compute the final flux. This is the emission flux that is observed at the telescope directly from an exo-planet. """returncompute_direct_image_final_flux(f_total,self._planet.fullRadius,self._star.distance*3.08567758e16)
[docs]@classmethoddefinput_keywords(cls)->t.Tuple[str,...]:"""Input keywords for this class."""return("direct","directimage",)