Skip to content

Releases: spacetelescope/webbpsf

Release 1.2.1

11 Aug 20:26
151bd55
Compare
Choose a tag to compare

Minor documentation update

v1.2.0

10 Aug 20:40
c077c68
Compare
Choose a tag to compare

We are pleased to announce the release of the latest version of WebbPSF version 1.2.0, now available on PyPi and GitHub. This release comes with new features and improvements including but not limited to:

  1. The addition of detector effects for JWST simulations. H2RG detector effects are included in two flavors, a simple ad hoc Gaussian convolution to model charge diffusion effects and a set of convolution kernels to model interpixel capacitance (IPC) and post-pixel coupling effects. We have found that these effects greatly improve the agreement between observations and simulations. See JWST Detector Effects for more details.
  2. A new utility function for simulating matching PSFs to science data. See Matching PSF sims to in-flight JWST data.
  3. Implement geometric distortion for Roman using the Roman SIAF.
  4. Various improvements for OTE trending.

What's Changed

  • Fixed trending histogram binning so that bars add up to 1.0 by @Skyhawk172 in #634

  • Add phase retrieval crosscheck plot and wfs obs delta plot by @mperrin in #650

  • 597 - add opdtable as positional param to monthly_trending_plot by @kulpster85 in #600

  • Update to read SI pixelscales directly from pysiaf by @mperrin in #626

  • Update/enhance trending plot to show WSS proposed corrections by @mperrin in #642

  • Add notebooks for plotting JWST SI WFE, and JWST SI MIMF field points by @mperrin in #652

  • Add H2RG detector effects sim framework by @mperrin and @obi-wan76 in #671

  • Tune detector effects model parameters to better match measured ePSFs by @mperrin in #693

  • Non-standard pixel sizes for distortion by @JarronL in #669

  • Add setup_sim_to_match_data function by @mperrin in #706

  • Add trending plot function "show_wfs_around_obs" by @mperrin in #705

  • Additional fixes to trending.py by @Skyhawk172 in #688

  • Implement distortion for Roman by @Skyhawk172 in #668

Full Changelog: v1.1.1...v1.2.0

Note, this release requires updating your WebbPSF data files to version 1.2.0, webbpsf-data-1.2.0.tar.gz

Release 1.1.1

14 Dec 16:10
v1.1.1
7b58f9e
Compare
Choose a tag to compare

2022 December 14

Minor fixes and trending plot enhancements from first half of JWST Cycle 1. .

Note, this release requires updating your WebbPSF data files to version 1.1.1. See our installation instructions for more information.

This release's upgraded requirements drop support for Python 3.7, meaning conda installation is temporarily unavailable since the AstroConda channel is not equipped for newer Python versions. Installation with pip works as normal.

For full release notes, see https://webbpsf.readthedocs.io/en/v1.1.1/relnotes.html#version-1-1-1
Full changelog: v1.1.0...v1.1.1

v1.1.0

23 Sep 16:19
v1.1.0
7d0deb9
Compare
Choose a tag to compare

2022 September 23

First release with JWST in flight optical performance! Updates and tools added after completion of commissioning.

Note, this release requires updating your WebbPSF data files to version 1.1.0. See our installation instructions for more information.

This release's upgraded requirements drop support for Python 3.7, meaning conda installation is temporarily unavailable since the AstroConda channel is not equipped for newer Python versions. Installation with pip works as normal.

For full release notes, see https://webbpsf.readthedocs.io/en/latest/relnotes.html#version-1-1-0
Full changelog: v1.0.0...v1.1.0

v1.0.0

10 Dec 21:08
v1.0.0
88d2915
Compare
Choose a tag to compare

2021 December 10

Milestone release shortly before JWST launch, with significant updates to both JWST and Roman optical models.

See release notes on readthedocs for a more informative summary than the below which was auto-generated by GitHub.

What's Changed

Read more

Release 0.9.2

23 Jul 18:03
fcba240
Compare
Choose a tag to compare

2021 July 23

This release improves a subset of WFIRST functionality to add WFI's Prism and Grism modes using cycle 8 models for wavefront error.

This release only improves a subset of WFIRST functionality; additional improvements to both WFIRST (including renaming to Roman) and JWST models will be at the upcoming 1.0.0 major release.

WFIRST Improvements

  • New Grism and Prism filters: [:pr:416, :pr:471, :user:robelgeda]
    • GRISM_FILTER = 'G150'
    • PRISM_FILTER = 'P120'
  • Changing filters to G150 or P120 changes the mode of the WFI and the aberrations files (unless there is a user aberrations override) [:pr:416, :pr:471, :user:robelgeda]
  • New WFI.mode: Class property that returns the current mode of the WFI instance by passing the current filter to WFI. _get_filter_mode. WFI modes are: [:pr:416, :pr:471, :user:robelgeda]
    • Imaging
    • Grism
    • Prisim
  • New WFI.override_aberrations(aberrations_path): Overrides and locks the current aberrations with aberrations at aberrations_path. Lock means changing the filter/mode has no effect on the aberrations. [:pr:416, :pr:471, :user:robelgeda]
  • New WFI.reset_override_aberrations(): Releases WFI.override_aberrations lock and start using the default aberrations. [:pr:416, :pr:471, :user:robelgeda]
  • New Tests for mode and filter switching. [:pr:416, :pr:471, :user:robelgeda]
  • New Field point nearest point approximation (extrapolation). [:pr:416, :pr:471, :user:robelgeda]

Software and Package Infrastructure Updates:

  • This release uses Github Actions CI and removes TravisCI. [:pr:455, :user:shanosborne, :pr:471, :user:robelgeda]

Version 0.9.1

24 Jun 00:18
v0.9.1
e83989c
Compare
Choose a tag to compare

This minor release resolves several bugs and occasional installation issues and updates behind-the-scenes package infrastructure for consistency with current astropy and numpy releases. There are small improvements to a few aspects of JWST models as detailed below (in particular for wavelength dispersion in NIRCam LW coronagraphy and in tools for modeling time-dependent WFE) but the vast majority of JWST PSF calculations are not changed in any way.

For full release notes see https://webbpsf.readthedocs.io/en/latest/relnotes.html

Version 0.9.0

23 Nov 22:23
884cbbc
Compare
Choose a tag to compare

2019 November 22

Note, when upgrading to this version you will need to update to the latest data files as well. This is handled automatically if you use conda, otherwise you will need to download and install the data from: webbpsf-data-0.9.0.tar.gz <https://stsci.box.com/shared/static/qcptcokkbx7fgi3c00w2732yezkxzb99.gz>_.

JWST Improvements

  • Added a new capability to model the impact of thermal variations, from telescope slews relative to the sun, onto mirror alignments and therefore onto PSFs. This new thermal_slew method can be used to create a delta OPD for some elapsed time after the slew at either the maximum slew angle, some specified angle, or with a scaling factor applied to maximum case. Once combined with an input OPD (requirements or predicted), the new shape of the mirrors can be used to simulate predicted PSFs some time after a slew. See this Jupyter notebook <https://github.com/spacetelescope/webbpsf/blob/master/notebooks/Example Construction of OPDs from Delta Time After Slew.ipynb>_ for examples. [:pr:269, :user:kjbrooks]
  • Improved wavefront error extrapolation method for field points near FOV corners that are outside the bounds of Zernike reference table data, in order to provide more seamless extrapolation. [:pr:283, :user:JarronL]
  • Improvements in NIRCam optical model: Updated polynomial model for NIRCam defocus versus wavelength. Adds Zernike coefficients for the wavefront error at NIRCam coronagraphy field points. [:pr:283, :user:JarronL]
  • NIRISS NRM mask was flipped along the X axis to match the as-built instrument and measured PSFs [:pr:275, :user:KevinVolkSTScI, :user:anand0xff, :user:mperrin]
  • Updated FGS throughput values to use data from the instrument sub-level testing that was done by Comdev/Honeywell, detector quantum efficiency as measured by Teledyne, and the OTE throughput from Lightsey 2012. The throughput file was also updated to include the WAVEUNIT keyword, which removes a warning. [:user:shanosborne]]

