Source code for taurex.model.directimage

from .emission import EmissionModel
from taurex.constants import PI


[docs]class DirectImageModel(EmissionModel): """ A forward model for direct imaging of exo-planets Parameters ---------- planet: :class:`~taurex.data.planet.Planet`, optional Planet model, default planet is Jupiter star: :class:`~taurex.data.stellar.star.Star`, optional Star model, default star is Sun-like pressure_profile: :class:`~taurex.data.profiles.pressure.pressureprofile.PressureProfile`, optional Pressure model, alternative is to set ``nlayers``, ``atm_min_pressure`` and ``atm_max_pressure`` temperature_profile: :class:`~taurex.data.profiles.temperature.tprofile.TemperatureProfile`, optional Temperature model, default is an :class:`~taurex.data.profiles.temperature.isothermal.Isothermal` profile at 1500 K chemistry: :class:`~taurex.data.profiles.chemistry.chemistry.Chemistry`, optional Chemistry model, default is :class:`~taurex.data.profiles.chemistry.taurexchemistry.TaurexChemistry` with ``H2O`` and ``CH4`` nlayers: int, optional Number of layers. Used if ``pressure_profile`` is not defined. atm_min_pressure: float, optional Pressure at TOA. Used if ``pressure_profile`` is not defined. atm_max_pressure: float, optional Pressure at BOA. Used if ``pressure_profile`` is not defined. ngauss: int, optional Number of gaussian quadrature points, default = 4 """ def __init__(self, planet=None, star=None, pressure_profile=None, temperature_profile=None, chemistry=None, nlayers=100, atm_min_pressure=1e-4, atm_max_pressure=1e6, ngauss=4, ): super().__init__(planet, star, pressure_profile, temperature_profile, chemistry, nlayers, atm_min_pressure, atm_max_pressure, ngauss=ngauss)
[docs] def compute_final_flux(self, f_total): star_distance_meters = self._star.distance*3.08567758e16 SDR = pow((star_distance_meters/3.08567758e16), 2) SDR = 1.0 planet_radius = self._planet.fullRadius return((f_total * (planet_radius**2) * 2.0 * PI) / (4 * PI * (star_distance_meters**2))) * SDR
[docs] @classmethod def input_keywords(self): return ['direct', 'directimage' ]