Overview
The Pandeia Engine is a Python module (compatible with Python 3.6 and later) that functions as the computational engine of the JWST ETC and Roman ETC. It can be imported and run as a standalone module.
The engine itself can be run with the command
from pandeia.engine import perform_calculation result = perform_calculation.perform_calculation(calculation)
where "calculation" is a heirarchical dictionary describing a scene of sources, an instrument setup, and an extraction strategy.
Such dictionaries are available in JWST Webapp download files (as a JSON-formatted file named input.json, suitable for reading in with built-in Python functions) or default versions can be created with the function build_default_calc() and then edited:
from pandeia.engine import calc_utils calculation = calc_utils.build_default_calc("jwst","nircam","sw_imaging")
The command above produces the NIRCam calculation below.
Full API
The full API documentation, with all possible options and combinations for any instrument, is in the attached file:
Examples:
The following calculation defines a JWST NIRCam observation in SW Imaging mode using the full subarray and rapid readout pattern and f070w filter, for a flat-spectrum (in fnu) point source normalized to 0.001 mJy, intended to be observed with a 0.2" aperture.
(click here to download as a JSON file: sw_f070w_rapid_full.jeng)The following dictionary defines a Roman WFI Imaging observation with the F062 filter, 1024x1024 subarray (similar read time to what's expected for Roman WFI Imaging), medium8 readout pattern, and 6 groups; for a 0.001 mJy flat-spectrum point source (in fnu) intended to be observed with a 0.2" aperture.
(click here to download as a JSON file: any_f062_medium8_1024x1024.jeng)