Skip to main content

JWST NIRISS Star Masking Library

This Python library is designed to mask bright stars in JWST NIRISS imaging mosaics. Foreground stars are identified from the Gaia catalog using the astroquery library. The NIRISS stellar PSF is approximated using a toy model, represented by a circular region for the PSF's central componenets, and extended rectangles for the diffraction spikes. The library also includes helper functions to check if a given source is contaminated by a stellar PSF.

The PSF is scaled for each object according to its Gaia G-band magnitude. The details of this calibration are included in calibration.ipynb.

Functions

The library's key functions include:

get_footprint(mosaic, wcsdf, hdulistindex)

Generates a footprint for each exposure in the mosaic.

  • Parameters:
    • mosaic (HDUList): The mosaic FITS file.
    • wcsdf (pd.DataFrame): DataFrame containing WCS information.
    • hdulistindex (int): Index of the HDU in the mosaic.
  • Returns:
    • footprints (list): List of footprints for each exposure.

mask_mosaic(mosaic, wcspath, output_path=None, hdulistindex=0, spikewidth=30, ncores=None, inspect_final_mask=True, calibration_slope=-13.551, calibration_int=342.216)

Creates a mask for an entire NIRISS mosaic composed of different exposures. Note this code also works for a single exposure; in this case, provide wcsdf as a one-row dataframe.

  • Parameters:
    • mosaic (str or HDUList): Mosaic to mask.
    • wcspath (str): Path to WCS info file.
    • output_path (str): Path to save mosaic mask as FITS.
    • hdulistindex (int): Index in HDUList where data and header are located.
    • spikewidth (int): Width of diffraction spikes in NIRISS PSF mask.
    • ncores (int): Number of cores for multiprocessing.
    • inspect_final_mask (bool): If True, generates an image displaying the image and mask.
    • calibration_slope (float): Slope of calibration between PSF mask size and Gaia G-band magnitude.
    • calibration_int (float): Intercept of calibration between PSF mask size and Gaia G-band magnitude.
  • Returns:
    • HDUList: Astropy HDUList object containing the star mask.

is_object_contaminated(starmaskhdu, objectdata)

Checks if a given source is contaminated by a stellar PSF.

  • Parameters:
    • starmaskhdu (HDUList): Star mask to check against.
    • objectdata (SkyCoord, PrimaryHDU, ImageHDU or iterable of those types): Objects to check if contaminated.
  • Returns:
    • bool or iterable of bool: True/False indicating whether the object(s) is contaminated.

Dependencies

The code has been tested in Python 3.12.2 with the following dependencies:

  • numpy
  • pandas
  • matplotlib
  • astropy
  • astroquery
  • grizli
  • pathos
  • cv2
  • tqdm

Installation

To install the required dependencies, you can use pip:

pip install numpy pandas matplotlib astropy astroquery grizli pathos opencv-python tqdm

Metadata

Release files for mask-stars-NIRISS 2024.11.11

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

Source distribution (sdist)

Source distribution for mask-stars-NIRISS 2024.11.11
File Size Uploaded
mask_stars_niriss-2024.11.11.tar.gz 8.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mask-stars-NIRISS 2024.11.11
File Interpreter ABI Platform
mask_stars_NIRISS-2024.11.11-py3-none-any.whl Python 3 none any Details

Total release size: 17.7 kB

Release files / mask_stars_niriss-2024.11.11.tar.gz

Download URL mask_stars_niriss-2024.11.11.tar.gz
Size 8.5 kB
Tags Source
SHA-256 checksum
How to use checksums
fc0c846edd3493d4f621ee06ea55cd7f61e218e4cd91d6a5639d997e14c7ba4f
BLAKE2b-256 checksum
How to use checksums
87b03aeb4ab9de0b09d9235888139f8d09ed1eb8775435a191ddb0682468ae0c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.2

Release files / mask_stars_NIRISS-2024.11.11-py3-none-any.whl

Download URL mask_stars_NIRISS-2024.11.11-py3-none-any.whl
Size 9.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d49082c2f3cf51287f2e199ea890cb189ef1cbd98def5f89af79de8b301d7432
BLAKE2b-256 checksum
How to use checksums
3609a7f039f6273adf3e1d2548895b6587302fde4035e47926ed6c1a49452a12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.2

Release history Release notifications | RSS feed

This release

2024.11.11 This release

2 release files

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