Skip to content

Releases: NASA-Planetary-Science/sbpy

v0.6.0

02 Dec 21:47
843b1a2

Choose a tag to compare

What's Changed

Updated supported dependency versions [#419]:

  • Python >= 3.9
  • numpy >= 1.26
  • scipy >= 1.10

New Features

sbpy.activity.gas

  • Added active and quiet sun photolysis rates for H2O and CO2 from Huebner &
    Mukherjee 2015 to sbpy.activity.gas.photo_timescale. [#425]

sbpy.names

  • Added functionality to sbpy.Names.from_packed() and
    sbpy.Names.to_packed() to handle new extended provisional designations
    to be implemented by the MPC in anticipation of higher asteroid discovery
    rates in the LSST survey era. [#406]

sbpy.data.ephem

  • New command-line script: sbpy-ephem. [#396]

API Changes

sbpy.activity.gas

  • Data source is now a required parameter for
    sbpy.activity.gas.photo_lengthscale and sbpy.activity.gas.photo_timescale.
    If the data source is None, then a table of sources will be printed.
    [#425]

sbpy.activity.gas.productionrate

  • Data source is now a required parameter for
    sbpy.activity.gas.productionrate.beta_factor. [#425]

sbpy.ginga_plugins

Other Changes and Additions

sbpy.activity.gas

  • Replaced calls to the deprecated function scipy.integrate.romberg with
    scipy.integrate.quad. [#412]

sbpy.names

  • Fixed sbpy.Names.to_packed() to raise an error in cases of invalid
    cometary designations with fragment specifiers (e.g., "2024 A-A" and
    "2024 A-AA" now correctly raise TargetNameParseError exceptions) [#417]

  • Fixed sbpy.Names.parse_comet() to raise an error in cases of a
    provisional asteroid designation submitted with no space after the
    year (e.g., "2015XN77"), which was previously being interpreted as a
    well-formed comet designation (i.e., with number=2015, type=X, and
    name=N77), but now raises a TargetNameParseError [#422]

  • Fixed sbpy.Names.parse_asteroid() to raise an error in cases of a
    provisional comet designation submitted with no forward slash between
    the lead character and the year, and no space after the year (e.g.,
    "P2015XN77"), which was previously being interpreted as a packed
    asteroid designation, but now raises a TargetNameParseError [#422]

New Contributors

v0.5.0

28 Aug 20:47
df7f292

Choose a tag to compare

Revised required and optional packages:

  • Only numpy and astropy are required; scipy, synphot, ads, and astroquery are
    now optional dependencies. [#383]

  • Created an option to install a recommended list of packages, e.g., pip install sbpy[recommended]. [#383]

  • Require astropy >= 5.3.3 to avoid a security vulnerability. [#400]

New Features

sbpy.activity

  • New sbpy.activity.CircularAperture.from_coma_equivalent() to immediately
    create a CircularAperture from any other Aperture given a nominal coma
    surface brightness distribution. [#393]

sbpy.dynamics

  • New class to encapsulate dynamical state vectors: sbpy.dynamics.state.State. [#394]

  • New support for dynamical integrations: sbpy.dynamics.models. Three models
    are implemented: FreeExpansion, SolarGravity, and SolarGravityAndRadiationPressure. [#394]

  • New ability to produce dust syndynes and synchrones: sbpy.dynamics.syndynes. [#394]

sbpy.time

  • New sub-module to support conversions to NAIF SPICE ephemeris time. [#394]

API Changes

sbpy.sources

  • Deprecated SynphotRequired. Use
    sbpy.execptions.RequiredPackageUnavailable. [#383]

Bug Fixes

  • sbpy.sources.SpectralSource now correctly raises
    RequiredPackageUnavailable when synphot is not available, replacing a
    locally defined SynphotRequired or the generic ImportError. [#383]

  • Fix sbpy.photometry.bandpass crash when reading in SDSS filter transmission
    curves using synphot 1.4. [#400]

  • Fixed missing CALSPEC solar spectrum from sbpy.calib.solar_sources. [#387]

Developer notes

sbpy.utils

  • New required_packages and optional_packages functions to test for the
    presence of required and optional packages. [#383]

sbpy.utils.decorators

  • New requires and optionally_uses function decorators to simplify testing
    for required and optional packages. [#383]

v0.4.0

30 Jun 16:14
39b0c3c

Choose a tag to compare

  • Updated minimum supported versions:
    • Python 3.8
    • numpy 1.18
    • astropy 4.3
    • synphot 1.1
    • astroquery 0.4.5

New Features

sbpy.activity

  • Added VectorialModel.binned_production constructor for compatibility with
    time-dependent production implemented in the original FORTRAN vectorial model
    code by Festou. [#336]

  • Added VMResult, VMFragmentSputterPolar, VMParams,
    VMGridParams, VMFragment, and VMParent dataclasses to expose
    details of VectorialModel results that may be of interest. [#336]

sbpy.calib

  • Added a model spectrum of the Sun from STScI's CALSPEC database (Bohlin et al.
    2014, PASP 126, 711, DOI:10.1086/677655). [#371]

sbpy.data

  • Added Orbit.tisserand to calculate the Tisserand parameter of small body's
    orbits with respect to planets. [#325]

  • Added Orbit.D_criterion to evaluate the D-criterion between two sets of
    orbital elements. [#325]

  • Added DataClass.__contains__ to enable in operator for DataClass
    objects. [#357]

  • Added DataClass.add_row, DataClass.vstack methods. [#367]

sbpy.photometry

  • Added parameter constraints to the IAU disk-integrated phase function models,
    such as HG, HG1G2, HG12, and HG12_Pen16. [#366]

Documentation

  • Index page has been reorganized. [#337]

API Changes

sbpy.activity

  • VectorialModel now no longer takes an angular_substeps parameter. [#336]

sbpy.data

  • IAU HG series functions moved from sbpy.photometry.core to sbpy.photometry.iau. [#354]

sbpy.photometry

  • Replaced NonmonotonicPhaseFunctionWarning with
    InvalidPhaseFunctionWarning. [#366]

Bug Fixes

sbpy.calib

  • Updated STScI URLs for solar spectra (Castelli and Kurucz models). [#345]

sbpy.data

  • Cometary magnitudes obtained via Phys.from_sbdb (i.e., M1 and M2) now have
    appropriate units. [#349]

  • Asteroids with A/ designations (e.g., A/2019 G2) are correctly identified by
    Names as asteroids. Improved handling of interstellar object (I/)
    designations: they do not parse as cometary or asteroidal. [#334, #340]

v0.3.1

30 Apr 20:23

Choose a tag to compare

Bug fix for online documentation.

v0.3.0

28 Apr 21:00
483b73e

Choose a tag to compare

See CHANGES.rst for the full change log.

v0.2.2

27 Apr 14:51
8001ae3

Choose a tag to compare

Tagging v0.2.2

First Year of Development (v0.2)

14 Aug 23:49

Choose a tag to compare

This release includes mostly complete functionality for dealing with data, calibrations, and bibliography. Limited functionality is available for the modeling of gas and dust activity, as well as disk-integrated photometry.

Future releases are expected to be backward-compatible to this release.

JOSS publication

17 Jun 16:30

Choose a tag to compare

minor updates from version 0.1 from JOSS review process

first official release

01 May 20:43
74562ba

Choose a tag to compare

First release with limited and preliminary functionality in data, photometry, activity, and spectroscopy.