WFIRST Improvements

  • The WFI optical model has been updated to use optical data from the Cycle 8 design revision. These include updated Zernike coefficients for field-dependent wavefront error, and masked and unmasked pupil images for each SCA, and updated filter throughputs (consistent with values used in Pandeia 1.4.2). The correct pupil file will automatically be selected for each calculation based on the chosen detector position and filter. The pupil files are consistent with those provided in the WFI cycle 8 reference information, but have been resampled onto a common pixel scale. See :ref:WFIRST instrument model details <wfirst_wfi> for more. [:pr:309 :user:robelgeda]
  • Note, WFI's filters have been renamed so they all begin with “F”; see the table here <https://github.com/spacetelescope/webbpsf/pull/309>_ .
  • The WFI wavelength range has now been extended to cover the 0.48 - 2.0 µm range. [:pr:309 :user:robelgeda]
  • Expanded psf_grid method’s functionality so it can also be used to make grids of WFIRST PSFs. Note that focal plane distortion is not yet implemented for WFIRST PSFs and so add_distortion keyword should not be used for this case. [:pr:294, :user:shanosborne]
  • The WFIRST F062 filter bandpass red edge was corrected from 8000A to 7600A, and associated unit tests were updated to include F062 [:pr:288, :user:robelgeda]
  • The WFI simulations now include the pointing jitter model, using the predicted WFI pointing stability of 14 milliarcseconds per axis. [:pr:322, :user:mperrin]

General bug fixes and small changes:

  • Many improvements in the PSF Grid functionality for generating photutils.GriddedPSFModels:

    • New options in psf_grid to specify both/either the output filename and output directory location. See this Jupyter notebook <https://github.com/spacetelescope/webbpsf/blob/master/notebooks/Gridded_PSF_Library.ipynb>_ for examples. [:pr:294, :user:shanosborne]
    • sFfilenames when saving out a psf_grid FITS object which has it’s filename parameter set will now end with _det.fits instead of the previous _det_filt.fits [:pr:294, :user:shanosborne]
    • Update added to utils.to_griddedpsfmodel where a 2-dimensional array input with a header containing only 1 DET_YX keyword can be turned into GriddedPSFModel object without error as it implies the case of a PSF grid with num_psfs = 1. [:pr:294, :user:shanosborne]
    • Remove deletion of det_yx and oversamp keywords from psf_grid output to allow for easier implementation in certain cases. Normal case users will have extra keywords but will not change functionality [:pr:291, :user:shanosborne]
    • Updated normalization of PSFs from psf_grid to be in surface brightness units, independent of oversampling in order to match the expectation of photutils.GriddedPSFModel. This is diferent than webbpsf's default in which PSFs usually sum to 1 so the counts/pixel varies based on sampling. [:pr:311, :user:mperrin]
    • Fix bug in how pupilopd keyword is saved and include extra keywords opd_file, opdslice, coronmsk, and pupil in the psf_grid output, both the GriddedPSFModel meta data and FITS object's header [:pr:284, :pr:293, :pr:299, :user:shanosborne]
  • The set_position_from_aperture_name method now correctly sets the detector position parameter in the science frame [:pr:281, :user:shanosborne, :user:JarronL, :user:mperrin]

  • Fix OPD HDUList output from the as_fits method inside the OPD class to include the previously existing header information [:pr:270 :user:laurenmarietta]

  • Added support for secondary mirror moves to the move_sur() method through the move_sm_local method [:pr:295, :user:AldenJurling]

  • Remove units keyword from get_opd method, now the wave input needs to be a Wavefront object [:pr:304, :user:shanosborne]

Software and Package Infrastructure Updates:

  • Added environment.yml file [:pr:321, :user:shanosborne, :user:mperrin]
  • Remove leftover deprecated syntax _getOpticalSystem for _get_optical_system and display_PSF for display_psf [:pr:280, :pr:294, :user:mperrin, :user:shanosborne]
  • Various smaller code cleanup and doc improvements, including code cleanup for better Python PEP8 style guide compliance [:user:mperrin, :user:shanosborne, :user:robelgeda]
  • Documentation added and/or updated for a variety of features [:pr:277, :pr:280, :pr:318, :user:mperrin, @shanosborne]

Release 0.8.0

13 Dec 22:35
Compare
Choose a tag to compare

First Python 3-only version of WebbPSF. This release focuses mostly on performance with no changes in the optical models. There is also a new feature for creating PSF grids. See release notes and documentation for more details.