diff --git a/CHANGES.rst b/CHANGES.rst index eb4c3b97..888eb3ff 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -3,7 +3,7 @@ SCICO Release Notes =================== -Version 0.0.6 (unreleased) +Version 0.0.6 (2024-10-25) ---------------------------- • Significant changes to ``linop.xray.astra`` API. @@ -20,8 +20,8 @@ Version 0.0.6 (unreleased) • Rename ``scico.flax.save_weights`` and ``scico.flax.load_weights`` to ``scico.flax.save_variables`` and ``scico.flax.load_variables`` respectively. -• Support ``jaxlib`` and ``jax`` versions 0.4.3 to 0.4.34. -• Support ``flax`` versions 0.8.0 to 0.9.0. +• Support ``jaxlib`` and ``jax`` versions 0.4.13 to 0.4.35. +• Support ``flax`` versions 0.8.0 to 0.10.0. diff --git a/MANIFEST.in b/MANIFEST.in index 9cbc39a6..d9ee9f5f 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -8,10 +8,10 @@ include pyproject.toml include pytest.ini include requirements.txt include dev_requirements.txt -include examples/scriptcheck.sh include docs/docs_requirements.txt recursive-include scico *.py -recursive-include scico/data *.png *.npz -recursive-include docs Makefile *.py *.ipynb *.rst *.bib *.css *.svg *.ico -recursive-include examples *_requirements.txt *.txt *.rst *.py +recursive-include scico/data *.png *.mpk *.rst +recursive-include docs Makefile *.py *.ipynb *.rst *.bib *.css *.svg *.png *.ico +recursive-include examples *_requirements.txt *.txt *.rst *.py *.sh +recursive-include misc *.py *.sh *.rst diff --git a/README.md b/README.md index e1caf27d..cd333e64 100644 --- a/README.md +++ b/README.md @@ -32,11 +32,12 @@ this software for published work, please cite the corresponding [JOSS Paper](https://doi.org/10.21105/joss.04722) (see bibtex entry `balke-2022-scico` in `docs/source/references.bib`). + # Installation -See the [online -documentation](https://scico.rtfd.io/en/latest/install.html) for -installation instructions. +The online documentation includes detailed +[installation instructions](https://scico.rtfd.io/en/latest/install.html). + # Usage Examples @@ -47,8 +48,11 @@ Jupyter Notebooks are provided in the to `examples/notebooks`. They are also viewable on [GitHub](https://github.com/lanl/scico-data/tree/main/notebooks) or [nbviewer](https://nbviewer.jupyter.org/github/lanl/scico-data/tree/main/notebooks/index.ipynb), -or can be run online by -[binder](https://mybinder.org/v2/gh/lanl/scico-data/binder?labpath=notebooks%2Findex.ipynb). +and can be run online on +[binder](https://mybinder.org/v2/gh/lanl/scico-data/binder?labpath=notebooks%2Findex.ipynb) +or +[google colab](https://colab.research.google.com/github/lanl/scico-data/blob/colab/notebooks/index.ipynb). + # License diff --git a/examples/scripts/ct_astra_3d_tv_padmm.py b/examples/scripts/ct_astra_3d_tv_padmm.py index ed54247a..3b76a8be 100644 --- a/examples/scripts/ct_astra_3d_tv_padmm.py +++ b/examples/scripts/ct_astra_3d_tv_padmm.py @@ -56,7 +56,7 @@ y = C @ tangle # sinogram -""" +r""" Set up problem and solver. We want to minimize the functional $$\mathrm{argmin}_{\mathbf{x}} \; (1/2) \| \mathbf{y} - C \mathbf{x} diff --git a/requirements.txt b/requirements.txt index feab852c..838a6b18 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,8 +4,8 @@ scipy>=1.6.0 imageio>=2.17 tifffile matplotlib -jaxlib>=0.4.3,<=0.4.34 -jax>=0.4.3,<=0.4.34 +jaxlib>=0.4.13,<=0.4.35 +jax>=0.4.13,<=0.4.35 orbax-checkpoint>=0.5.0 -flax>=0.8.0,<=0.9.0 +flax>=0.8.0,<=0.10.0 pyabel>=0.9.0 diff --git a/scico/__init__.py b/scico/__init__.py index c4050238..da718f8d 100644 --- a/scico/__init__.py +++ b/scico/__init__.py @@ -1,4 +1,4 @@ -# Copyright (C) 2021-2023 by SCICO Developers +# Copyright (C) 2021-2024 by SCICO Developers # All rights reserved. BSD 3-clause License. # This file is part of the SCICO package. Details of the copyright and # user license can be found in the 'LICENSE' file distributed with the @@ -8,7 +8,7 @@ solving the inverse problems that arise in scientific imaging applications. """ -__version__ = "0.0.6.dev0" +__version__ = "0.0.6" import logging import sys @@ -16,14 +16,7 @@ # isort: off # Suppress jax device warning. See https://github.com/google/jax/issues/6805 -# This only works for jax>0.3.23; for earlier versions, the getLogger -# argument should be "absl". Two filters are included here due to a change -# in jax between versions 0.4.2 and 0.4.8, both of which are supported by -# scico. -logging.getLogger("jax._src.lib.xla_bridge").addFilter( # jax 0.4.2 - logging.Filter("No GPU/TPU found, falling back to CPU.") -) -logging.getLogger("jax._src.xla_bridge").addFilter( # jax 0.4.8 +logging.getLogger("jax._src.xla_bridge").addFilter( # jax 0.4.8 and later logging.Filter("No GPU/TPU found, falling back to CPU.") ) diff --git a/scico/linop/xray/astra.py b/scico/linop/xray/astra.py index 3f50df6f..d73c60cf 100644 --- a/scico/linop/xray/astra.py +++ b/scico/linop/xray/astra.py @@ -462,6 +462,9 @@ class XRayTransform3D(LinearOperator): # pragma: no cover `ASTRA toolbox `_. The `3D geometries `__ "parallel3d" and "parallel3d_vec" are supported by this interface. + **NB:** A GPU is required for the primary functionality of this + class; if no GPU is available, projections and back projections will + fail with an "Unknown algorithm type" error. The volume is fixed with respect to the coordinate system, centered at the origin, as illustrated below: