Page History
Table of Contents |
---|
The Pandeia engine of the Exposure Time Calculator is released to the community to support users who wish to script their calculations, run more extensive parameter space studies, and have more direct control of their scenes. We also recognize that the community has developed more extensive wrappers and public tools that depend on the Pandeia engine.
This page is intended to facilitate communication with developers in the community with Pandeia engine dependencies.
The latest release of the Pandeia engine is 1.67.2.
- Get the latest engine release software, installable with pip
- See the installation instructions
- Get the Synphot data files that support certain target spectra manipulations
- Get the required mission-specific items:
Webb | Roman |
---|---|
|
|
JWST users must continue to use v1.6.1; there is no v1.6.2 release for JWST.
- View usage instructions (Webb-specific)
- View the Input API documentation
- View the Output API documentation
Next Planned Release
The next release of the Pandeia Engine will be after JWST launch and commissioning.Warning title
This alpha release contains numerous changes to APIs in the engine internals and the reference data structures; there are no changes to the regular external input API and only minor additions to the output API.
The code is being distributed to the community for development purposes only and is not approved for scientific use. For any other purpose (science, papers, posters, etc) please continue to use the official releases linked above. Developers should not make releases based on this alpha release. This code is not feature-complete, and there will be other minor changes prior to the actual 1.7 release.
In brief -
- If you are using the Pandeia Engine by passing it an input dictionary via perform_calculation.perform_calculation(), you MAY not be affected by the changes.
- If your code uses the Pandeia Engine as a library and uses (in particular, but not limited to) the Instrument, DetectorSignal, CombinedSignal, DetectorNoise, ConvolvedSceneCube, AdvancedPSF, or ExposureSpec classes, the calc_utils functions, the etc3d.calculate_contrast() function, or otherwise utilizes the Pandeia reference data, your code is highly likely to be affected and you should read the release notes carefully.
Engine: v1.7alpha (or pip install -i https://test.pypi.org/simple/ pandeia.engine==1.7a1)
JWST Data, Release notes, Known Issues
Roman Data, Release notes, Known Issues
Also requires the Synphot dataset.
Release was developed with Python 3.9, numpy 1.21, scipy 1.7.0, astropy 4.2, photutils 1.1.0, synphot 1.1.0, stsynphot 1.1.0
In the next release:
New Features:
JWST
Backwards Incompatible:
note
The JWST support in v1.7 is based entirely on pre-commissioning data and does not reflect any on-orbit values.
Next Planned Release
The next release of the Pandeia Engine will be after JWST commissioning.
DetectorSignal, CombinedSignal, and CalculationConfig classes are now defined in signal.py; the DetectorNoise class is defined in noise.py; etc3d.py now contains only calculate_sn, calculate_contrast, and calculate_time.The API for describing the default calculations has changed to make that possible.
The noise-computing methods previously in ExposureSpec have been moved to a new class, Detector (with child classes for H2RG, H4RG, and SiAs detectors) along with the calc_cr_loss method previously in DetectorNoise. The Detector instance for a calculation can be accessed from a DetectorSignal as DetectorSignal.the_detector; exposure parameters in ExposureSpec can now be accessed from DetectorSignal as DetectorSignal.the_detector.exposure_spec. This is an internal API only change; regular use of the engine (running perform_calculation() on a dictionary) is not affected.
The Roman WFI is now properly identified as an H4RG detector, rather than an H2RG. At present, H4RG is identical to H2RG.
Reference Updates:
Users now need to have the TRDS supplementary dataset to normalize by Vegamags.
Other Changes:
What support is available?
Questions about the Pandeia engine for Webb may be directed to the JWST help desk; for Roman, email help@stsci.edu with Roman and/or WFIRST in the subject line or body. However, due to the complexity of the engine, support will be limited and response times may be longer than for other tools.
We welcome comments and feature requests, and these will be considered along with other ETC work.
What is the Pandeia Engine?
The Pandeia engine uses a pixel-based 3-dimensional approach to perform calculations on small (typically a few arcseconds) 2-dimensional user-created astronomical scenes. It models both the spatial and the wavelength dimensions, using realistic point spread functions (produced using WebbPSF) for each instrument mode. It natively handles correlated read noise, inter-pixel capacitance, and saturation. Since the signal and noise are modeled for individual detector pixels, the ETC is able to replicate many of the steps that observers will perform when calibrating and reducing their JWST data. This simplifies interpretation of the extracted signal-to-noise ratio (SNR) calculated by the ETC.
Info |
---|
While the Pandeia engine includes many effects not typically included in other ETCs, it is not an observation simulator. It does not simulate the full detector, nor does it include 2-dimensional effects such as distortion. |
Details on the algorithms used to compute signal and noise on the detector and the strategies used to compute the extracted products can be found in Pontoppidan et al. 2016.