Skip to main content

A JAX-based library for post-processing coronagraphic direct imaging data.

Project description

PyPI Documentation Status


coronalyze

coronalyze is a JAX-based Python library for post-processing coronagraphic direct imaging data. It is designed as a companion to coronagraphoto, providing analysis tools for simulated and (maybe) real coronagraphic observations.

Key Features

  • SNR Estimation: Mawet et al. (2014) aperture photometry SNR with small-sample corrections
  • PSF Subtraction: KLIP/PCA and reference differential imaging
  • Planet Injection: Forward modeling for yield simulations
  • JAX-Native: Fully JIT-compilable, differentiable, and GPU-accelerated

Installation

pip install coronalyze

(Note: You may need to install JAX separately to match your specific hardware acceleration requirements.)

Quick Start

import coronalyze as cz
import jax.numpy as jnp

# Calculate SNR at planet positions using Mawet et al. (2014)
snr_values = cz.snr(residual_image, planet_positions, fwhm=4.5)

# Or use the estimator pattern for efficient batch processing
estimator = cz.snr_estimator(fwhm=4.5)
snr_values = estimator(residual_image, planet_positions)

Pairing with coronagraphoto

import coronagraphoto as cg
import coronalyze as cz

# Generate image with coronagraphoto
obs = cg.Observation(scene, coronagraph, settings)
obs.create_images()
science_image = obs.get_total_image()

# Get the star model for subtraction
star_model = obs.get_star_image()

# Subtract and calculate SNR
residual = cz.subtract_star(science_image, star_model)
snr_values = cz.snr(residual, planet_positions, fwhm=4.5)

Design Philosophy

Like its companion coronagraphoto, coronalyze provides primitives rather than black-box functions. You compose the analysis pipeline that fits your science case.

Documentation

Full documentation is available at coronalyze.readthedocs.io.

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

coronalyze-1.0.2.tar.gz (26.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

coronalyze-1.0.2-py3-none-any.whl (32.3 kB view details)

Uploaded Python 3

File details

Details for the file coronalyze-1.0.2.tar.gz.

File metadata

  • Download URL: coronalyze-1.0.2.tar.gz
  • Upload date:
  • Size: 26.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for coronalyze-1.0.2.tar.gz
Algorithm Hash digest
SHA256 3747514331cacc8ef7956e8966b525b4c74b36d81ea24c6a3a3a3d87c7c2e38d
MD5 0321d7a27a0ee5417712533402cd0c94
BLAKE2b-256 bed5712c250126762732aa75e041570026f924c230443192333fbd71c6687f5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for coronalyze-1.0.2.tar.gz:

Publisher: publish-to-pypi.yml on CoreySpohn/coronalyze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file coronalyze-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: coronalyze-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 32.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for coronalyze-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 110dd50b1fe23cc69f27ca8e7786cfe3555638b19915403427ac043a1369ddd9
MD5 8b5247a3136539af2700435d41a49815
BLAKE2b-256 d58c73a1e6bed22c6d2f2db147e1acd8fc4102270f88864e72048f81955d2c70

See more details on using hashes here.

Provenance

The following attestation bundles were made for coronalyze-1.0.2-py3-none-any.whl:

Publisher: publish-to-pypi.yml on CoreySpohn/coronalyze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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