Skip to content

Overview

ZodiPy logo

astropy PyPI - Python Version PyPI Project Status: Active – The project has reached a stable, usable state and is being actively developed. Actions Status GitHub Actions Workflow Status Codecov arXiv Paper ascl:2306.012

ZodiPy is an Astropy affiliated package for simulating zodiacal light in intensity for arbitrary Solar system observers. ZodiPy Logo

A simple example

import astropy.units as u
from astropy.time import Time

from zodipy import Zodipy


model = Zodipy("dirbe")

emission = model.get_emission_ang(
    25 * u.micron,
    theta=[10, 10.1, 10.2] * u.deg,
    phi=[90, 89, 88] * u.deg,
    obs_time=Time("2022-01-01 12:00:00"),
    obs="earth",
    lonlat=True,
)

print(emission)
#> [15.53095493 15.52883577 15.53121942] MJy / sr

What's going on here:

  • We start by initializing the Zodipy class, which is our interface, where we specify that we want to use the DIRBE interplanetary dust model.
  • We use the get_emission_ang method which is a method to simulate emission from angular sky coordinates (see the reference for other available simulation methods).
  • The first argument to the get_emission_ang method, 25 * u.micron, specifies the wavelength of the simulated observation. Note that we use Astropy units for many of the input arguments.
  • theta and phi represent the pointing of the observation (co-latitude and longitude, following the healpy convention). In this example we observe three sky coordinates.
  • obs_time represents the time of observation, which we need to compute the position of the observer and all other required solar system bodies.
  • obs represents the observer, and must be an solar system observer supported by the Astropy ephemeris used internally. If we wish to be more specific about the observer position, we can use the obs_pos keyword instead of obs, which takes in a heliocentric cartesian position in units of AU.
  • Finally, lonlat is a boolean which converts the convention of theta and phi from co-latitude and longitude to longitude and latitude.

For more information on using ZodiPy, see the usage section.