Documentation for WebbPSF

WebbPSF is a Python package that computes simulated point spread functions (PSFs) for NASA’s JWST and WFIRST observatories. WebbPSF transforms models of telescope and instrument optical state into PSFs, taking into account detector pixel scales, rotations, filter profiles, and point source spectra. It is not a full optical model of JWST, but rather a tool for transforming optical path difference (OPD) maps, created with some other tool, into the resulting PSFs as observed with JWST’s or WFIRST’s instruments.

Sample PSFs for JWST's instruments.

Figure 1: Sample PSFs for JWST’s instrument suite, all on the same angular scale and display stretch.

Sample PSFs for the filters in the WFIRST WFI.

Figure 2: Sample PSFs for the filters in the WFIRST WFI.

What this software does:

  • Uses OPD maps precomputed by detailed optical simulations of JWST and WFIRST, and in the case of JWST based on instrument and telescope flight hardware cryo-vacuum test results.
  • For JWST, computes PSF images with requested properties for any of JWST’s instruments. Supports imaging, coronagraphy, and most spectrographic modes with all of JWST’s instruments. IFUs are yet to come.
  • For WFIRST, computes PSFs with the Wide Field Imager, based on recent GSFC optical models, including field- and wavelength-dependent aberrations. A preliminary version of the Coronagraph Instrument is also available.
  • Provides a suite of tools for quantifying PSF properties such as FWHM, Strehl ratio, etc.

What this software does NOT do:

  • Contain in itself any detailed thermal or optical model of JWST or WFIRST. For the results of end-to-end integrated simulations of JWST, see for instance Predicted JWST imaging performance (Knight, Lightsey, & Barto; Proc. SPIE 2012). For WFIRST modeling, see the WFIRST Reference Info page
  • Model spectrally dispersed PSFs produced by any of the spectrograph gratings. It does, however, let you produce monochromatic PSFs in these modes, suitable for stitching together into spectra using some other software.
  • Model most detector effects such as pixel MTF, intrapixel sensitivity variations, interpixel capacitance, or any noise sources. Add those separately with your favorite detector model code. (*Note, one particularly significant detector scattering for MIRI imaging has now been added.)

Contributors: WebbPSF has been developed by Marshall Perrin, Joseph Long, Neil Zimmerman, Robel Geda, Shannon Osborne, Marcio Melendez Hernandez, Lauren Chambers, and Keira Brooks, with contributions from Jarron Leisenring, Ewan Douglas, Charles Lajoie, Megan Sosey, and the developers of the astropy-helpers template framework.

Getting Started with WebbPSF

The WebbPSF software system is composed of two Python packages: a lower-level optical propagation library (POPPY) plus an implementation of the JWST instruments using that library (WebbPSF). This documentation explains the programming interfaces and graphical user interface of WebbPSF, as well as providing a quick overview of POPPY.

Quickstart Jupyter Notebook

This documentation is complemented by an Jupyter Notebook format quickstart tutorial. Downloading and running that notebook is a great way to get started using WebbPSF.

What’s new in the latest release?

Getting Help

For help using or installing webbpsf, you can contact the STScI Help Desk, Note that WebbPSF is included in the Astroconda python distribution, as well as being installable via standard Python packaging tools..

Appendices and Reference

How to cite WebbPSF

In addition to this documentation, WebbPSF is described in the following references. Users of WebbPSF are encouraged to cite one of these.

In particular, the 2012 SPIE paper gives a broad overview, the 2014 SPIE paper presents comparisons to instrument cryotest data, and the Technical Report document describes in more detail the relevant optical physics, explains design decisions and motivation for WebbPSF’s architecture, and presents extensive validation tests demonstrating consistency between WebbPSF and other PSF simulation packages used throughout the JWST project.

Mailing List

If you would like to receive email announcements of future versions, please contact Marshall Perrin, or visit to subscribe yourself to the “” list.