stips 2.2.2__tar.gz → 2.3.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {stips-2.2.2 → stips-2.3.1}/.github/workflows/ci_workflows.yml +8 -8
- {stips-2.2.2 → stips-2.3.1}/.rtd-environment.yml +1 -4
- {stips-2.2.2 → stips-2.3.1}/CHANGES.rst +34 -9
- stips-2.3.1/CITATION.cff +41 -0
- {stips-2.2.2 → stips-2.3.1}/Dockerfile +0 -1
- {stips-2.2.2/stips.egg-info → stips-2.3.1}/PKG-INFO +5 -4
- {stips-2.2.2 → stips-2.3.1}/README.md +29 -2
- {stips-2.2.2 → stips-2.3.1}/docs/basic_tutorial.rst +1 -1
- {stips-2.2.2 → stips-2.3.1}/docs/bugs.rst +4 -2
- {stips-2.2.2 → stips-2.3.1}/docs/conf.py +2 -1
- {stips-2.2.2 → stips-2.3.1}/docs/examples.rst +0 -1
- stips-2.3.1/docs/help.rst +9 -0
- {stips-2.2.2 → stips-2.3.1}/docs/index.rst +7 -5
- {stips-2.2.2 → stips-2.3.1}/docs/installation.rst +51 -31
- {stips-2.2.2 → stips-2.3.1}/docs/release.rst +68 -11
- stips-2.3.1/docs/requirements.txt +8 -0
- {stips-2.2.2 → stips-2.3.1}/docs/using_stips/catalogue_formats.rst +4 -3
- {stips-2.2.2 → stips-2.3.1}/docs/using_stips/config_file.rst +13 -19
- stips-2.3.1/docs/using_stips/phoenix_grid.rst +76 -0
- {stips-2.2.2 → stips-2.3.1}/docs/using_stips/psf_grid.rst +1 -1
- {stips-2.2.2 → stips-2.3.1}/docs/using_stips.rst +1 -0
- {stips-2.2.2 → stips-2.3.1}/environment.yml +9 -9
- {stips-2.2.2 → stips-2.3.1}/environment_dev.yml +9 -15
- {stips-2.2.2 → stips-2.3.1}/notebooks/STIPS Advanced I /342/200/223 Further Observations, Noise and Distortion.ipynb" +1 -1
- {stips-2.2.2 → stips-2.3.1}/notebooks/STIPS Advanced II - PSFs.ipynb +3 -3
- {stips-2.2.2 → stips-2.3.1}/ref_data/retrieve_stips_data.py +6 -5
- {stips-2.2.2 → stips-2.3.1}/setup.cfg +5 -4
- {stips-2.2.2 → stips-2.3.1}/stips/__init__.py +1 -1
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/astro_image.py +59 -33
- {stips-2.2.2 → stips-2.3.1}/stips/data/CreatePhoenixGrid.py +20 -12
- {stips-2.2.2 → stips-2.3.1}/stips/data/stips_config.yaml +10 -8
- {stips-2.2.2 → stips-2.3.1}/stips/instruments/instrument.py +21 -8
- {stips-2.2.2 → stips-2.3.1}/stips/instruments/roman_instrument.py +2 -5
- {stips-2.2.2 → stips-2.3.1}/stips/instruments/wfi.py +96 -32
- {stips-2.2.2 → stips-2.3.1}/stips/stellar_module/star_generator.py +2 -2
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/tests/test_makePSF.py +1 -1
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/utilities.py +122 -55
- {stips-2.2.2 → stips-2.3.1/stips.egg-info}/PKG-INFO +5 -4
- {stips-2.2.2 → stips-2.3.1}/stips.egg-info/SOURCES.txt +4 -3
- {stips-2.2.2 → stips-2.3.1}/stips.egg-info/requires.txt +3 -2
- stips-2.2.2/CITATION +0 -8
- stips-2.2.2/docs/help.rst +0 -6
- stips-2.2.2/docs/requirements.txt +0 -9
- {stips-2.2.2 → stips-2.3.1}/.gitignore +0 -0
- {stips-2.2.2 → stips-2.3.1}/.readthedocs.yaml +0 -0
- {stips-2.2.2 → stips-2.3.1}/CODE_OF_CONDUCT.md +0 -0
- {stips-2.2.2 → stips-2.3.1}/CONTRIBUTING.md +0 -0
- {stips-2.2.2 → stips-2.3.1}/MANIFEST.in +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/Makefile +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/exts/numfig.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/make.bat +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/roman_figures/stips_basic_tutorial.png +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/roman_figures/stips_demo.png +0 -0
- {stips-2.2.2 → stips-2.3.1}/docs/rtd-pip-requirements +0 -0
- {stips-2.2.2 → stips-2.3.1}/licenses/LICENSE.rst +0 -0
- {stips-2.2.2 → stips-2.3.1}/licenses/README.rst +0 -0
- {stips-2.2.2 → stips-2.3.1}/licenses/TEMPLATE_LICENCE.rst +0 -0
- {stips-2.2.2 → stips-2.3.1}/notebooks/STIPS Basic Tutorial.ipynb +0 -0
- /stips-2.2.2/notebooks/notebooks_data/psf_WFI_2.0.0_F129_sca01.fits → /stips-2.3.1/notebooks/notebooks_data/psf_WFI_2.0.0_F129_wfi01.fits +0 -0
- {stips-2.2.2 → stips-2.3.1}/setup.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/tests/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/tests/test_AstroImage.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/tests/test_header.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/astro_image/tests/test_wcs.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/conftest.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/data/CreateIsochroneGrid.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/data/__init__.py +0 -0
- /stips-2.2.2/stips/data/psf_WFI_2.0.0_F129_sca01.fits → /stips-2.3.1/stips/data/psf_WFI_2.0.0_F129_wfi01.fits +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/errors/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/errors/make_cosmic_ray.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/instruments/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/observation_module/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/observation_module/observation_module.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/scene_module/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/scene_module/convert_units.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/scene_module/scene_module.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/stellar_module/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/tests/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/DataTable.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/__init__.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/makePSF.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/testing.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips/utilities/tests/test_config.py +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips.egg-info/dependency_links.txt +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips.egg-info/not-zip-safe +0 -0
- {stips-2.2.2 → stips-2.3.1}/stips.egg-info/top_level.txt +0 -0
- {stips-2.2.2 → stips-2.3.1}/tox.ini +0 -0
|
@@ -14,21 +14,21 @@ jobs:
|
|
|
14
14
|
matrix:
|
|
15
15
|
include:
|
|
16
16
|
|
|
17
|
-
- name: Python 3.
|
|
17
|
+
- name: Python 3.11
|
|
18
18
|
os: ubuntu-latest
|
|
19
|
-
python: "3.
|
|
19
|
+
python: "3.11"
|
|
20
20
|
|
|
21
|
-
- name: Python 3.
|
|
21
|
+
- name: Python 3.13
|
|
22
22
|
os: ubuntu-latest
|
|
23
|
-
python: 3.
|
|
23
|
+
python: 3.13
|
|
24
24
|
|
|
25
|
-
- name: Python 3.
|
|
25
|
+
- name: Python 3.13 Mac
|
|
26
26
|
os: macos-latest
|
|
27
|
-
python: 3.
|
|
27
|
+
python: 3.13
|
|
28
28
|
|
|
29
29
|
- name: Python Long
|
|
30
30
|
os: ubuntu-latest
|
|
31
|
-
python: 3.
|
|
31
|
+
python: 3.13
|
|
32
32
|
|
|
33
33
|
steps:
|
|
34
34
|
- name: Checkout code
|
|
@@ -72,7 +72,7 @@ jobs:
|
|
|
72
72
|
with:
|
|
73
73
|
activate-environment: stips
|
|
74
74
|
environment-file: environment.yml
|
|
75
|
-
python-version: 3.
|
|
75
|
+
python-version: 3.13
|
|
76
76
|
auto-activate-base: false
|
|
77
77
|
|
|
78
78
|
- name: Build Docs
|
|
@@ -5,13 +5,39 @@ Release Notes
|
|
|
5
5
|
Version History and Change Log
|
|
6
6
|
------------------------------
|
|
7
7
|
|
|
8
|
+
Version 2.3.1
|
|
9
|
+
=============
|
|
10
|
+
- Fixed a bug with unit conversion for Pandeia backgrounds
|
|
11
|
+
- Fixed a bug that prevented use of cached PSFs with STPSF v2.0.0, slowing ``fast_galaxy`` simulations
|
|
12
|
+
- Added FITS header outputs for original input X and Y positions alongside those for the PSF interpolation
|
|
13
|
+
- Implemented dynamic calculation of zeropoints based on WFI throughput files from the user's local Pandeia reference data
|
|
14
|
+
- Imposed and documented photon and electron unit equivalence since STIPS assumes a quantum efficiency of 1
|
|
15
|
+
- Added documentation about the now uneditable 3x3 ``psf_grid_size``
|
|
16
|
+
- Added documentation about installing STIPS with alternate package managers
|
|
17
|
+
- Updated pandeia version to be >= 2025.9 and utilities infrastructure to handle new reference data in 2026.1
|
|
18
|
+
- Allowed newer versions of poppy >= 1.0.3
|
|
19
|
+
- Updated contact information for Roman Help Desk
|
|
20
|
+
|
|
21
|
+
Version 2.3.0
|
|
22
|
+
=============
|
|
23
|
+
- Added support for F213 filter.
|
|
24
|
+
- Updated constants for PHOTPLAM (pivot wavelength) and mirror area.
|
|
25
|
+
- Allowed users to specify ``psf_cache_location`` in ``addCatalogue`` function.
|
|
26
|
+
- Transitioned detector naming convention from 'SCANN' to 'WFINN' to match other Roman SOC simulation tools.
|
|
27
|
+
- Fixed bug with reading Internal tables.
|
|
28
|
+
- Updated pandeia version to be >= 2024.12
|
|
29
|
+
- Updated WebbPSF to STPSF and constrained version to be >= 2.0.0
|
|
30
|
+
- Updated documentation to reflect that STIPS creates an intermediate product between L2 and L3 images.
|
|
31
|
+
- Added documentation on (non-physical) gaps in the Phoenix grid.
|
|
32
|
+
- Added citation to STIPS paper.
|
|
33
|
+
|
|
8
34
|
Version 2.2.2
|
|
9
35
|
=============
|
|
10
36
|
- Updated pandeia.engine version to be >= 3.1 instead of == 3.1
|
|
11
37
|
|
|
12
38
|
Version 2.2.1
|
|
13
39
|
=============
|
|
14
|
-
- Fixed a bug on the version of STIPS in __init__.py
|
|
40
|
+
- Fixed a bug on the version of STIPS in ``__init__.py``
|
|
15
41
|
- Updated WebbPSF version to be >= 1.1.1 instead of == 1.1.1
|
|
16
42
|
- Updated synphot>=1.1.1 and stsynphot>=1.1.0 from forced to specific version.
|
|
17
43
|
|
|
@@ -32,7 +58,6 @@ Version 2.1.0
|
|
|
32
58
|
|
|
33
59
|
Version 2.0.0
|
|
34
60
|
=============
|
|
35
|
-
|
|
36
61
|
- STIPS now uses an ePSF, and calculates source appearance on a per-source basis
|
|
37
62
|
- Dropped support for python 2, and python <= 3.7
|
|
38
63
|
- Dropped support for HST and JWST instruments
|
|
@@ -48,13 +73,13 @@ Version 1.0.8
|
|
|
48
73
|
|
|
49
74
|
**STIPS Improvements**
|
|
50
75
|
|
|
51
|
-
- PSFs generated with
|
|
52
|
-
- STIPS has the option to keep all data in memory. [:pr
|
|
76
|
+
- PSFs generated with ``webbpsf`` are now PSF grids. [:pr:`77`, :user:`york-stsci`]
|
|
77
|
+
- STIPS has the option to keep all data in memory. [:pr:`77`, :user:`york-stsci`]
|
|
53
78
|
- Data files have been removed from the repo to allow STIPS to be uploaded to PyPi (pip). The data has been migrated to a STScI box folder. Users can now download the data and set their `stips_data` to allow access to the data that once lived in the repository. [:pr:`59`, :user:`york-stsci`]
|
|
54
79
|
- Travis was setup to run and pass tests. Outdated tests have been removed to allow Travis to pass. [:pr:`65`, :user:`robelgeda`]
|
|
55
80
|
- Test data has been moved to a STScI box folder. [:pr:`64`, :user:`robelgeda`]
|
|
56
|
-
-
|
|
57
|
-
- Frozen environments saved at
|
|
81
|
+
- ``dev`` folder added for any developer related tools. [:pr:`69`, :user:`robelgeda`]
|
|
82
|
+
- Frozen environments saved at ``dev/conda_envs``. [:pr:`69`, :user:`robelgeda`]
|
|
58
83
|
|
|
59
84
|
Version 1.0.7
|
|
60
85
|
=============
|
|
@@ -67,7 +92,7 @@ Version 1.0.7
|
|
|
67
92
|
- environment.yml added for easy conda env build. [:pr:`42`, :user:`robelgeda`]
|
|
68
93
|
- Read the Docs documentation established. [:pr:`55`, :user:`robelgeda`]
|
|
69
94
|
- F062 filter added to Roman WFI. [:pr:`51`, :user:`york-stsci`]
|
|
70
|
-
- Update STIPS to use
|
|
95
|
+
- Update STIPS to use WebbPSF 0.9.0. [:pr:`51`, :user:`york-stsci`]
|
|
71
96
|
- Travis CI initiated for unit and regression testing. [:pr:`40`, :user:`robelgeda`]
|
|
72
97
|
- Python version set to 3.7 [:pr:`40`, :user:`robelgeda`]
|
|
73
98
|
- Licenses updated [:pr:`40`, :user:`robelgeda`]
|
|
@@ -76,8 +101,8 @@ Version 1.0.7
|
|
|
76
101
|
|
|
77
102
|
- Updated astro_image.py to use a PC matrix rather than a CD matrix for the image WCS, which hopefully will result in astropy actually giving you a correctly formatted FITS WCS. [:pr:`46`, :user:`york-stsci`]
|
|
78
103
|
- Adding WCS information to PSF files. PSF files will now have the following:
|
|
104
|
+
|
|
79
105
|
- RA equal to the observation RA at which they were produced
|
|
80
106
|
- DEC equal to the observation DEC at which they were produced
|
|
81
107
|
- PA equal to the observation PA at which they were produced
|
|
82
|
-
- CDELT keywords equal to the PIXELSCL keyword, but adjusted to degrees rather than arcsec.
|
|
83
|
-
- [:pr:`47`, :user:`york-stsci`]
|
|
108
|
+
- CDELT keywords equal to the PIXELSCL keyword, but adjusted to degrees rather than arcsec. [:pr:`47`, :user:`york-stsci`]
|
stips-2.3.1/CITATION.cff
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
message: "If you use this software, please cite it as below."
|
|
3
|
+
authors:
|
|
4
|
+
- name: "STIPS Development Team"
|
|
5
|
+
- family-names: "Gomez"
|
|
6
|
+
given-names: "Sebastian"
|
|
7
|
+
orcid: "https://orcid.org/0000-0001-6395-6702"
|
|
8
|
+
- family-names: "Bellini"
|
|
9
|
+
given-names: "Andrea"
|
|
10
|
+
orcid: "https://orcid.org/0000-0003-3858-637X"
|
|
11
|
+
- family-names: "Al-Kowsi"
|
|
12
|
+
given-names: "Hanna"
|
|
13
|
+
- family-names: "Desjardins"
|
|
14
|
+
given-names: "Tyler"
|
|
15
|
+
orcid: "https://orcid.org/0000-0001-6905-1859"
|
|
16
|
+
- family-names: "Geda"
|
|
17
|
+
given-names: "Robel"
|
|
18
|
+
orcid: "https://orcid.org/0000-0003-1509-9966"
|
|
19
|
+
- family-names: "Han"
|
|
20
|
+
given-names: "Eunkyu"
|
|
21
|
+
orcid: "https://orcid.org/0000-0001-9797-0019"
|
|
22
|
+
- family-names: "Otor"
|
|
23
|
+
given-names: "O. Justin"
|
|
24
|
+
orcid: "https://orcid.org/0000-0002-4679-5692"
|
|
25
|
+
- family-names: "Riedel"
|
|
26
|
+
given-names: "Adric"
|
|
27
|
+
orcid: "https://orcid.org/0000-0003-1645-8596"
|
|
28
|
+
- family-names: "Ryan"
|
|
29
|
+
given-names: "Russell"
|
|
30
|
+
orcid: "https://orcid.org/0000-0003-0894-1588"
|
|
31
|
+
- family-names: "Spitzer"
|
|
32
|
+
given-names: "Isaac"
|
|
33
|
+
- family-names: "York"
|
|
34
|
+
given-names: "Brian"
|
|
35
|
+
title: "STIPS"
|
|
36
|
+
version: 2.3.1
|
|
37
|
+
doi: https://doi.org/10.5281/zenodo.15232587
|
|
38
|
+
date-released: 2026-05-08
|
|
39
|
+
url: "https://github.com/spacetelescope/STScI-STIPS"
|
|
40
|
+
|
|
41
|
+
# see a full list of contributors here: https://github.com/spacetelescope/STScI-STIPS/graphs/contributors
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: stips
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.3.1
|
|
4
4
|
Summary: STIPS is the Space Telescope Imaging Product Simulator.
|
|
5
5
|
Home-page: https://github.com/spacetelescope/STScI-STIPS
|
|
6
6
|
Author: Space Telescope Science Institute
|
|
@@ -12,8 +12,9 @@ Requires-Dist: scipy
|
|
|
12
12
|
Requires-Dist: photutils
|
|
13
13
|
Requires-Dist: synphot>=1.1.1
|
|
14
14
|
Requires-Dist: stsynphot>=1.1.0
|
|
15
|
-
Requires-Dist:
|
|
16
|
-
Requires-Dist:
|
|
15
|
+
Requires-Dist: stpsf>=2.0.0
|
|
16
|
+
Requires-Dist: poppy>=1.0.3
|
|
17
|
+
Requires-Dist: pandeia.engine>=2025.9
|
|
17
18
|
Requires-Dist: montage-wrapper
|
|
18
19
|
Requires-Dist: pyyaml
|
|
19
20
|
Requires-Dist: soc_roman_tools
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/spacetelescope/STScI-STIPS/actions/workflows/ci_workflows.yml?query=branch:main)
|
|
4
4
|
[](http://www.stsci.edu)
|
|
5
|
+
[](https://zenodo.org/badge/latestdoi/94350619)
|
|
5
6
|
|
|
6
7
|
For documentation and installation instructions please visit https://stips.readthedocs.io
|
|
7
8
|
|
|
@@ -21,8 +22,10 @@ It does not include instrument saturation effects.
|
|
|
21
22
|
|
|
22
23
|
## Why use STIPS?
|
|
23
24
|
|
|
24
|
-
STIPS is intended to produce quick simulations
|
|
25
|
-
|
|
25
|
+
STIPS is intended to produce quick simulations that are corrected for distortion, but not mosaicked.
|
|
26
|
+
We note there is no equivalent flight product, since Roman Level 3 (L3) files are both distortion
|
|
27
|
+
corrected and mosaicked, while Level 2 (L2) files are neither. STIPS is ideal for
|
|
28
|
+
cases where `Pandeia <https://pypi.org/project/pandeia.engine/>`_ does not
|
|
26
29
|
provide a large enough simulation area (e.g., full-detector or multiple-detector
|
|
27
30
|
observations). STIPS obtains its Roman instrument and filter values from
|
|
28
31
|
Pandeia, so it should produce output within 10% of output produced by Pandeia.
|
|
@@ -43,3 +46,27 @@ developed by Andrea Bellini ([@AndreaBellini](https://github.com/AndreaBellini))
|
|
|
43
46
|
|
|
44
47
|

|
|
45
48
|
|
|
49
|
+
## Citation
|
|
50
|
+
|
|
51
|
+
If you use STIPS, please cite the [STIPS PASP Paper](https://ui.adsabs.harvard.edu/abs/2024PASP..136l4502S/abstract) that describes the code.
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
@ARTICLE{2024PASP..136l4502S,
|
|
55
|
+
author = {{Stips Development Team} and {Gomez}, Sebastian and {Bellini}, Andrea and {Al-Kowsi}, Hanna and {Desjardins}, Tyler and {Geda}, Robel and {Han}, Eunkyu and {Otor}, O. Justin and {Riedel}, Adric and {Ryan}, Russell and {Spitzer}, Isaac and {York}, Brian},
|
|
56
|
+
title = "{STIPS: The Nancy Grace Roman Space Telescope Imaging Product Simulator}",
|
|
57
|
+
journal = {\pasp},
|
|
58
|
+
keywords = {Astronomical techniques, Telescopes, Astronomical methods, 1684, 1689, 1043, Astrophysics - Instrumentation and Methods for Astrophysics},
|
|
59
|
+
year = 2024,
|
|
60
|
+
month = dec,
|
|
61
|
+
volume = {136},
|
|
62
|
+
number = {12},
|
|
63
|
+
eid = {124502},
|
|
64
|
+
pages = {124502},
|
|
65
|
+
doi = {10.1088/1538-3873/ad9524},
|
|
66
|
+
archivePrefix = {arXiv},
|
|
67
|
+
eprint = {2411.11978},
|
|
68
|
+
primaryClass = {astro-ph.IM},
|
|
69
|
+
adsurl = {https://ui.adsabs.harvard.edu/abs/2024PASP..136l4502S},
|
|
70
|
+
adsnote = {Provided by the SAO/NASA Astrophysics Data System}
|
|
71
|
+
}
|
|
72
|
+
```
|
|
@@ -29,7 +29,7 @@ an output set of the following form:
|
|
|
29
29
|
|
|
30
30
|
Pandeia version a.b.c with Data Version a.b.c. at /Some/Path/To/pandeia_refdata
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
STPSF Version d.e.f with Data Version d.e.f at /Some/Path/To/stpsf_data_path
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
Setting Up Some Basics
|
|
@@ -14,9 +14,11 @@ removed from this list as they are addressed in future STIPS updates.
|
|
|
14
14
|
* The flux measurements of sources are only validated in the absence of noise/background.
|
|
15
15
|
As such, the net flux of the image may be inaccurate.
|
|
16
16
|
|
|
17
|
-
* STIPS interpolates nine PSFs generated by
|
|
17
|
+
* STIPS interpolates nine PSFs generated by STPSF across the detector to the location of the
|
|
18
18
|
source being placed. However, there is currently a known offset of 20 pixels (in both the
|
|
19
19
|
X and Y directions) between the location at which the PSF is interpolated, and the
|
|
20
|
+
location at which the target is displayed. The header of the output image lists both of these locations:
|
|
21
|
+
'x' and 'y' for the location at which the PSF is interpolated and 'x_input' and 'y_input' for the
|
|
20
22
|
location at which the target is displayed.
|
|
21
23
|
|
|
22
24
|
.. note::
|
|
@@ -26,7 +28,7 @@ removed from this list as they are addressed in future STIPS updates.
|
|
|
26
28
|
(x, y) but the interpolated PSF shape will be the shape of the PSF at location (x+20, y+20).
|
|
27
29
|
Because the WFI PSF shape does not vary strongly over this distance, the effect is
|
|
28
30
|
minimal and should not be a concern for most science cases. If ultra-precise PSF models
|
|
29
|
-
are required, the user should generate them directly with
|
|
31
|
+
are required, the user should generate them directly with STPSF at the desired pixel
|
|
30
32
|
location.
|
|
31
33
|
|
|
32
34
|
* Bright sources will have large diffraction spikes that are visible beyond 22 pixels away
|
|
@@ -67,6 +67,7 @@ extensions = [
|
|
|
67
67
|
'sphinx.ext.mathjax',
|
|
68
68
|
'sphinx.ext.viewcode',
|
|
69
69
|
'sphinx_rtd_theme',
|
|
70
|
+
'sphinx_issues'
|
|
70
71
|
]
|
|
71
72
|
|
|
72
73
|
numpydoc_show_class_members = False
|
|
@@ -186,4 +187,4 @@ if eval(setup_cfg.get('edit_on_github')):
|
|
|
186
187
|
edit_on_github_doc_root = "docs"
|
|
187
188
|
|
|
188
189
|
# -- Resolving issue number to links in changelog -----------------------------
|
|
189
|
-
|
|
190
|
+
issues_default_group_project = setup_cfg['github_project'] # for sphinx_issues
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
****
|
|
2
|
+
Help
|
|
3
|
+
****
|
|
4
|
+
|
|
5
|
+
For assistance with STIPS, please visit the
|
|
6
|
+
`Roman Help Desk <https://stsci.service-now.com/roman>`_. After logging in to
|
|
7
|
+
your account, select "Get Help" and then the "Simulators and Tools" category.
|
|
8
|
+
Mention STIPS in the subject line and include relevant details in the
|
|
9
|
+
description of the resulting form.
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
Documentation
|
|
2
2
|
=============
|
|
3
3
|
|
|
4
|
-
.. note::
|
|
5
|
-
|
|
6
|
-
As of version 2.0, STIPS no longer offers support for HST or JWST.
|
|
7
|
-
|
|
8
4
|
Overview
|
|
9
5
|
--------
|
|
10
6
|
STIPS is the Space Telescope Imaging Product Simulator. It is designed to create
|
|
@@ -14,9 +10,15 @@ instrumental distortion (if available) as well as calibration residuals from fla
|
|
|
14
10
|
dark currents, and cosmic rays. It automatically includes Poisson noise and readout noise.
|
|
15
11
|
It does not include instrument saturation effects.
|
|
16
12
|
|
|
13
|
+
.. note::
|
|
14
|
+
|
|
15
|
+
As of version 2.0, STIPS no longer offers support for HST or JWST.
|
|
16
|
+
|
|
17
17
|
Why use STIPS?
|
|
18
18
|
--------------
|
|
19
|
-
STIPS is intended to produce quick simulations
|
|
19
|
+
STIPS is intended to produce quick simulations that are corrected for distortion, but not mosaicked.
|
|
20
|
+
We note there is no equivalent flight product, since Roman Level 3 (L3) files are both distortion
|
|
21
|
+
corrected and mosaicked, while Level 2 (L2) files are neither. STIPS is ideal for
|
|
20
22
|
cases where `Pandeia <https://pypi.org/project/pandeia.engine/>`_ does not
|
|
21
23
|
provide a large enough simulation area (e.g., full-detector or multiple-detector
|
|
22
24
|
observations). STIPS obtains its Roman instrument and filter values from
|
|
@@ -9,18 +9,14 @@ in this section along with instructions.
|
|
|
9
9
|
STIPS Requirements
|
|
10
10
|
##################
|
|
11
11
|
|
|
12
|
-
* ``pandeia>=
|
|
12
|
+
* ``pandeia>=2025.9``: Exposure time calculator.
|
|
13
13
|
|
|
14
|
-
* ``
|
|
15
|
-
support package used by WebbPSF, have version ``>=1.0.3``.
|
|
14
|
+
* ``stpsf>=2.0.0``: Nancy Grace Roman PSF calculator. STIPS also requires that ``poppy``, a
|
|
15
|
+
support package used by STPSF (Formerly WebbPSF), have version ``>=1.0.3``.
|
|
16
16
|
|
|
17
|
-
* ``astropy``: STIPS uses Astropy in order to
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* Read and write ASCII tables (specifically in the IPAC format).
|
|
22
|
-
|
|
23
|
-
* Generate Sersic profile models (if any are in the generated scene).
|
|
17
|
+
* ``astropy``: STIPS uses Astropy in order to read and write ASCII tables
|
|
18
|
+
(specifically in the IPAC format) and FITS files, as well as to generate
|
|
19
|
+
Sersic profile models (if any are in the generated scene).
|
|
24
20
|
|
|
25
21
|
* ``montage_wrapper``: STIPS uses ``montage`` to generate mosaics. It is
|
|
26
22
|
only imported if STIPS is asked to generate a multi-detector image.
|
|
@@ -49,14 +45,18 @@ STIPS Requirements
|
|
|
49
45
|
Finally, STIPS requires a set of data files whose location is marked by setting the
|
|
50
46
|
environment variable ``stips_data``, which will be installed as part of these instructions.
|
|
51
47
|
|
|
52
|
-
Installing Using
|
|
53
|
-
|
|
48
|
+
Installing Using a Package Manager and Source Code
|
|
49
|
+
##################################################
|
|
54
50
|
|
|
55
|
-
STIPS can be installed using the
|
|
56
|
-
|
|
57
|
-
`
|
|
58
|
-
|
|
59
|
-
|
|
51
|
+
STIPS can be installed using one of the YAML files provided in its source code.
|
|
52
|
+
These YAML files define an environment that a package manager like
|
|
53
|
+
`Micromamba <https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html>`_,
|
|
54
|
+
`Mamba <https://mamba.readthedocs.io/en/latest/installation/mamba-installation.html>`_,
|
|
55
|
+
`Conda <https://docs.anaconda.com/anaconda/install/>`_, or another can read and
|
|
56
|
+
install on your machine.
|
|
57
|
+
(If you don't have a package manager, follow any of the preceding links for
|
|
58
|
+
installation instructions.) The YAML files include all packages required by
|
|
59
|
+
STIPS. Please follow the steps below to install STIPS.
|
|
60
60
|
|
|
61
61
|
.. _installing-as-a-user:
|
|
62
62
|
|
|
@@ -74,15 +74,19 @@ Installing as a User
|
|
|
74
74
|
|
|
75
75
|
#. The environment file can be used in two ways:
|
|
76
76
|
|
|
77
|
-
* To create a new
|
|
77
|
+
* To create a new environment named ``stips``::
|
|
78
78
|
|
|
79
79
|
conda env create -f environment.yml
|
|
80
80
|
conda activate stips
|
|
81
81
|
|
|
82
82
|
|
|
83
|
-
* Or, to install to or update an existing
|
|
83
|
+
* Or, to install to or update an existing environment::
|
|
84
|
+
|
|
85
|
+
conda env update --name <EXISTING-ENV> --file environment.yml
|
|
84
86
|
|
|
85
|
-
|
|
87
|
+
(If you are using mamba, substitute it for ``conda`` in the commands above.
|
|
88
|
+
If you are using micromamba, substitute it for ``conda`` and also remove
|
|
89
|
+
``env`` in the commands above.)
|
|
86
90
|
|
|
87
91
|
Installing as a Developer
|
|
88
92
|
*************************
|
|
@@ -94,10 +98,17 @@ Installing as a Developer
|
|
|
94
98
|
|
|
95
99
|
.. _downloading-required-ref-data:
|
|
96
100
|
|
|
101
|
+
Installing with pip
|
|
102
|
+
*******************
|
|
103
|
+
|
|
104
|
+
While it is possible to install STIPS with ``pip`` instead of a package manager,
|
|
105
|
+
we recommend the latter due to the aforementioned warning about using ``pip``
|
|
106
|
+
with the ``esutil`` package.
|
|
107
|
+
|
|
97
108
|
Downloading Required Reference Data
|
|
98
109
|
************************************
|
|
99
110
|
|
|
100
|
-
STIPS, Pandeia, and
|
|
111
|
+
STIPS, Pandeia, and STPSF require additional reference datasets.
|
|
101
112
|
You will need to download the data and add them to your environmental path.
|
|
102
113
|
|
|
103
114
|
1. Add the following paths to your bash environmental path. It is recommended that you add the path to your ``.bash_profile`` file:
|
|
@@ -105,9 +116,12 @@ You will need to download the data and add them to your environmental path.
|
|
|
105
116
|
.. code-block:: text
|
|
106
117
|
|
|
107
118
|
export stips_data="<absolute_path_to_this_folder>/ref_data/stips_data"
|
|
108
|
-
export
|
|
119
|
+
export STPSF_PATH="<absolute_path_to_this_folder>/ref_data/stpsf-data"
|
|
109
120
|
export PYSYN_CDBS="<absolute_path_to_this_folder>/ref_data/grp/redcat/trds"
|
|
110
|
-
export pandeia_refdata="<absolute_path_to_this_folder>/ref_data/pandeia_data-
|
|
121
|
+
export pandeia_refdata="<absolute_path_to_this_folder>/ref_data/pandeia_data-xxxx.x_roman"
|
|
122
|
+
|
|
123
|
+
# if your Pandeia installation is 2026.1 or higher, add the following:
|
|
124
|
+
export PSF_DIR="<absolute_path_to_this_folder>/ref_data/pandeia_psfs-xxxx.x_roman"
|
|
111
125
|
|
|
112
126
|
.. note::
|
|
113
127
|
|
|
@@ -115,19 +129,25 @@ You will need to download the data and add them to your environmental path.
|
|
|
115
129
|
|
|
116
130
|
2. ``cd`` into the ``ref_data`` directory in your ``STScI-STIPS`` clone.
|
|
117
131
|
|
|
118
|
-
3. Run the following code (after ensuring your ``stips``
|
|
132
|
+
3. Run the following code (after ensuring your package manager's ``stips`` environment is active)::
|
|
119
133
|
|
|
120
134
|
python retrieve_stips_data.py
|
|
121
135
|
|
|
136
|
+
.. caution::
|
|
137
|
+
|
|
138
|
+
Running ``retrieve_stips_data.py`` will fetch the latest versions of each
|
|
139
|
+
package's reference data. If you have manually configured your software
|
|
140
|
+
environment to use other versions of any of these packages, download their
|
|
141
|
+
reference data separately and configure your environment variables
|
|
142
|
+
appropriately to avoid confusion.
|
|
122
143
|
|
|
123
144
|
Testing Installation
|
|
124
145
|
*********************
|
|
125
146
|
|
|
126
147
|
To test if all the required files have been installed, please import STIPS in Python::
|
|
127
148
|
|
|
128
|
-
bash-3.2$
|
|
129
|
-
Python 3.11.
|
|
130
|
-
[Clang 16.0.6 ] on darwin
|
|
149
|
+
bash-3.2$ python3
|
|
150
|
+
Python 3.11.15 | packaged by conda-forge | (main, Mar 5 2026, 16:58:53) [Clang 19.1.7 ] on darwin
|
|
131
151
|
Type "help", "copyright", "credits" or "license" for more information.
|
|
132
152
|
|
|
133
153
|
>>> import stips
|
|
@@ -138,13 +158,13 @@ You should receive an output of the following form:
|
|
|
138
158
|
|
|
139
159
|
.. code-block:: text
|
|
140
160
|
|
|
141
|
-
STIPS Version x.y.z with Data Version
|
|
161
|
+
STIPS Version x.y.z with Data Version a.b.c at /Some/Path/To/stips_data.
|
|
142
162
|
|
|
143
|
-
STIPS Grid Generated with x.y.z
|
|
163
|
+
STIPS Grid Generated with STIPS Version x.y.z.
|
|
144
164
|
|
|
145
|
-
Pandeia
|
|
165
|
+
Pandeia Version YYYY.n with Data Version YYYY.n at /Some/Path/To/pandeia_refdata.
|
|
146
166
|
|
|
147
|
-
|
|
167
|
+
STPSF Version d.e.f with Data Version d.e.f at /Some/Path/To/stpsf_data_path.
|
|
148
168
|
|
|
149
169
|
|
|
150
170
|
Ignore the following warning message if it appears:
|
|
@@ -2,9 +2,41 @@
|
|
|
2
2
|
Developer Release Instructions
|
|
3
3
|
******************************
|
|
4
4
|
|
|
5
|
-
This page offers a complete walkthrough on how to
|
|
6
|
-
version of STIPS on GitHub and PyPI,
|
|
7
|
-
documentation with the new release.
|
|
5
|
+
This page offers a complete walkthrough on how to update the STIPS reference
|
|
6
|
+
data, prepare and release a new version of STIPS on GitHub and PyPI, and sync
|
|
7
|
+
the ReadTheDocs documentation with the new release.
|
|
8
|
+
|
|
9
|
+
Reference data
|
|
10
|
+
==============
|
|
11
|
+
|
|
12
|
+
**Not every release will require an update to the reference data.** If one is
|
|
13
|
+
necessary, begin by incrementing the version number in ``VERSION.txt`` at the
|
|
14
|
+
base of the reference data directory.
|
|
15
|
+
|
|
16
|
+
Next, regenerate the Phoenix grid by running ``stips/data/CreatePhoenixGrid.py``
|
|
17
|
+
from the STIPS GitHub repository. (The file may run for an extended period.)
|
|
18
|
+
Save the results to the reference data directory's ``grid/`` folder. There
|
|
19
|
+
should be a ``.npy`` file for each WFI imaging filter, a coordinates file
|
|
20
|
+
(``input.pkl``), and a grid-specific version file.
|
|
21
|
+
|
|
22
|
+
Copy existing files from the ``test/`` folder and, if necessary, add any that
|
|
23
|
+
are needed to run new tests added to the GitHub codebase during the development
|
|
24
|
+
cycle. The ``.db`` files and ``residual_files`` folder at the base of the
|
|
25
|
+
reference data directory can be copied as they are.
|
|
26
|
+
|
|
27
|
+
Add notes on any oddities or adjustments to the reference data in ``NOTES.txt``
|
|
28
|
+
at the base of the reference data directory. Finally, use the following command
|
|
29
|
+
to compress the files while making sure that they will have the name STIPS
|
|
30
|
+
expects (``stips_data``) when they are unzipped. Don't accidentally delete the carat (^):
|
|
31
|
+
|
|
32
|
+
.. code-block:: text
|
|
33
|
+
|
|
34
|
+
tar -czvf stips_data-X.Y.Z.tgz -s /^YOUR-DIR-NAME/stips_data/ YOUR-DIR-NAME
|
|
35
|
+
|
|
36
|
+
Upload the zipped reference data file to Box with the name
|
|
37
|
+
``stips_data-X.Y.Z.tgz``, substituting in the version numbers selected in the
|
|
38
|
+
first paragraph. **Wait to update** ``stips_data_current.tgz`` until you've
|
|
39
|
+
completed the software release on GitHub.
|
|
8
40
|
|
|
9
41
|
Pre-merge instructions
|
|
10
42
|
======================
|
|
@@ -24,7 +56,9 @@ intended for a release:
|
|
|
24
56
|
* ``environment.yml``
|
|
25
57
|
* ``environment_dev.yml``
|
|
26
58
|
* ``docs/installation.rst``
|
|
27
|
-
* ``
|
|
59
|
+
* ``docs/requirements.txt``
|
|
60
|
+
* ``ref_data/retrieve_stips_data.py``
|
|
61
|
+
* ``utilities/utilities.py`` (if any reference data links have changed)
|
|
28
62
|
|
|
29
63
|
* Are you able to install the new version of STIPS locally with ``pip`` and ``conda``?
|
|
30
64
|
|
|
@@ -32,6 +66,8 @@ intended for a release:
|
|
|
32
66
|
|
|
33
67
|
* Has ``CHANGES.rst`` been updated to include the current release and its associated updates at the top?
|
|
34
68
|
|
|
69
|
+
* Has ``CITATION.cff`` been updated with the relevant values in its ``version`` and ``date-released`` fields?
|
|
70
|
+
|
|
35
71
|
* Are all CI tests in the release's pull request passing?
|
|
36
72
|
|
|
37
73
|
* Has at least one developer given the pull request an official approval on GitHub?
|
|
@@ -45,6 +81,17 @@ Post-merge instructions
|
|
|
45
81
|
Tagging the merge commit
|
|
46
82
|
------------------------
|
|
47
83
|
|
|
84
|
+
On your machine, check out the branch that tracks the official ``main`` branch
|
|
85
|
+
on the ``spacetelescope`` remote. Rebase it so it includes the newly merged pull
|
|
86
|
+
request. (If your local names for that branch or the ``spacetelescope`` remote
|
|
87
|
+
are different than the defaults – ``main`` and ``origin``, respectively – be
|
|
88
|
+
sure to substitute them in below.)
|
|
89
|
+
|
|
90
|
+
.. code-block:: text
|
|
91
|
+
|
|
92
|
+
git checkout origin main
|
|
93
|
+
git rebase origin/main
|
|
94
|
+
|
|
48
95
|
Apply a tag to the merge commit, substituting in the proper version number.
|
|
49
96
|
|
|
50
97
|
.. code-block:: text
|
|
@@ -58,9 +105,7 @@ Apply a tag to the merge commit, substituting in the proper version number.
|
|
|
58
105
|
and `adding it to your account <https://docs.github.com/en/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account>`_
|
|
59
106
|
if you don't have one.
|
|
60
107
|
|
|
61
|
-
|
|
62
|
-
online version of the repository is not named ``origin``, be sure to substitute
|
|
63
|
-
its name in below.)
|
|
108
|
+
Push the tag online.
|
|
64
109
|
|
|
65
110
|
.. code-block:: text
|
|
66
111
|
|
|
@@ -76,7 +121,7 @@ manually create a new release in the ``spacetelescope/STScI-STIPS`` GitHub repos
|
|
|
76
121
|
#. Press the "Draft a new release" button above the list of releases.
|
|
77
122
|
#. Press "Choose a tag" and select the one you just pushed online. The target branch should already be selected as ``main``.
|
|
78
123
|
#. Press "Generate release notes" to list the commits included in this release.
|
|
79
|
-
#. In the "Release title" textbox, type ``
|
|
124
|
+
#. In the "Release title" textbox, type ``STIPS Version X.Y.Z``, substituting in the proper version number.
|
|
80
125
|
#. Above the list of commits in the larger textbox for comments, write a single-sentence summary of the release's major updates.
|
|
81
126
|
#. Press "Publish" to complete this section.
|
|
82
127
|
|
|
@@ -131,12 +176,18 @@ Finally, upload them to PyPI:
|
|
|
131
176
|
|
|
132
177
|
.. code-block:: text
|
|
133
178
|
|
|
134
|
-
python
|
|
179
|
+
python -m twine upload dist/*
|
|
135
180
|
|
|
136
181
|
Note that PyPI uploads now require an API token.
|
|
137
182
|
`Refer to their instructions <https://pypi.org/help/#apitoken>`_ if you haven't
|
|
138
183
|
yet set one up.
|
|
139
184
|
|
|
185
|
+
|
|
186
|
+
.. note::
|
|
187
|
+
|
|
188
|
+
If you updated the reference data, now is the proper time to update
|
|
189
|
+
``stips_data_current.tgz`` on Box.
|
|
190
|
+
|
|
140
191
|
While the official release is now complete, keep reading for instructions on
|
|
141
192
|
updating the documentation on ReadTheDocs.
|
|
142
193
|
|
|
@@ -152,8 +203,14 @@ commit will be the repository's current latest commit, so both versions should
|
|
|
152
203
|
be identical for the moment.
|
|
153
204
|
|
|
154
205
|
The versions of the documentation that should be visible to the public and
|
|
155
|
-
marked as "Active" on their "Edit" pages are ``latest
|
|
156
|
-
``vX.Y.Z``.
|
|
206
|
+
marked as "Active" on their "Edit" pages are ``main``, ``latest``, and the new
|
|
207
|
+
release, ``vX.Y.Z``. On `the "Versions" page <https://readthedocs.org/projects/stips/versions/>`_,
|
|
208
|
+
press "Edit" beside any other publicly visible versions and select the "Hidden"
|
|
209
|
+
checkbox for them. In the future, we may make past versions visible, too.
|
|
210
|
+
|
|
211
|
+
Finally, go to the "Admin" tab, make sure you're in the "Settings" section, and
|
|
212
|
+
change the "Default branch" to the new ``vX.Y.Z``. (Note that this is different
|
|
213
|
+
from the "Default version" setting further down the page, which should be ``latest``.)
|
|
157
214
|
|
|
158
215
|
Troubleshooting: webhooks
|
|
159
216
|
-------------------------
|