From cb9422ff466b3b335d86438ff13f8f8d44714e9f Mon Sep 17 00:00:00 2001 From: Metin San Date: Tue, 30 Jul 2024 11:56:57 +0200 Subject: [PATCH] Update docs --- docs/examples/ecliptic_scan.py | 9 +- docs/img/ecliptic_scan.png | Bin 91474 -> 91420 bytes docs/index.md | 12 +- docs/install.md | 2 +- docs/introduction.md | 14 ++- docs/reference.md | 2 +- docs/usage.md | 217 ++++++++++++++++++++------------- zodipy/model.py | 84 ++++++------- zodipy/number_density.py | 21 ++-- 9 files changed, 206 insertions(+), 155 deletions(-) diff --git a/docs/examples/ecliptic_scan.py b/docs/examples/ecliptic_scan.py index 6b29eb4..6b621f3 100644 --- a/docs/examples/ecliptic_scan.py +++ b/docs/examples/ecliptic_scan.py @@ -2,21 +2,24 @@ import matplotlib.pyplot as plt import numpy as np from astropy.coordinates import BarycentricMeanEcliptic, SkyCoord -from astropy.time import Time +from astropy.time import Time, TimeDelta from zodipy import Model model = Model(30 * u.micron) -# Longitude and Latitude values corresponding to a scan through the eclitpic plane lats = np.linspace(-90, 90, 100) * u.deg lons = np.zeros_like(lats) +t0 = Time("2022-06-14") +dt = TimeDelta(1, format="sec") +obstimes = t0 + np.arange(lats.size) * dt + coords = SkyCoord( lons, lats, frame=BarycentricMeanEcliptic, - obstime=Time("2022-06-14"), + obstime=obstimes, ) emission = model.evaluate(coords) diff --git a/docs/img/ecliptic_scan.png b/docs/img/ecliptic_scan.png index 1ed41124bd8008d8953fe601da9b04f977413a27..a858d06718d483331f25cd09b7363a0014ee1edd 100644 GIT binary patch literal 91420 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 IbxsLQ0E+jdMF0Q* literal 91474 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 [27.52410841 27.66572294 27.81251906] MJy / sr ``` -For more information on using ZodiPy, see [the usage section](usage.md). +For more information on using ZodiPy, see the [usage section](usage.md). diff --git a/docs/install.md b/docs/install.md index 7c960ec..cb02be5 100644 --- a/docs/install.md +++ b/docs/install.md @@ -10,7 +10,7 @@ pip install zodipy ## Dependencies -ZodiPy has the following dependencies: +ZodiPy has the following dependencies (these are automatically downloaded when using pip): - [Astropy](https://www.astropy.org) (>= 5.0.1) - [NumPy](https://numpy.org) diff --git a/docs/introduction.md b/docs/introduction.md index 335820d..990fd6e 100644 --- a/docs/introduction.md +++ b/docs/introduction.md @@ -1,8 +1,12 @@ # Introduction -ZodiPy is a Python package for zodiacal light simulations. Its purpose is to provide the astrophysics and cosmology communities with an easy-to-use and accessible interface to existing zodiacal light models in Python, assisting in astrophysical data analysis and zodiacal light forecasting for future experiments. +ZodiPy is a Python package for zodiacal light simulations. Its purpose is to provide the +astrophysics and cosmology communities with an easy-to-use and accessible interface to existing +zodiacal light models in Python, assisting in astrophysical data analysis and zodiacal light +forecasting for future experiments. -For other zodiacal light tools, see [Zodiacal Light Models on LAMBDA](https://lambda.gsfc.nasa.gov/product/foreground/fg_models.html). +For other zodiacal light tools, see +[Zodiacal Light Models on LAMBDA](https://lambda.gsfc.nasa.gov/product/foreground/fg_models.html). ## Supported zodiacal light models @@ -13,9 +17,11 @@ For other zodiacal light tools, see [Zodiacal Light Models on LAMBDA](https://la - Planck 2018 [`"planck18"`] ([Planck Collaboration et al. 2020](https://ui.adsabs.harvard.edu/abs/2020A&A...641A...3P)) - Odegard [`"odegard"`] ([Odegard et al. 2019](https://ui.adsabs.harvard.edu/abs/2019ApJ...877...40O/abstract)) -The names in the brackets are the string representations used in the `zodipy.Model` object to select the model. +The names in the brackets are the string representations used in the [`Model`][zodipy.Model] object +to select the model. -If you see a missing model or wish to add a new one, please open an issue on GitHub. Contributors are very welcome! +If you see a missing model or wish to add a new one, please feel free to open an issue on GitHub. +Contributors are very welcome! ## Related scientific papers diff --git a/docs/reference.md b/docs/reference.md index 02643d6..082baae 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -1,3 +1,3 @@ # Reference -::: zodipy.Model \ No newline at end of file +::: zodipy \ No newline at end of file diff --git a/docs/usage.md b/docs/usage.md index b0a9f65..4934f3f 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -1,19 +1,24 @@ !!! warning "Breaking API changes in `v1.0.0`" - From version `v1.0.0` the `get_emission_ang` and `get_emission_pix` methods are deprecated and removed. See the section on [HEALPix maps](usage.md#healpix-maps) for an example of how to make simulations from HEALPix pixel indices. These are changes following the integration of ZodiPy into the Astropy ecosystem. + In version `v1.0.0` the `get_emission_*` and `get_binned_emission_*` methods were deprecated + and removed. Users wanting to simulate zodiacal light directly from HEALPix pixel indices should + see the [HEALPix](usage.md#healpix) section under [examples](usage/#examples). -As an Astropy-affiliated package, ZodiPy is highly integrated with the astropy ecosystem. -To make zodiacal light simulations, the `astropy.units`, `astropy.coordinates`, and `astropy.time` modules are used to provide user input. The coordinates for which ZodiPy will simulate the zodiacal light is specified in through the `astropy.coordinates.SkyCoord` object. Using ZodiPy is very simple and the user will only interact with *one* object `zodipy.Model`, which has *one* method `evaluate`. +As an Astropy-affiliated package, ZodiPy is highly integrated with the Astropy ecosystem, +particularly with the [`astropy.units`](https://docs.astropy.org/en/stable/units/), +[`astropy.coordinates`](https://docs.astropy.org/en/stable/coordinates/index.html), and +[`astropy.time`](https://docs.astropy.org/en/stable/time/index.html) modules. -## Initializing Zodipy -### Working with the `Model` class -The interface to ZodiPy is the `zodipy.Model` class +## Initializing a zodiacal light model +To make zodiacal light simulations we must first import and initialize a zodiacal light model ```py hl_lines="2 4" import astropy.units as u import zodipy model = zodipy.Model(25 * u.micron) ``` -It has *one* required positional argument `x`, which represents a center wavelength/frequency or the points of an empirical bandpass. If `x` represents the points of a bandpass, the `weights` argument must also be provided +The [`zodipy.Model`][zodipy.Model] object has *one* required positional argument, `x`, which can +either represent a center wavelength/frequency or the points of an empirical bandpass. If `x` +represents the points of an instrument bandpass, the `weights` argument must also be provided ```py hl_lines="4 5 7" import astropy.units as u import zodipy @@ -24,22 +29,45 @@ weights = [0.2, 0.4, 0.3, 0.1] model = zodipy.Model(points, weights=weights) ``` -ZodiPy supports several zodiacal light models (see the [introduction](introduction.md) page for more information regarding the supported models), which are all valid in wavelength/frequency ranges. By default, the `Model` object will initialize using the DIRBE model. To select a different model, we specify the keyword argument `name` +ZodiPy supports [several zodiacal light models](introduction.md) valid at different +wavelength/frequency ranges. By default, a [`Model`][zodipy.Model] will initialize on the +[DIRBE model](https://ui.adsabs.harvard.edu/abs/1998ApJ...508...44K/abstract). To select another +model, for instance the [Planck 2013 model](https://ui.adsabs.harvard.edu/abs/2014A%26A...571A..14P/metrics) , +we need to specify the `name` keyword in the model constructor ```py hl_lines="4" import astropy.units as u import zodipy -model = zodipy.Model(25 * u.micron, name="planck18") +model = zodipy.Model(25 * u.micron, name="planck13") ``` -## Simulating zodiacal light -To make zodiacal light simulations ZodiPy needs to know three things: 1) Sky coordinates for which to simulate zodiacal light; 2) The position of the observer to know where the vertex of the rays is positioned; and 3) the time of observation, used to query the position of Earth. -### The SkyCoord object -The sky coordinates for which to simulate zodiacal light is given to ZodiPy using Astropy's `astropy.coordinates.SkyCoord` object. Users unfamiliar with the `SkyCoord` object should visit the [official Astropy documentation](https://docs.astropy.org/en/stable/coordinates/index.html) before using ZodiPy to learn the basics. - - -For a single observation in galactic coordinates, the `SkyCoord` object may look something like -```py hl_lines="2 5 6 7 8 9 10" +Other possible keyword arguments to the [`zodipy.Model`][zodipy.Model] are `gauss_quad_degree`, +which determines the number of discrete points evaluated along each line-of-sight, `extrapolate`, +which, if set to `True`, uses linear interpolation to extrapolate the frequency/wavelength dependent +model parameters allowing the model to be evaluated outside of it's original bounds, and finally, +`ephemeris`, which one can use to specify the +[solar system ephemeris](https://docs.astropy.org/en/stable/coordinates/solarsystem.html). used to +compute the position of the Earth and optionally the observer. + +## Evaluating a zodiacal light model +To make zodiacal light simulations ZodiPy needs some inputs data from the user: + +1. **Sky coordinates**. Provided through Astropy's +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object. +2. **Time of observeration(s)**. Also provided in the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object. +3. **Position(s) of the observer**. Provided in a separate argument when evaluating the model. + +### The [`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object +Users unfamiliar with Astropy's +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) should first +visit the [official Astropy docs](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) +to learn the basics. + +For a single observation in galactic coordinates, the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object may +look something like the following: +```py hl_lines="2 3 5 6 7 8 9 10" import astropy.units as u from astropy.coordinates import SkyCoord from astropy.time import Time @@ -48,11 +76,22 @@ skycoord = SkyCoord( 40 * u.deg, 60 * u.deg, obstime=Time("2020-01-01"), - frame="galactic" ) ``` -The `obstime` keyword is mandatory, and is given by an `astropy.time.Time` object, which can represent time in many formats, including Julian and modified Julian dates (see the [Astropy documentation](https://docs.astropy.org/en/stable/time/)). -Correspondingly for several observations, each with their own `obstime` input: +where the coordinates here are specified as longitude and latitude values. Note that the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object is very +flexible and supports many +[different formats](https://docs.astropy.org/en/stable/coordinates/skycoord.html#examples) for the +coordinates. + +The `obstime` keyword is mandatory and is given by the Astropy +[`Time`](https://docs.astropy.org/en/stable/time/ref_api.html#module-astropy.time) object, which can + represent time in many formats, including regular and modified Julian dates (see the + [`Time` docs](https://docs.astropy.org/en/stable/time/) for more information). + +For several observations, each with their own `obstime` input, the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) may instead +look like the following: ```py hl_lines="6 7 8" import astropy.units as u from astropy.coordinates import SkyCoord @@ -62,58 +101,58 @@ skycoord = SkyCoord( [40, 41, 42] * u.deg, [60, 59, 58] * u.deg, obstime=Time(["2020-01-01", "2020-01-02", "2020-01-03"]), - frame="galactic" ) ``` -If a single value is given for `obstime`, all coordinates are assumed to be viewed instantaneously at that time from a single position in the Solar system. Otherwise, each coordinate must have its own `obstime` value. +If a single value is given for `obstime`, all coordinates are assumed to be viewed instantaneously +at that time from a single position in the solar system. Otherwise, each coordinate must have its +own `obstime` value. + +The sky coordinates should represent observer-centric coordinates. The observer-position is +therefore required to compute the line-of-sight integrals, but this is provided not in the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object, but + rather in the [`evaluate`][zodipy.Model.evaluate] method, which we will see soon. + +The coordinate frame in the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object +defaults to the [`ICRS`](https://docs.astropy.org/en/stable/api/astropy.coordinates.ICRS.html) frame, +but can be changed by providing the `frame` keyword argument: +```py hl_lines="9" +import astropy.units as u +from astropy.coordinates import SkyCoord +from astropy.time import Time -The sky coordinates should represent observer-centric coordinates. The observer-position is therefore required to compute the line-of-sight integrals, but this is provided not in the `SkyCoord` object, but rather in the `evaluate` method which we will see soon. +skycoord = SkyCoord( + [40, 41, 42] * u.deg, + [60, 59, 58] * u.deg, + obstime=Time(["2020-01-01", "2020-01-02", "2020-01-03"]), + frame="galactic", +) +``` -Common coordinate frames are the Ecliptic, Galactic, and Celestial frames ("E", "G", "C" in `healpy`), which can be specified through string representations: +Common coordinate frames are the Ecliptic, Galactic, and Celestial frames (these are represented as +"E", "G", "C" in [`healpy`](https://healpy.readthedocs.io/en/latest/)), which can be specified +either through string representations: - `"barycentricmeanecliptic"` (Ecliptic) - `"galactic"` (Galactic) - `"icrs"` (Celestial) -or using the frame objects imported from `astropy.coordinates`: +or through frame objects imported from `astropy.coordinates`: -- `BarycentricMeanEcliptic` -- `Galactic` -- `ICRS` +- [`BarycentricMeanEcliptic`](https://docs.astropy.org/en/stable/api/astropy.coordinates.BarycentricMeanEcliptic.html) +- [`Galactic`](https://docs.astropy.org/en/stable/api/astropy.coordinates.Galactic.html) +- [`ICRS`](https://docs.astropy.org/en/stable/api/astropy.coordinates.ICRS.html) !!! info "Notes on coordinate frames" - While the above listed built-in Astropy frames do *not* represent observer-centric coordinate frames, - we still use these to specify the frame rotation, which is required internally as the model is evaluated in - ecliptic coordinates. - -In the following, we show three sets of observations in all three coordinate frames -```py hl_lines="2 9 15 21" -import astropy.units as u -from astropy.coordinates import SkyCoord, BarycentricMeanEcliptic, Galactic, ICRS -from astropy.time import Time - -skycoord_ecliptic = SkyCoord( - 40 * u.deg, - 60 * u.deg, - obstime=Time("2020-01-01"), - frame=BarycentricMeanEcliptic -) -skycoord_galactic = SkyCoord( - 203 * u.deg, - 10 * u.deg, - obstime=Time("2020-01-01"), - frame=Galactic -) -skycoord_celestial = SkyCoord( - 12 * u.deg, - 40 * u.deg, - obstime=Time("2020-01-01"), - frame=ICRS -) -``` + Note that these built-in Astropy frames do not inherently represent observer-centric coordinate + frames. However this is fine, since we only need to know the rotation of the coordinates with + respect to the ecliptic plane (internally, the coordinates are manually shifted to heliocentric + coordinates using the `obspos` value)- -### The `evaluate` method -The zodiacal light is evaluated by providing the `SkyCoord` object to the `zodipy.Model.evaluate` method. +### The [`evaluate`][zodipy.Model.evaluate] method +The zodiacal light is evaluated by providing the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object to the +[`evaluate`][zodipy.Model.evaluate] method. ```py hl_lines="15" import astropy.units as u @@ -134,7 +173,11 @@ emission = model.evaluate(skycoord) print(emission) # ``` -By default, the observer is assumed to be the center of the Earth. The position of the observer can be explicitly provided as the keyword argument `obspos` in the `evaluate` method +By default, the observer is assumed to be the center of the Earth. In this case the Earth position is +computed internally using Astropy's +[solar system ephemeris](https://docs.astropy.org/en/stable/coordinates/solarsystem.html). +The position of the observer can be explicitly provided through the keyword argument `obspos` in the + [`evaluate`][zodipy.Model.evaluate] method ```py hl_lines="15 19" import astropy.units as u @@ -159,41 +202,35 @@ emission = model.evaluate(skycoord, obspos=[0.87, -0.53, 0.001] * u.AU) print(emission) # ``` -This argument accepts both a string representing a body recognized by `astropy.coordinates.solar_system_ephemeris` (see the Astropy [documentation](https://docs.astropy.org/en/stable/api/astropy.coordinates.solar_system_ephemeris.html)), or a heliocentric ecliptic cartesian position. +This argument accepts both a string representing a body recognized by the +[solar system ephemeris](https://docs.astropy.org/en/stable/coordinates/solarsystem.html), or a +heliocentric ecliptic cartesian position. -Similar to with the `obstime` attribute in the `SkyCoord` object, the `obspos` keyword have shape `(3,)` or `(3, ncoords)`. If a string representation of a body is used, with several values `obstime` ZodiPy will internally compute a position for each coordinate. +Similar to with the `obstime` attribute in the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object, the +value provided to the `obspos` keyword must have shape `(3,)` or `(3, ncoords)`, where `ncoords` is +the number of coordinates in the +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object. ### Multiprocessing -ZodiPy will distribute the input coordinates to cores if the keyword argument `nprocesses` in the `evaluate` method is `nprocesses >= 1` using Python's `multiprocessing` module. -```py hl_lines="1 17" -import multiprocessing +ZodiPy will distribute the input coordinates to available cores using Python's +[`multiprocessing`](https://docs.python.org/3/library/multiprocessing.html) module if the keyword +argument `nprocesses` in the [`evaluate`][zodipy.Model.evaluate] method is greater or equal to 1. -import astropy.units as u -from astropy.coordinates import SkyCoord -from astropy.time import Time -import zodipy - -model = zodipy.Model(25 * u.micron) +```py +import multiprocessing -skycoord = SkyCoord( - 40 * u.deg, - 60 * u.deg, - obstime=Time("2020-01-01"), - frame="galactic" -) +nprocesses = multiprocessing.cpu_count() # 8 cores -emission = model.evaluate(skycoord, nprocesses=multiprocessing.cpu_count()) +emission = model.evaluate(skycoord, nprocesses=nprocesses) ``` -!!! tip - For all available optional keyword arguments in `zodipy.Model` see [the API reference](reference.md#zodipy.zodipy.Model). - ## Examples -### Emission along an Ecliptic scan -In the following, we simulate a scan across the Ecliptic plane +### Zodiacal light along an Ecliptic scan +In the following, we simulate a scan across the Ecliptic plane: ``` py title="ecliptic_scan.py" {!examples/ecliptic_scan.py!} @@ -202,8 +239,12 @@ In the following, we simulate a scan across the Ecliptic plane ![Ecliptic scan profile](img/ecliptic_scan.png) -### HEALPix maps -We can use [healpy](https://healpy.readthedocs.io/en/latest/) or [Astropy-healpix](https://astropy-healpix.readthedocs.io/en/latest/) to create a `SkyCoord` object directly from a HEALPIx pixelization +### HEALPix +We can use [healpy](https://healpy.readthedocs.io/en/latest/) or +[Astropy-healpix](https://astropy-healpix.readthedocs.io/en/latest/) to create a +[`SkyCoord`](https://docs.astropy.org/en/stable/api/astropy.coordinates.SkyCoord.html) object +directly from a HEALPix pixelization. In the following two examples, we produce an instantaneous map +of the sky in HEALPix representation: === "healpy" @@ -220,7 +261,8 @@ We can use [healpy](https://healpy.readthedocs.io/en/latest/) or [Astropy-healpi ![HEALPix map](img/healpix_map.png) ### Component-wise zodiacal light -We can return the zodiacal light for each component by using setting the keyword argument `return_comps` to `True` +We can return the zodiacal light for each component by using setting the keyword argument +`return_comps` to `True` in the [`evaluate`][zodipy.Model.evaluate] method: ``` py title="component_maps.py" {!examples/component_maps.py!} ``` @@ -229,7 +271,8 @@ We can return the zodiacal light for each component by using setting the keyword ### Visualizing the interplanetary dust distribution -We can visualize the number density of a supported zodiacal light model by using the `grid_number_density` function +We can visualize the number density of a supported zodiacal light model by using the +[`grid_number_density`][zodipy.grid_number_density] function ``` py title="number_density.py" {!examples/number_density.py!} ``` diff --git a/zodipy/model.py b/zodipy/model.py index 33a3d46..c24517b 100644 --- a/zodipy/model.py +++ b/zodipy/model.py @@ -35,7 +35,7 @@ class Model: def __init__( self, - x: units.Quantity, + x: units.Quantity[units.micron | units.GHz], *, weights: npt.ArrayLike | None = None, name: str = "dirbe", @@ -43,25 +43,27 @@ def __init__( extrapolate: bool = False, ephemeris: str = "builtin", ) -> None: - """Initialize the ZodiPy model interface. + """Initialize a zodiacal light model. Args: - x: Wavelength or frequency. If `x` is a sequence, it is assumed to be a the points - corresponding to a bandpass and the corresponding `weights` must be provided. - weights: Bandpass weights corresponding the the frequencies or wavelengths in `x`. The + x: Wavelength or frequency. If `x` is a sequence it is assumed to be a the points + corresponding to an instrument bandpass and the corresponding `weights` argument + must be provided. + weights: Bandpass weights corresponding the the frequencies/wavelengths in `x`. The weights are assumed to represent a normalized instrument response in units of - spectral radiance (Jy/sr). - name: Zodiacal light model to use for the simulations. For a list of available models, - see https://cosmoglobe.github.io/zodipy/introduction/. Defaults to 'dirbe'. - gauss_quad_degree: Order of the Gaussian-legendre quadrature used to evaluate the - line-of-sight integrals in the simulations. Default is 50 points. + spectral radiance [Jy/sr]. + name: Zodiacal light model to use. See the + [docs](https://cosmoglobe.github.io/zodipy/introduction/) for list of available + models. Defaults to 'dirbe'. + gauss_quad_degree: Order of the Gaussian-legendre quadrature representing the number of + discrete points along each line-of-sight. Default is 50 points. extrapolate: If `True` all spectral quantities in the selected model are extrapolated to - the requested frequencies or wavelengths. If `False`, an exception is raised on - requested values of `x` outside of the valid model range. Default is `False`. - ephemeris: Ephemeris used in `astropy.coordinates.solar_system_ephemeris` to compute the - positions of the observer and Earth. Defaults to 'builtin'. See the + the requested frequencies/wavelengths. Else, an exception is raised on values of `x` + outside of the valid model range. Default is `False`. + ephemeris: Ephemeris used in Astropy's `solar_system_ephemeris` to compute the positions + of Earth and optionally the observer. See the [Astropy documentation](https://docs.astropy.org/en/stable/coordinates/solarsystem.html) - for available ephemerides. + for all available ephemerides. Defaults to 'builtin'. """ try: @@ -118,34 +120,35 @@ def evaluate( self, skycoord: coords.SkyCoord, *, - obspos: units.Quantity | str = "earth", + obspos: units.Quantity[units.AU] | str = "earth", return_comps: bool = False, nprocesses: int = 1, ) -> units.Quantity[units.MJy / units.sr]: """Return the simulated zodiacal light. - The zodiacal light is simulated for a single, or a sequence of observations. If a single - `obspos` and `obstime` is provided for multiple coordinates, all coordinates are assumed to - be observed from that position at that time. Otherwise, each coordinate is simulated from - the corresponding observer position and time. + The zodiacal light is simulated for all sky coordinates present in the `skycoord` argument. + If an obstime and obspos value is not provided for each coordinate value, all coordinates + are assumed to be observed at an instant from the same position. Args: - skycoord: `astropy.coordinates.SkyCoord` object representing the coordinates or - observations for which to simulate the zodiacal light. The `frame` and `obstime` - attributes of the `SkyCoord` object must be set. The `obstime` attribute must be - specified, and correspond to a single, or a sequence of observational times with - length matching the number of coordinates. The frame must be convertible to the + skycoord: `astropy.coordinates.SkyCoord` object representing the coordinates for which + to simulate the zodiacal light. The `obstime` attribute must be specified, and + correspond to a either a single, or a sequence of observational times, one for each + coordinate in `skycoord`. The coordinate frame, provided through the `frame` keyword + in the the `astropy.coordinates.SkyCoord` object (defaults to + `astropy.coordinates.ICRS`), must be convertible to the `astropy.coordinates.BarycentricMeanEcliptic` frame. - obspos: The heliocentric ecliptic position of the observer, or a string representing - an observer in the `astropy.coordinates.solar_system_ephemeris`. If an explicit - position is given, it must either be a single, or a sequence of positions with - shape matching the number of coordinates Defaults to 'earth'. - return_comps: If True, the emission is returned component-wise. Defaults to False. + obspos: The heliocentric ecliptic position of the observer, or a string representing an + observer supported by the `astropy.coordinates.solar_system_ephemeris`. If an + explicit position is given, it must either be a single, or a sequence of positions, + one for each coordinate. Defaults to 'earth'. + return_comps: If `True`, the emission is returned component-wise. Defaults to `False`. nprocesses: Number of cores to use. If `nprocesses >= 1`, the line-of-sight integrals - are parallelized using the `multiprocessing` module. Defaults to 1. + are distributed and computed in parallel using the `multiprocessing` module. + Defaults to 1. Returns: - emission: Simulated zodiacal light in units of 'MJy/sr'. + emission: Simulated zodiacal light [MJy/sr]. """ try: @@ -296,25 +299,22 @@ def _init_ipd_model_partials(self) -> None: self._number_density_partials = get_partial_number_density_func(comps=self._ipd_model.comps) def get_parameters(self) -> dict: - """Return a dictionary containing the interplanetary dust model parameters. - - This method is mainly meant to be used to fit or sample zodiacal light models. + """Return a dictionary containing the zodiacal light model parameters. Returns: - parameters: Dictionary of parameters of the interplanetary dust model. + parameters: Zodiacal light model parameter dict. """ return self._ipd_model.to_dict() def update_parameters(self, parameters: dict) -> None: - """Update the interplanetary dust model parameters. + """Update the zodiacal light model parameters from a parameter dictionary. - This method is mainly meant to be used to fit or sample zodiacal light models. + The structure of the input dictionary must match that of the output of the `get_parameters` + method. Args: - parameters: Dictionary of parameters to update. The keys must be the names - of the parameters as defined in the model. To get the parameters dict - of an existing model, use the`get_parameters` method of an initialized - `zodipy.Model`. + parameters: Zodiacal light model parameter dict. + """ _dict = parameters.copy() _dict["comps"] = {} diff --git a/zodipy/number_density.py b/zodipy/number_density.py index e3d9ae9..9252320 100644 --- a/zodipy/number_density.py +++ b/zodipy/number_density.py @@ -479,21 +479,21 @@ def update_partial_earth_pos( def grid_number_density( - x: units.Quantity, - y: units.Quantity, - z: units.Quantity, + x: units.Quantity[units.AU], + y: units.Quantity[units.AU], + z: units.Quantity[units.AU], obstime: time.Time, - name: str = "DIRBE", + name: str = "dirbe", ephemeris: str = "builtin", ) -> npt.NDArray[np.float64]: - """Return the tabulated densities of the zodiacal components for a given grid. + """Return the component-wise tabulated densities of the zodiacal components for a given grid. Args: - x: Cartesian mesh grid x-coordinates. - y: Cartesian mesh grid y-coordinates. - z: Cartesian mesh grid z-coordinates. - obstime: Time of observation. - name: Interplanetary dust model to select. Default is 'DIRBE'. + x: x-coordinates of a cartesian mesh grid. + y: y-coordinates of a cartesian mesh grid. + z: z-coordinates of a cartesian mesh grid. + obstime: Time of observation. Required to compute the Earth position. + name: Zodiacal light model to use. Default is 'dirbe'. ephemeris: Solar system ephemeris to use. Default is 'builtin'. Returns: @@ -505,7 +505,6 @@ def grid_number_density( grid = np.asarray(np.meshgrid(x, y, z)) earthpos_xyz = get_earthpos_inst(obstime, ephemeris=ephemeris) - # Prepare attributes and variables for broadcasting with the grid # broadcasting reshapes for comp in ipd_model.comps.values():