aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2022-12-08 00:02:59 +0000
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-01-16 12:13:07 -0500
commit8514a7532591b97c2adbe8a20cb4e630ff6b8654 (patch)
treefc6816763bba3f1d50aa2a360fcbaccb3d60bbf8
parent61cdbf414c3449fb8c1eb4c15bd051a2e82df15c (diff)
downloadguix-8514a7532591b97c2adbe8a20cb4e630ff6b8654.tar.gz
guix-8514a7532591b97c2adbe8a20cb4e630ff6b8654.zip
gnu: Add python-poppy.
* gnu/packages/astronomy.scm (python-poppy): New variable. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-rw-r--r--gnu/packages/astronomy.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 6b3a375e78..2b5efc84a8 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -67,6 +67,7 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
+ #:use-module (gnu packages sphinx)
#:use-module (gnu packages textutils)
#:use-module (gnu packages time)
#:use-module (gnu packages version-control)
@@ -1339,6 +1340,50 @@ the easy construction of interactive matplotlib widget based animations.")
of astronomical sources.")
(license license:bsd-3)))
+(define-public python-poppy
+ (package
+ (name "python-poppy")
+ (version "1.0.3")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "poppy" version))
+ (sha256
+ (base32
+ "050cn6aabd1dxbi7zihbqnkl79hz6q6d5n6g25zmrpvc4sii171m"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs
+ ;; XXX: With python-synphot (marked as optional) package added to the list
+ ;; it tries to download from remote host during tests and fails. Overall
+ ;; tests take up to 5-8min to pass.
+ (list python-astropy
+ python-matplotlib
+ python-numpy
+ python-scipy))
+ (native-inputs
+ (list python-docutils
+ python-h5py
+ python-pandas
+ python-pytest
+ python-pytest-astropy
+ python-sphinx
+ python-setuptools-scm))
+ (home-page "https://poppy-optics.readthedocs.io/")
+ (synopsis "Physical Optics Propagation in Python")
+ (description
+ "@acronym{POPPY, Physical Optics Propagation in Python} is a Python package that
+simulates physical optical propagation including diffraction. It implements a
+flexible framework for modeling Fraunhofer and Fresnel diffraction and point
+spread function formation, particularly in the context of astronomical
+telescopes.
+
+POPPY was developed as part of a simulation package for the James Webb Space
+Telescope, but is more broadly applicable to many kinds of imaging simulations.
+It is not, however, a substitute for high fidelity optical design software such
+as Zemax or Code V, but rather is intended as a lightweight alternative for
+cases for which diffractive rather than geometric optics is the topic of
+interest, and which require portability between platforms or ease of scripting.")
+ (license license:bsd-3)))
+
(define-public python-pyvo
(package
(name "python-pyvo")