James Webb太空望远镜科学观测校准库
项目描述
JWST校准管道
【重要】JWST需要C编译器来处理依赖项,目前仅限于Python 3.10、3.11或3.12。
【注意】Linux和MacOS平台已测试并得到支持。目前不支持Windows。
【警告】在MacOS Mojave 10.14上安装将失败,因为依赖项
opencv-python
没有稳定的构建版本。
安装
如遇安装问题,请联系JWST帮助台。
将最新版本的jwst
安装到新的虚拟环境或conda环境中最简单的方法是
pip install jwst
详细安装
可以通过pip
将jwst
包安装到虚拟环境或conda环境。我们建议对于每个安装,您首先创建一个只安装Python的新环境,然后将jwst
包及其依赖项安装到该裸环境。如果使用conda环境,请确保您已安装Anaconda或Miniconda的最新版本。如果需要,您可以创建多个环境,以便在不同版本的jwst
包之间切换(例如,发布版本与当前开发版本之间)。
在所有情况下,安装通常是一个3步骤的过程
- 创建conda环境
- 激活该环境
- 将所需版本的
jwst
包安装到该环境中
以下将详细介绍如何进行不同类型的安装,包括标记发布、操作中使用的DMS构建和开发版本。请记住,所有conda操作都必须在bash/zsh shell中执行。
安装最新发布版本
您可以通过pip
安装最新发布的版本。在bash/zsh shell中
conda create -n <env_name> python=3.11
conda activate <env_name>
pip install jwst
您还可以安装特定版本
conda create -n <env_name> python=3.11
conda activate <env_name>
pip install jwst==1.9.4
从Github安装开发版本
您可以从Github的master分支安装最新的开发版本(未经充分测试)
conda create -n <env_name> python=3.11
conda activate <env_name>
pip install git+https://github.com/spacetelescope/jwst
安装DMS操作构建
有时可能需要操作DMS构建的精确副本(例如,用于验证测试或调试操作问题)。我们通过指定要安装的所有包的确切版本的环境快照打包DMS构建的发布。
要安装特定的DMS构建,请参阅下表中的软件与DMS构建版本对照表
,以确定正确的jwst标签。例如,要安装DMS构建9.0中使用的jwst
版本,请使用jwst标签1.8.2。整个过程与上一节中概述的3步骤过程类似,但每个命令的细节可能会有所不同,因为使用了指定所有特定包要安装的环境快照文件。另外,请注意,Linux和Mac OS系统使用不同的快照文件。
Linux
conda create -n jwstdp-1.12.5 --file https://ssb.stsci.edu/releases/jwstdp/1.12.5/conda_python_stable-deps.txt
conda activate jwstdp-1.12.5
pip install -r https://ssb.stsci.edu/releases/jwstdp/1.12.5/reqs_stable-deps.txt
MacOS
conda create -n jwstdp-1.12.5 --file https://ssb.stsci.edu/releases/jwstdp/1.12.5/conda_python_macos-stable-deps.txt
conda activate jwstdp-1.12.5
pip install -r https://ssb.stsci.edu/releases/jwstdp/1.12.5/reqs_macos-stable-deps.txt
每个DMS交付都有自己的安装说明,可以在以下链接的相应发布文档中找到:https://github.com/astroconda/astroconda-releases/tree/master/jwstdp安装过程可能会不时更改,因此,为特定版本咨询文档页面是安装该版本的最佳方式。
为开发者安装
如果您想使用jwst
包来工作并测试源代码,那么执行此操作的高级过程是首先使用上述相同的过程创建conda环境,然后在环境中覆盖原始代码安装您的个人代码副本。同样,这应该在单独的conda环境中进行,而不是在已经安装了jwst
包发布版本的任何现有环境中。
通常情况下,第一步是创建和激活一个环境
conda create -n <env_name> python=3.11
conda activate <env_name>
要将您自己的代码副本安装到该环境中,您首先需要分叉和克隆 jwst
仓库
cd <where you want to put the repo>
git clone https://github.com/<your_github_username>/jwst.git
cd jwst
注意:python setup.py install
和 python setup.py develop
命令不起作用。
从您本地签出的副本安装为“可编辑”安装
pip install -e .
如果您想运行单元测试或回归测试以及/或构建文档,请确保已安装这些依赖项
pip install -e ".[test]"
pip install -e ".[docs]"
pip install -e ".[test,docs]"
您的开发环境中需要其他有用的包吗?
pip install ipython jupyter matplotlib pylint
校准参考数据系统(CRDS)设置
注意:截至2022年11月10日,将开始弃用CRDS PUB服务器的过程。有关详细信息,请参阅CRDS PUB服务器冻结和弃用页面
CRDS是管理运行管道所需参考文件的系统。有关CRDS的详细信息,请参阅用户指南
JWST CRDS服务器可在https://jwst-crds.stsci.edu找到
它支持STScI的自动处理管道。在STScI网络内部,默认使用该服务器(无修改)运行管道。要在STScI网络外运行管道,必须通过设置两个环境变量来配置CRDS
export CRDS_PATH=<locally-accessable-path>/crds_cache/jwst_ops
export CRDS_SERVER_URL=https://jwst-crds.stsci.edu
<locally-accessable-path>
可以是用户有权使用的任何路径,例如$HOME
。预计需要200GB以上的磁盘空间来缓存最新的几个上下文。
要使用除当前默认值外的特定CRDS上下文,请设置CRDS_CONTEXT
环境变量
export CRDS_CONTEXT=jwst_1179.pmap
文档
文档(每天从Github master
分支构建)可在以下位置找到:
https://jwst-pipeline.readthedocs.io/en/latest/
要自己构建文档,请克隆此存储库,并使用以下命令构建文档:
pip install -e ".[docs]"
cd docs
make html
make latexpdf
贡献和反馈
我们欢迎对项目的贡献和反馈。请遵循贡献指南提交问题或拉取请求。
我们致力于通过遵守行为准则为所有用户提供一个欢迎的社区。
如果您对软件有任何疑问或担忧,请在https://github.com/spacetelescope/jwst/issues上打开问题或联系JWST帮助台。
软件与DMS构建版本映射
下表提供了有关jwst
包的每个版本及其与STScI JWST DMS操作环境中使用的软件构建之间关系的信息。在Released
列中给出了jwst
标签在PyPi上发布的日期,在Ops Install
列中给出了包含该版本的构建安装到DMS操作中的日期。请注意,列出的CRDS_CONTEXT
是可以与该版本一起使用的最小上下文。一个版本应与从指定上下文到下一个版本上下文之前的任何上下文一起工作。
jwst标签 | DMS构建 | SDP_VER | CRDS_CONTEXT | Released | Ops Install | 注意 |
---|---|---|---|---|---|---|
1.16.0 | B11.1rc1 | TBD | 1281 | 2024-09-20 | TBD | B11.1的第一个发布候选版本 |
1.15.1 | B11.0 | 2024.2.2 | 1242 | 2024-07-08 | 2024-09-12 | B11.0的最终发布候选版本 |
1.15.0 | B11.0rc1 | 1241 | 2024-06-26 | B11.0的第一个发布候选版本 | ||
1.14.1 | 1238 | 2024-06-27 | 仅PyPI发布的外部用户版本 | |||
1.14.0 | B10.2.1 | 2024.1.1 | 1238 | 2024-03-29 | 2024-06-12 | B10.2.1的最终发布候选版本 |
1.13.4 | 1185 | 2024-01-25 | 仅PyPI发布的外部用户版本 | |||
1.13.3 | B10.1 | 2023.4.0 | 1181 | 2024-01-05 | B10.1的最终发布候选版本 | |
1.13.2 | B10.1rc3 | 2023.4.0 | 1181 | 2023-12-21 | B10.1的第三个发布候选版本 | |
1.13.1 | B10.1rc2 | 2023.4.0 | 1181 | 2023-12-19 | B10.1的第二个发布候选版本 | |
1.13.0 | B10.1rc1 | 2023.4.0 | 1179 | 2023-12-15 | B10.1的第一个发布候选版本 | |
1.12.5 | B10.0.1 | 2023.3.1 | 1166 | 2023-10-19 | 2023-12-05 | B10.0.1补丁发布 |
1.12.4 | 2023-10-12 | 为外部用户固定依赖关系 | ||||
1.12.3 | B10.0 | 2023.3.0 | 1135 | 2023-10-03 | 2023-12-05 | B10.0最终发布候选版本 |
1.12.2 | B10.0rc3 | 1135 | 2023-10-02 | B10.0第三发布候选版本 | ||
1.12.1 | B10.0rc2 | 1132 | 2023-09-26 | B10.0第二发布候选版本 | ||
1.12.0 | B10.0rc1 | 1130 | 2023-09-18 | B10.0第一发布候选版本 | ||
1.11.4 | B9.3.1 | 2023.2.1 | 1107 | 2023-08-14 | 2023-08-24 | B9.3.1补丁最终发布 |
1.11.3 | B9.3 | 2023.2.0 | 1097 | 2023-07-17 | B9.3最终发布候选版本 | |
1.11.2 | B9.3rc3 | 1097 | 2023-07-12 | B9.3第三发布候选版本 | ||
1.11.1 | B9.3rc2 | 1094 | 2023-06-29 | B9.3第二发布候选版本 | ||
1.11.0 | B9.3rc1 | 1094 | 2023-06-21 | B9.3第一发布候选版本 | ||
1.10.2 | 1077 | 2023-04-14 | 为外部用户固定依赖关系 | |||
1.10.1 | B9.2.x | 2023.1.1 | 1077 | 2023-04-13 | 2023-05-23 | B9.2最终发布候选版本 |
1.10.0 | B9.2rc1 | 1075 | 2023-03-31 | B9.2第一发布候选版本 | ||
1.9.6 | B9.1.2 | 2022.5.2 | 1068 | 2023-03-09 | 2023-03-15 | B9.1.2最终发布候选版本 |
1.9.5 | 1061 | 2023-03-02 | B9.1.2第一发布候选版本 | |||
1.9.4 | B9.1.1 | 2022.5.1 | 1041 | 2023-01-27 | 2023-02-28 | B9.1.1最终发布候选版本 |
1.9.3 | B9.1 | 2022.5.0 | 1030 | 2023-01-12 | 2023-02-28 | B9.1最终发布候选版本 |
1.9.2 | B9.1rc2 | 2023-01-04 | B9.1第二发布候选版本(热修复) | |||
1.9.1 | B9.1rc2 | 2023-01-03 | B9.1第二发布候选版本 | |||
1.9.0 | B9.1rc1 | 2022-12-27 | B9.1第一发布候选版本 | |||
1.8.5 | B9.0 | 1019 | 2022-12-12 | B9.0文档补丁发布 | ||
1.8.4 | B9.0 | 2022-11-16 | B9.0文档补丁发布 | |||
1.8.3 | B9.0 | 2022-11-11 | B9.0文档补丁发布 | |||
1.8.2 | B9.0 | 2022.4.0 | 1017 | 2022-10-19 | 2022-11-17 | B9.0最终发布候选版本 |
1.8.1 | B9.0rc2 | 2022-10-17 | B9.0第二发布候选版本 | |||
1.8.0 | B9.0rc1 | 2022-10-10 | B9.0第一发布候选版本 | |||
1.7.2 | B8.1.2 | 2022.3.1 | 0984 | 2022-09-12 | 2022-09-21 | B8.1.2最终发布候选版本 |
1.7.1 | B8.1.2rc2 | 2022-09-07 | B8.1.2第二发布候选版本 | |||
1.7.0 | B8.1.2rc1 | 2022-09-01 | B8.1.2第一发布候选版本 | |||
1.6.2 | B8.1 | 2022.3.0 | 0953 | 2022-07-19 | 2022-08-19 | B8.1最终发布候选版本 |
1.6.1 | B8.1rc2 | 2022-07-15 | B8.1第二发布候选版本 | |||
1.6.0 | B8.1rc1 | 2022-07-11 | B8.1第一发布候选版本 | |||
1.5.3 | B8.0.1 | 2022.2.1 | 0913 | 2022-06-20 | 2022-06-30 | B8.0.1补丁发布 |
1.5.2 | B8.0 | 2022.2.0 | 0874 | 2022-05-20 | 2022-06-16 | B8.0最终发布候选版本 |
1.5.1 | B8.0rc2 | 2022-05-17 | B8.0第二发布候选版本 | |||
1.5.0 | B8.0rc1 | 2022-05-05 | B8.0第一发布候选版本 | |||
1.4.6 | B7.9.3 | 2022.1.2 | 0800 | 2022-03-25 | B7.9.3最终发布候选版本 | |
1.4.5 | B7.9.3rc2 | 2022-03-23 | B7.9.3第二发布候选版本 | |||
1.4.4 | B7.9.3rc1 | 2022-03-16 | B7.9.3第一发布候选版本 | |||
1.4.3 | B7.9.1 | 2022.1.1 | 0800 | 2022-02-03 | B7.9.1最终发布 | |
1.4.2 | B7.9 | 2022.1.0 | 0797 | 2022-01-20 | B7.9最终发布候选版本 | |
1.4.1 | B7.9rc2 | 2022-01-15 | B7.9第二发布候选版本 | |||
1.4.0 | B7.9rc1 | 2022-01-10 | B7.9第一发布候选版本 | |||
预发布版本 | ||||||
1.3.3 | B7.8.2 | 2021.4.0 | 0764 | 2021-10-05 | 与1.3.2相同,但修复了安装错误 | |
1.3.2 | B7.8.2 | 2021.4.0 | 0764 | 2021-09-03 | B7.8.2最终发布候选版本 | |
1.3.1 | B7.8.1 | 2021.3.0 | 0742 | 2021-08-09 | B7.8.1最终发布候选版本 | |
1.3.0 | B7.8.1rc1 | 0741 | 2021-08-02 | B7.8.1第一发布候选版本 | ||
1.2.3 | B7.8 | 2021.2.0 | 0732 | 2021-06-08 | B7.8最终发布候选版本 | |
1.2.2 | B7.8rc3 | 2021-06-08 | B7.8第三发布候选版本 | |||
1.2.1 | B7.8rc2 | 2021-06-07 | B7.8第二发布候选版本 | |||
1.2.0 | B7.8rc1 | 0723 | 2021-05-24 | B7.8第一发布候选版本 | ||
1.1.0 | B7.7.1 | 2021.1.0 | 0682 | 2021-02-26 | B7.7.1最终发布候选版本 | |
1.0.0 | B7.7.1rc1 | 0678 | 2021-02-22 | B7.7.1第一发布候选版本 | ||
0.18.3 | B7.7 | 2020.4.0 | 0670 | 2021-01-25 | B7.7最终发布候选版本 | |
0.18.2 | B7.7rc3 | 0668 | 2021-01-19 | B7.7第三发布候选版本 | ||
0.18.1 | B7.7rc2 | 0664 | 2021-01-08 | B7.7第二发布候选版本 | ||
0.18.0 | B7.7rc1 | 0645 | 2020-12-21 | B7.7第一发布候选版本 | ||
0.17.1 | B7.6 | 2020.3.0 | 0641 | 2020-09-15 | B7.6最终发布候选版本 | |
0.17.0 | B7.6rc1 | 0637 | 2020-08-28 | B7.6第一发布候选版本 | ||
0.16.2 | B7.5 | 2020.2.0 | 0619 | 2020-06-10 | 与0.16.1相同,但修复了安装错误 | |
0.16.1 | B7.5 | 2020.2.0 | 0619 | 2020-05-19 | B7.5最终发布候选版本 | |
0.16.0 | B7.5rc1 | 0614 | 2020-05-04 | B7.5第一发布候选版本 | ||
0.15.1 | B7.4.2 | 2020.1.0 | 0586 | 2020-03-10 | B7.4.2最终发布候选版本 | |
0.15.0 | B7.4.2rc1 | 0585 | 2020-02-28 | B7.4.2第一发布候选版本 | ||
0.14.2 | B7.4 | 2019.3.0 | 0570 | 2019-11-18 | B7.4最终发布候选版本 | |
0.14.1 | B7.4rc2 | 0568 | 2019-11-11 | B7.4第二发布候选版本 | ||
0.14.0 | B7.4rc1 | 0563 | 2019-10-25 | B7.4第一发布候选版本 | ||
0.13.8 | B7.3.1 | 2019.2.0 | 0541 | 2019-09-05 | 7.3构建的补丁以7.3.1版本发布 | |
0.13.7 | B7.3 | 2019.1.0 | 0535 | 2019-06-21 | B7.3最终发布候选版本 | |
0.13.6 | B7.3rc4 | 0534 | 2019-06-20 | B7.3第四发布候选版本 | ||
0.13.5 | B7.3rc3 | 0534 | 2019-06-19 | B7.3第三发布候选版本 | ||
0.13.4 | B7.3rc2 | 0534 | 2019-06-18 | B7.3第二发布候选版本 | ||
0.13.3 | B7.3rc1 | 0532 | 2019-06-04 | 7.3版本候选发布 | ||
0.13.2 | 0500 | 2019-05-14 | DMS测试,不向I&T交付 | |||
0.13.1 | 0500 | 2019-03-08 | DMS测试,不向I&T交付 | |||
0.13.0 | 0500 | 2019-02-15 | DMS测试,不向I&T交付 | |||
0.12.3 | B7.2.1 | 0500 | 2019-01-15 | DMS Build 7.2.1补丁发布 | ||
0.12.2 | B7.2 | 2018_2 | 0495 | 2018-11-07 | B7.2版本最终候选发布 | |
0.12.1 | B7.2rc2 | 0495 | 2018-11-01 | B7.2版本第二次候选发布 | ||
0.12.0 | B7.2rc1 | 0493 | 2018-10-09 | B7.2版本第一次候选发布 | ||
0.11.0 | 0482 | 2018-09-10 | DMS测试,不向I&T交付 | |||
0.10.0 | 0477 | 2018-07-31 | DMS测试,不向I&T交付 | |||
0.9.6 | B7.1.3 | 2018_1 | 0468 | 2018-06-08 | B7.1.3版本最终候选发布 | |
0.9.5 | B7.1.3rc3 | 0468 | 2018-06-06 | B7.1.3版本第三次候选发布 | ||
0.9.4 | B7.1.3rc2 | 0463 | 2018-05-29 | B7.1.3版本第二次候选发布 | ||
0.9.3 | B7.1.3rc1 | 0457 | 2018-05-11 | B7.1.3版本第一次候选发布 | ||
0.9.2 | 0441 | 2018-03-28 | DMS测试,不向I&T交付 | |||
0.9.1 | 0432 | 2018-02-16 | DMS测试,不向I&T交付 | |||
0.9.0 | B7.1.2 | 0422 | 2017-12-22 | 2018-02-15对I&T的DMS补丁发布 | ||
0.8.0 | B7.1.1 | 0422 | 2017-11-06 | 2018-01-17对I&T的DMS补丁发布 | ||
0.8.0 | B7.1 | 2017_1 | 0422 | 2017-11-06 | B7.1版本最终发布 | |
0.7.7 | B7.0 | 2016_2 | 0303 | 2016-12-13 | B7.0版本最终发布 |
单元测试
可以通过pytest
运行单元测试。在本地jwst
仓库的顶级目录下
pip install -e ".[test]"
pytest
需要并行化测试运行以覆盖所有可用核心?
pip install pytest-xdist
pytest -n auto
回归测试
最新的回归测试结果可以在此找到(仅STScI员工)
https://plwishmaster.stsci.edu:8081/job/RT/job/JWST/
测试构建在周一至周六的当地时间下午6点开始,在jwcalibdev
上。
要在本地机器上运行回归测试,获取测试依赖项并设置环境变量TEST_BIGDATA为我们的Artifactory服务器(仅限STSci员工)
pip install -e ".[test]"
export TEST_BIGDATA=https://bytesalad.stsci.edu/artifactory
要运行所有回归测试(除了非常慢的测试)
pytest --bigdata jwst/regtest
您可以使用pytest
的--basetemp=<PATH>
参数控制测试结果写入的位置。 请注意,pytest
将在每个测试会话中清除此目录,所以请确保它是一个临时区域。
如果您想运行特定的测试,找到其名称或ID并使用-k
选项
pytest --bigdata jwst/regtest -k nirspec
如果开发者需要更新我们夜间回归测试中的真理文件,仓库维基中有说明。
https://github.com/spacetelescope/jwst/wiki/Maintaining-Regression-Tests
项目详情
哈希值 for jwst-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ddfedf54bdd85a0da172517fb397504b85f0d6b8e10b4e98a1904ca18b155636 |
|
MD5 | 1c610be14bc2f1387ada111f5e3fe3c0 |
|
BLAKE2b-256 | 733a32784b1af6b104c4c16b8407a44e28c6ca21fc0bf98bfa15c081fe3e20eb |
哈希值 for jwst-1.16.0-cp312-cp312-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8c7afaa022533022046762743ac9895250ffad37c10e5904ce9a79f6c8f568ee |
|
MD5 | 25875643ec9fa463ffef463534757717 |
|
BLAKE2b-256 | d1c1ba95096dccbbae4140c2f6f3eda6963ae0c745cc457327066efeffb5e1f9 |
哈希值 for jwst-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8dc4f9dee914514ffc67ecf0f403cd5fb1a52384c41e37b342a4612ffde25667 |
|
MD5 | 92a144783e7574ea28a46e6c056db947 |
|
BLAKE2b-256 | b05f1d022480eeb9264bf050b2073fca1c797fd226a3735d5f255104b9d61c7a |
哈希值 for jwst-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1a615845666a0391d09e14044c94f0c06115adac384584453a3901f45bc1abfd |
|
MD5 | f632cd836ee1b2c9c7fd3a40818ae70f |
|
BLAKE2b-256 | 8afc9ce42e6a20b5cf4480c20f9620428f35e3b6bf47a9124e7f5af58d0d32c9 |
哈希值 for jwst-1.16.0-cp311-cp311-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 256443f8640a3d6f4a1c972b99cfe4c0d13e63d2cc65ea3f7e520c41a79d021a |
|
MD5 | 4ec42f131809782d952a529ea637af25 |
|
BLAKE2b-256 | cd9eef1de5d12ed241174f485d4d04484ca337aaeec4779e35fc75dbbf729ed8 |
哈希值 for jwst-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a0422bfefe19c6fb18931487390be2959f695c85c09bdf83fbe93b7328f4b07a |
|
MD5 | 38d61fc3bbdfce7fad8abab3186f5f72 |
|
BLAKE2b-256 | 82b0ca980c08102f3ad111b99baf1ae8baf3708cefa149ae34552249bb794c24 |
哈希值 for jwst-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eaa78140e70e0865bea690e5307846e3d7da4aa4cc75e7164186a9ae263e4304 |
|
MD5 | e8fff0e9aa8a2758790de7b125ef83c9 |
|
BLAKE2b-256 | 2e62f97cb5e17fa38966a98585da8fa44e49a10967f3d3d74384c1f4ee826a42 |
哈希值 for jwst-1.16.0-cp310-cp310-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 387aca08820b8cd095f13d931ef5a16682367194d38a9371de77dad259536add |
|
MD5 | e8fb5fe7d31cd6d2b5795c524ef93a26 |
|
BLAKE2b-256 | 9bc7a9b0f386019676de42405acafdf6800696868cc223a76a4c2290ab9b3332 |
哈希值 for jwst-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 37a2d0d27e0accbcb895333bf985f4f6d2688371218335b47082c03e1d8ebd90 |
|
MD5 | 687a2cd06b31a188a2ec25661f54f446 |
|
BLAKE2b-256 | f6e6b5030a5b8daf60006a1820fab3249f5ad2b29d86ace7157ceb2b99583037 |