:py:mod:`pytmosph3r.planetary_system.orbit.orbit_circular` ========================================================== .. py:module:: pytmosph3r.planetary_system.orbit.orbit_circular Module Contents --------------- .. py:function:: neg_pi(x) Simply get negative values for 2*Pi > x > Pi. .. py:class:: CircularOrbit(a: Union[None, float, astropy.units.Quantity[pytmosph3r.util.pt.length]] = None, period: Union[None, float, astropy.units.Quantity[pytmosph3r.util.pt.time]] = None, star_coordinates: Tuple[float, float] = None, inclination: Union[float, astropy.units.Quantity[pytmosph3r.util.pt.angle]] = None) Bases: :py:obj:`pytmosph3r.planetary_system.orbit.base.Orbit` This class implement the default behaviour for the trajectory of a planet, ie a circular orbit with tidal lock. :param a: Distance between the star and the planet in meter (m), if none provided default to 1 AU :type a: Optional[float] :param period: Orbital period in seconds. :type period: Optional[float] :param star_coordinates: Defines the coordinates of the star (latitude, longitude) in the planetary coordinate system if needed. Used for emission (top flux) for example. By default, the position is ( 0, 0). :type star_coordinates: tuple :param inclination: Inclination of the orbit in radians (rad). :type inclination: float .. py:property:: a .. py:property:: inclination .. py:property:: period .. py:property:: star_coordinates .. py:property:: is_tidal_locked :type: bool .. py:method:: build(model=None) .. py:method:: r(true_anomaly: float = 0) -> float Returns the distance between the star and the planet in `m`. :param true_anomaly (): True anomaly in radian. .. py:method:: time(phase) Converts phase (in radians) to time (in seconds), using :attr:`period`. .. py:method:: phase(time) Converts time (in seconds) to phase (in radians), using :attr:`period`. .. py:method:: star_coordinates_projected(phase) Taken from `pytmosph3r.util.geometry.CircleIntersection.star_coordinates` .. py:method:: obs_long_to_phase(longitude) Converts the `longitude` of an observer (in :math:`rad`) to the `phase` of the transit. The phase is defined as equal to 0 during mid-transit and increasing during transit. The longitude of the observer is equal to :math:`pi` + :attr:`substellar_longitude` at mid transit (and also increasing). .. py:method:: phase_to_obs_long(phase) Converts a phase (in :math:`rad`) to the longitude of the observer. See definition of phase and observer in :func:`obs_long_to_phase` below. .. py:method:: phase_from_observer(obs_loc=(0, np.pi)) Calculates the phase of the transit using the coordinates of the observer and the star (in :math:`rad`). The phase is defined as equal to 0 at mid-transit and increasing during transit. .. py:method:: observer_from_phase(phase=0) Calculates the phase of the transit using the coordinates of the observer and the star (in :math:`rad`). The phase is defined as equal to 0 at mid-transit and increasing during transit. This function only supports stars at the equator (0) or at the pole (+/-Pi/2). :param phase: phase in `rad` :type phase: float .. py:method:: observer_from_time(time=0) Function to convert time to observer position. .. py:method:: time_from_observer(observer) Function to get time from observer position.