Skip to main content

The Pyhton Automated Wavelenmgth Calibrator.

Project description

Rascal: RANSAC Assisted Spectral CALibration

Python package Coverage Status Readthedocs Status PyPI version Downloads DOI Code style: black

Rascal is a library for automated spectrometer wavelength calibration. It has been designed primarily for astrophysics applications, but should be usable with spectra captured from any similar spectrometer.

Given a set of peaks located in your spectrum, Rascal will attempt to determine a model for your spectrometer to convert between pixels and wavelengths.

Unlike other calibration methods, rascal does not require you to manually select lines in your spectrum. Ideally you should know approximate parameters about your system, namely:

  • What arc lamp was used (e.g. Xe, Hg, Ar, CuNeAr)
  • What the dispersion of your spectrometer is (i.e. angstroms/pixel)
  • The spectral range of your system, and the starting wavelength

You don't need to know the dispersion and start wavelength exactly. Often this information is provided by the observatory, but if you don't know it, you can take a rough guess. The closer you are to the actual system settings, the more likely it is that Rascal will be able to solve the calibration. Blind calibration, where no parameters are known, is possible but challenging currently. If you don't know the lamp, you can try iterating over the various combinations of sources. Generally when you do get a correct fit, with most astronomical instruments the errors will be extremely low.

More background information can be referred to this arXiv article.

Dependencies

  • python >= 3.7
  • numpy>=1.16,<1.24
  • scipy>=1.3.3
  • pynverse>=0.1.4
  • matplotlib>=3.0.3
  • tqdm>=4.48.0

Optional Dependencies

Installation

Instructions can be found here.

Reporting issues/feature requests

Please use the issue tracker to report any issues or support questions.

Getting started

The quickstart guide will show you how to reduce the example dataset.

Contributing Code/Documentation

If you are interested in contributing code to the project, thank you! For those unfamiliar with the process of contributing to an open-source project, you may want to read through Github’s own short informational section on how to submit a contribution or send me a message.

Style -- we now use black for formatting, you can easily set this up using a pre-commit hook.

pip install pre-commit
pre-commit install

Disclaimer

We duplicate some of the relevant metadata, but we do not process the raw metadata. Some of the metadata this software creates contain full path to the files in your system, which most likely includes a user name on your machine. Please be advised it is your responsibility to be compliant with the privacy law(s) that you are oblidged to follow, and it is your responsibility to remove any metadata that may reveal personal information and/or provide information that can reveal any computing vulunerability.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rascal-0.3.10.tar.gz (301.0 kB view details)

Uploaded Source

Built Distribution

rascal-0.3.10-py3-none-any.whl (301.2 kB view details)

Uploaded Python 3

File details

Details for the file rascal-0.3.10.tar.gz.

File metadata

  • Download URL: rascal-0.3.10.tar.gz
  • Upload date:
  • Size: 301.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for rascal-0.3.10.tar.gz
Algorithm Hash digest
SHA256 035b41c3062dfc2ffa29a4ce9a835586bc32cbe4c6e0ac6ce62918b1ca140519
MD5 604f74c6411110f2d80c4911a32bef83
BLAKE2b-256 1ad2b655542ef15a595e6dec346f652cd472a139b9572ba7e56d6f1dcaee4b7e

See more details on using hashes here.

File details

Details for the file rascal-0.3.10-py3-none-any.whl.

File metadata

  • Download URL: rascal-0.3.10-py3-none-any.whl
  • Upload date:
  • Size: 301.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.3

File hashes

Hashes for rascal-0.3.10-py3-none-any.whl
Algorithm Hash digest
SHA256 c7b93fd2defc65edf84017fb68b3af6123a22b04043dccaf7ccad65034ebed2b
MD5 e2418ddccf0a348f7a70a688efa8487a
BLAKE2b-256 2c0f3df9fb984688ea0bbf6f4549493f6a4225cde125c778dcaab38f7571c5b4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page