Skip to main content

Quasar continuum fitter for DESI

Project description

Lightining-fast continuum fitting

https://joss.theoj.org/papers/10.21105/joss.06373/status.svg https://img.shields.io/pypi/v/qsonic?color=blue https://img.shields.io/badge/Source-qsonic-red Tests Status Documentation Status

QSOnic is an MPI-parallelized, highly optimized quasar continuum fitting package for DESI built on the same algorithm as picca, but faster. It also provides an efficient API to read DESI quasar spectra. If you use this software, please cite the article in the Journal of Open Source Software (JOSS).

The key differences

  • You can use any desired input continuum from another continuum prediction method as input continuum model.

  • Coadding of spectrograph arms can be performed after continuum fitting or disabled entirely.

  • Continuum is multiplied by a fiducial mean flux when provided.

  • You can pass fiducial var_lss (column VAR_LSS) and mean flux (column MEANFLUX) for observed wavelength LAMBDA in STATS extention of a FITS file. Wavelength should be linearly and equally spaced. This is the same format as rawio output from picca, except VAR column in picca is the variance on flux not deltas. We break away from that convention by explicitly requiring variance on deltas in a new column.

  • If no fiducial is passed, we fit only for var_lss (no eta fitting by default). Eta fitting can be enabled by passing --var-fit-eta. A covariance matrix is calculated based on delete-one Jackknife over subsamples between var_pipe and var_obs data points, and used in var_lss, eta fitting if --var-use-cov passed (soft recommendation to always enable this).

  • Internal weights for continuum fitting and coadding are based on smoothed IVAR, and output WEIGHT is based on this smoothed ivar. This smoothing can be turned off.

  • Chi2 information as well as best fits are saved in continuum_chi2_catalog.fits. Chi2 is calculated using smooth ivar and var_lss, and does not subtract sum of ln(weights).

Similarities

  • Delta files are the same. CONT column is mean flux times continuum even when fiducial mean flux is passed.

  • MEANSNR in header file and chi2 catalog is average of flux times square root of positive ivar values. Header values are per arm, but catalog values are the average over all arms.

  • Eta fitting does not rescale IVAR output. Pipeline noise will be modified with explicit calibration option.

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

qsonic-1.1.4.tar.gz (66.5 kB view details)

Uploaded Source

Built Distribution

qsonic-1.1.4-py3-none-any.whl (65.5 kB view details)

Uploaded Python 3

File details

Details for the file qsonic-1.1.4.tar.gz.

File metadata

  • Download URL: qsonic-1.1.4.tar.gz
  • Upload date:
  • Size: 66.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for qsonic-1.1.4.tar.gz
Algorithm Hash digest
SHA256 389436fbea87a2e5d28abc92f8e28ba9c178ba5853ff5cd2d9265938ea440b3c
MD5 607e0c7b21dfff34e119805636242510
BLAKE2b-256 e05a5ee4ef5f9b55261a6b042a447c73de3a9f7bb56dec6292940e447352ffd7

See more details on using hashes here.

File details

Details for the file qsonic-1.1.4-py3-none-any.whl.

File metadata

  • Download URL: qsonic-1.1.4-py3-none-any.whl
  • Upload date:
  • Size: 65.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for qsonic-1.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c69063fe886153dd0941ffc5246d99513d5eb4f98bdf44d8675388dbc88e2629
MD5 179c87d0ae704479e9e748241135fcc5
BLAKE2b-256 bf169c2861fb76ef9227a848e490d6228703e280ce05dccd4b93b0343eb3e8bb

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