Skip to main content

PyPI Documentation Status Tests License Python Versions


hwoutils

hwoutils is the shared utility foundation for the HWO direct imaging simulation suite. It provides JAX-native physical constants, unit conversions, and flux-conserving image transforms used across:

  • yippy — Coronagraph performance modeling
  • orbix — Orbital dynamics and target scheduling
  • coronagraphoto — Image simulation for coronagraphic observations
  • coronalyze — Post-processing and SNR analysis
  • hwosim — End-to-end mission simulations

Key Features

  • Physical Constants — Single source of truth for SI constants, conversion factors, and astronomical quantities
  • Unit Conversions — Pure JAX conversion functions (angular, flux, distance, time) with zero astropy overhead
  • Image Transforms — Flux-conserving resampling, sub-pixel shifts, and cubic spline interpolation
  • JAX-Native — All operations are JIT-compilable, differentiable, and GPU-accelerated

Installation

With uv (recommended):

uv pip install hwoutils

Or with pip:

pip install hwoutils

Quick Start

from hwoutils import constants as const
from hwoutils import conversions as conv
from hwoutils.transforms import resample_flux

# Convert 5 arcsec to lambda/D for a 6m telescope at 550nm
sep_lod = conv.arcsec_to_lambda_d(5.0, 550.0, 6.0)

# Flux-conserving PSF resampling
resampled = resample_flux(psf, pixscale_src=0.01, pixscale_tgt=0.1, shape_tgt=(64, 64))

Documentation

Full documentation is available at hwoutils.readthedocs.io.

Download files

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

Source Distribution

hwoutils-1.9.0.tar.gz (23.6 kB view details)

Uploaded Source

Built Distribution

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

hwoutils-1.9.0-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file hwoutils-1.9.0.tar.gz.

File metadata

  • Download URL: hwoutils-1.9.0.tar.gz
  • Upload date:
  • Size: 23.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hwoutils-1.9.0.tar.gz
Algorithm Hash digest
SHA256 0019ecf0d4d72b0eba3729223ede3c3022747ca833e972ae5932a7493be3d2a7
MD5 bffcd0c41249cd449ce0bd31f06824c5
BLAKE2b-256 8933238ae2b2c5dac36de735c05a3de6951227ba0c5142b867c4fb45130bd1b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for hwoutils-1.9.0.tar.gz:

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

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

File details

Details for the file hwoutils-1.9.0-py3-none-any.whl.

File metadata

  • Download URL: hwoutils-1.9.0-py3-none-any.whl
  • Upload date:
  • Size: 21.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for hwoutils-1.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 830d3d8570753a18cb8cb2650dc31244cb3c397e90f44a391595d65a878c9ccd
MD5 e967777b019e5d41b0b335005e1f88e1
BLAKE2b-256 275bc9d6a0f1e29d12cde5c8f6da1d2b15b4bead4563cc56bb3d8a64accd9b4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for hwoutils-1.9.0-py3-none-any.whl:

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

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

Release history Release notifications | RSS feed

This release

1.9.0 This release

2 files

1.8.0

2 files

1.7.0

2 files

1.6.1

2 files

1.6.0

2 files

1.5.1

2 files

1.5.0

2 files

1.4.0

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.0

2 files

1.0.0

2 files

Supported by

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