Skip to main content

PySpecKit Spectroscopic Toolkit

pyspeckit.bitbucket.org

This is a code framework designed to allow for analysis of spectroscopic data from a wide variety of astronomical instruments. It is motivated by the lack of general spectroscopic analysis tools applicable at multiple wavelengths (compare to IRAF, SPLAT, etc. - these are wavelength-specific and/or do not make user scripting easy).

Initial implementation focuses on optical and radio applications, e.g. gaussian and voigt profile fitting, baseline/continuum fitting, and equivalent width measurements. However, the design is meant to be extensible. We want additional features to be trivial to implement.

In that vein, there is a growing set of spectral models implemented. The model and hyperfinemodel classes makes model implementation quite straightforward, if not trivial (you still have to plug in the right frequency offsets and relative line strengths).

Plotting is straightforward, as is usually the case with matplotlib-based codes. We have a few different methods of error bar plotting implemented, a decent (and expanding) units class for pretty printing of spectroscopic units, and different methods of fit plotting.

We’re also looking for more users to give us more use cases! Contact us at pyspeckit@gmail.com

Requirements: matplotlib numpy

Preferably at least one of: pyfits atpy asciitable

Optional: scipy

A good model for our code is atpy, from which we derived inspiration for the “register functions” capability.

Authors: Adam Ginsburg Jordan Mirocha (or both of us at pyspeckit@gmail.com)

The PySpecKit logo uses the Voyager 1 image of Earth known as the “Pale Blue Dot” [ original source | reprocessed image ]

CHANGES

Release 0.1.7

  • Added cross-correlation

  • Added (some) unit tests

  • New interactive slider widget for manipulating models (Spectrum.specfit.add_sliders())

  • Subtle but very significant bug-fix: parinfo is now a single uniform list, based on the ParinfoList class.

  • You can now fit based on what you see by using the ‘use_window_limits=True’ kwarg WARNING This changes the default behavior in interactive mode!

Release 0.1.6

  • H2CO fit / plot wrapper

  • bugfixes

  • setup.py no longer tries to write config files

Release 0.1.5

  • Added GBT (GBTIDL SDFITS file) and ALFALFA (ALFALFA idlsave .src) readers

  • added extinction model (just a function, not a complete model yet)

Release 0.1.4

  • removed setuptools & distribute (they fail)

  • added hydrogen.py to models

  • first release to inherit from astropy’s Spectrum1D

Release 0.1.3

  • some internal cleanup / refactoring

  • override slicing (__getitem__ features)

  • parallel moment & fitting in Cubes repaired

Release 0.1.2

  • added MIT license, moved mpfit and parallel_map inside pyspeckit as

  • submodules

Release 0.1.1

  • bugfixes and versioning work

Release 0.1.0

  • Initial creation

Metadata

Release files for pyspeckit 0.1.6hg750

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyspeckit 0.1.6hg750
File Size Uploaded Provenance
pyspeckit-0.1.6hg750.tar.gz 199.5 kB Without provenance Details

Release files / pyspeckit-0.1.6hg750.tar.gz

Download URL pyspeckit-0.1.6hg750.tar.gz
Size 199.5 kB
Tags Source
SHA-256 checksum
How to use checksums
924a2c4bc30978753c4afa961fc55f395404d0a5d7a0e6a81bb0f47c5b50feb1
BLAKE2b-256 checksum
How to use checksums
57f49d344d0ee9d7d31abe2c63f00a5d3bec2014ffabc127c797bc6744220aa6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for pyspeckit 0.1.6hg750

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page