summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/astronomy.scm494
1 files changed, 247 insertions, 247 deletions
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 497c75f974..c99ad69c26 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -2126,6 +2126,38 @@ support for reading and writing various compression algorithms including:
@url{http://facebook.github.io/zstd/,Zstandard}.")
(license license:bsd-3))))
+(define-public python-asdf-coordinates-schemas
+ (hidden-package
+ (package
+ (name "python-asdf-coordinates-schemas")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "asdf_coordinates_schemas" version))
+ (sha256
+ (base32 "1i5w1v74b84ygbd9pw9cs35bjaqs35f5iavazhjpbycqr1pf8rvh"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list "--numprocesses" (number->string (parallel-job-count)))))
+ (native-inputs
+ (list python-pytest
+ python-pytest-xdist
+ python-setuptools-next
+ python-setuptools-scm
+ python-wheel))
+ (propagated-inputs
+ (list python-asdf))
+ (home-page "https://github.com/asdf-format/asdf-coordinates-schemas")
+ (synopsis "ASDF coordinates schemas")
+ (description
+ "This package provides ASDF schemas for validating coordinates tags.
+Users should not need to install this directly; instead, install an
+implementation package such as asdf-astropy.")
+ (license license:bsd-3))))
+
(define-public python-asdf-standard
(package
(name "python-asdf-standard")
@@ -5815,6 +5847,96 @@ binned galaxy positions or shear) in cylindrical projection, but its core
functionality is more general.")
(license license:bsd-3)))
+;; XXX: The project is archived, maintained fork is available see
+;; <https://github.com/poliastro/poliastro/issues/1640>.
+;; Maintained fork <https://github.com/pleiszenburg/hapsira>.
+(define-public python-poliastro
+ (package
+ (name "python-poliastro")
+ (version "0.17.0")
+ (source
+ (origin
+ ;; PyPi tarball lacks tests.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/poliastro/poliastro")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1iclyjp0cvm6hp5qf4fzklszxvhj3idkxgb6a9h7xzg9bf5j5gi2"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list "-m" "not remote_data"
+ ;; TODO: Review failing tests later when any upstream
+ ;; suggestions are provided:
+ ;; https://github.com/poliastro/poliastro/issues/1618
+ "--ignore=tests/test_czml.py"
+ "-k" (string-append
+ ;; This fails with "ufunc 'isfinite' not
+ ;; supported for the input types"
+ "not test_porkchop_plotting"
+ " and not test_maneuver_constructor_raises_error_if_invalid_delta_v"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirements
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("5.0,<6") "5.0,<7"))))
+ (add-after 'unpack 'matplotlib-compatibility
+ (lambda _
+ (substitute* "src/poliastro/plotting/static.py"
+ (("import numpy as np.*" m)
+ (string-append m "\
+import itertools\n"))
+ (("( +)self._ax = ax.*" m indent)
+ (string-append m indent
+ "\
+self.colors = itertools.cycle(plt.rcParams[\"axes.prop_cycle\"].by_key()[\"color\"])\n"))
+ (("color = next\\(self._ax._get_lines.prop_cycler\\)\\[\"color\"\\]")
+ "color = next(self.colors)"))))
+ ;; NOTE: Tests take about 7-10 minutes to pass.
+ (add-before 'check 'prepare-test-environment
+ (lambda _
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs
+ (list python-coverage
+ python-hypothesis
+ python-mypy
+ python-flit-core
+ python-pytest
+ python-pytest-cov
+ python-pytest-doctestplus
+ python-pytest-mpl
+ python-pytest-mypy))
+ (propagated-inputs
+ (list python-astropy-6
+ python-astroquery
+ python-czml3
+ python-jplephem
+ python-matplotlib
+ python-numba
+ python-numpy
+ python-pandas
+ python-plotly
+ python-pyerfa
+ python-scipy))
+ (home-page "https://www.poliastro.space/")
+ (synopsis "Astrodynamics in Python")
+ (description
+ "POLIASTRO is a Python library for interactive Astrodynamics and Orbital
+Mechanics, with a focus on ease of use, speed, and quick visualization. It
+provides a simple and intuitive API, and handles physical quantities with
+units.
+
+Some features include orbit propagation, solution of the Lambert's problem,
+conversion between position and velocity vectors and classical orbital
+elements and orbit plotting, among others. It focuses on interplanetary
+applications, but can also be used to analyze artificial satellites in
+Low-Earth Orbit (LEO).")
+ (license license:expat)))
+
(define-public python-poppy
(package
(name "python-poppy")
@@ -6095,6 +6217,94 @@ also transltes halo properties (mass, concentration, redshift, etc) into
angular units for lensing computations with lenstronomy.")
(license license:expat)))
+(define-public python-pynbody
+ (package
+ (name "python-pynbody")
+ (version "1.6.0.post0")
+ (source
+ (origin
+ (method git-fetch) ;PyPi doesn't have not prebuit version.
+ (uri (git-reference
+ (url "https://github.com/pynbody/pynbody")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0rl9ais4yc6kdijq1il4vi3mplp7z6bcih4x55axhan5n3n7riwi"))
+ (modules '((guix build utils)))
+ (snippet
+ ;; Symlink goes to not existing directory.
+ #~(for-each delete-file '("docs/testdata"
+ "docs/tutorials/example_code/testdata")))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:test-flags #~(list
+ ;; Disable tests which need to download additional
+ ;; 1.0GiB+ of test data archive from
+ ;; http://star.ucl.ac.uk/~app/testdata.tar.gz
+ ;; https://github.com/pynbody/pynbody/blob/ \
+ ;; f4bd482dc47532831b3ec115c7cb07149d61bfc5/ \
+ ;; .github/workflows/build-test.yaml#L41
+ ;; See <https://github.com/pynbody/pynbody/issues/778>
+ "--ignore=tests/copy_on_access_test.py"
+ "--ignore=tests/gravity_test.py"
+ "--ignore=tests/adaptahop_test.py"
+ "--ignore=tests/ahf_halos_test.py"
+ "--ignore=tests/array_test.py"
+ "--ignore=tests/bridge_test.py"
+ "--ignore=tests/family_test.py"
+ "--ignore=tests/partial_tipsy_test.py"
+ "--ignore=tests/snapshot_test.py"
+ "--ignore=tests/test_profile.py"
+ "--ignore=tests/gadget_test.py"
+ "--ignore=tests/gadgethdf_test.py"
+ "--ignore=tests/grafic_test.py"
+ "--ignore=tests/halotools_test.py"
+ "--ignore=tests/nchilada_test.py"
+ "--ignore=tests/ramses_new_ptcl_format_test.py"
+ "--ignore=tests/ramses_test.py"
+ "--ignore=tests/rockstar_test.py"
+ "--ignore=tests/sph_image_test.py"
+ "--ignore=tests/sph_smooth_test.py"
+ "--ignore=tests/subfind_test.py"
+ "--ignore=tests/subfindhdf_gadget4_test.py"
+ "--ignore=tests/tipsy_test.py"
+ "-k"
+ (string-append
+ "not test_div_curl_smoothing"
+ " and not test_float_kd"
+ " and not test_kd_delete"
+ " and not test_kd_issue_88"
+ " and not test_kdtree_from_existing_kdtree"
+ " and not test_kdtree_shared_mem"
+ " and not test_neighbour_list"
+ " and not test_particles_in_sphere"
+ " and not test_periodic_smoothing"
+ " and not test_smooth"
+ " and not test_smooth_WendlandC2"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'build 'set-compiler
+ (lambda _
+ (setenv "CC" #$(cc-for-target)))))))
+ (native-inputs
+ (list python-cython
+ python-pandas
+ python-pytest
+ python-setuptools
+ python-wheel))
+ (propagated-inputs
+ (list python-h5py
+ python-matplotlib
+ python-numpy
+ python-posix-ipc
+ python-scipy))
+ (home-page "https://pynbody.github.io/pynbody/index.html")
+ (synopsis "Light-weight astronomical N-body/SPH analysis for python")
+ (description "@code{Pynbody} is an analysis framework for N-body and hydrodynamic
+astrophysical simulations supporting PKDGRAV/Gasoline, Gadget, Gadget4/Arepo,
+N-Chilada and RAMSES AMR outputs.")
+ (license license:gpl3+)))
+
(define-public python-pyregion
(package
(name "python-pyregion")
@@ -6497,6 +6707,43 @@ format, which are used by ASDF to serialize and deserialize data for the Nancy
Grace Roman Space Telescope.")
(license license:bsd-3)))
+(define-public python-radio-beam
+ (package
+ (name "python-radio-beam")
+ (version "0.3.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "radio_beam" version))
+ (sha256
+ (base32 "0i76hj6wyijbpxx7n1sm12f0qqw15srk6ikq2cr589lvrixylpwv"))))
+ (build-system pyproject-build-system)
+ (native-inputs
+ (list python-pytest-astropy
+ python-setuptools
+ python-setuptools-scm
+ python-wheel))
+ (propagated-inputs
+ (list python-astropy
+ python-matplotlib
+ python-numpy
+ python-scipy))
+ (home-page "https://radio-beam.readthedocs.io/en/latest/")
+ (synopsis "Operations for radio astronomy beams with Astropy")
+ (description
+ "Radio Beam is a simple toolkit for reading beam information from FITS
+headers and manipulating beams.
+Some example applications include:
+@itemize
+@item Convolution and deconvolution
+@item Unit conversion (Jy to/from K)
+@item Handle sets of beams for spectral cubes with varying resolution between
+channels
+@item Find the smallest common beam from a set of beams
+@item Add the beam shape to a matplotlib plot
+@end itemize")
+ (license license:bsd-3)))
+
(define-public python-radiospectra
(package
(name "python-radiospectra")
@@ -7314,96 +7561,6 @@ instruments.")
(license (list license:bsd-3 ; licenses/LICENSE.rst, same as python-astropy
license:expat)))) ; licenses/KOSMOS_LICENSE
-;; XXX: The project is archived, maintained fork is available see
-;; <https://github.com/poliastro/poliastro/issues/1640>.
-;; Maintained fork <https://github.com/pleiszenburg/hapsira>.
-(define-public python-poliastro
- (package
- (name "python-poliastro")
- (version "0.17.0")
- (source
- (origin
- ;; PyPi tarball lacks tests.
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/poliastro/poliastro")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1iclyjp0cvm6hp5qf4fzklszxvhj3idkxgb6a9h7xzg9bf5j5gi2"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags
- #~(list "-m" "not remote_data"
- ;; TODO: Review failing tests later when any upstream
- ;; suggestions are provided:
- ;; https://github.com/poliastro/poliastro/issues/1618
- "--ignore=tests/test_czml.py"
- "-k" (string-append
- ;; This fails with "ufunc 'isfinite' not
- ;; supported for the input types"
- "not test_porkchop_plotting"
- " and not test_maneuver_constructor_raises_error_if_invalid_delta_v"))
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'relax-requirements
- (lambda _
- (substitute* "pyproject.toml"
- (("5.0,<6") "5.0,<7"))))
- (add-after 'unpack 'matplotlib-compatibility
- (lambda _
- (substitute* "src/poliastro/plotting/static.py"
- (("import numpy as np.*" m)
- (string-append m "\
-import itertools\n"))
- (("( +)self._ax = ax.*" m indent)
- (string-append m indent
- "\
-self.colors = itertools.cycle(plt.rcParams[\"axes.prop_cycle\"].by_key()[\"color\"])\n"))
- (("color = next\\(self._ax._get_lines.prop_cycler\\)\\[\"color\"\\]")
- "color = next(self.colors)"))))
- ;; NOTE: Tests take about 7-10 minutes to pass.
- (add-before 'check 'prepare-test-environment
- (lambda _
- (setenv "HOME" "/tmp"))))))
- (native-inputs
- (list python-coverage
- python-hypothesis
- python-mypy
- python-flit-core
- python-pytest
- python-pytest-cov
- python-pytest-doctestplus
- python-pytest-mpl
- python-pytest-mypy))
- (propagated-inputs
- (list python-astropy-6
- python-astroquery
- python-czml3
- python-jplephem
- python-matplotlib
- python-numba
- python-numpy
- python-pandas
- python-plotly
- python-pyerfa
- python-scipy))
- (home-page "https://www.poliastro.space/")
- (synopsis "Astrodynamics in Python")
- (description
- "POLIASTRO is a Python library for interactive Astrodynamics and Orbital
-Mechanics, with a focus on ease of use, speed, and quick visualization. It
-provides a simple and intuitive API, and handles physical quantities with
-units.
-
-Some features include orbit propagation, solution of the Lambert's problem,
-conversion between position and velocity vectors and classical orbital
-elements and orbit plotting, among others. It focuses on interplanetary
-applications, but can also be used to analyze artificial satellites in
-Low-Earth Orbit (LEO).")
- (license license:expat)))
-
(define-public python-pyavm
(package
(name "python-pyavm")
@@ -8023,94 +8180,6 @@ science instruments plus the fine guidance sensor, including both direct
imaging, coronagraphic, and spectroscopic modes.")
(license license:bsd-3)))
-(define-public python-pynbody
- (package
- (name "python-pynbody")
- (version "1.6.0.post0")
- (source
- (origin
- (method git-fetch) ;PyPi doesn't have not prebuit version.
- (uri (git-reference
- (url "https://github.com/pynbody/pynbody")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0rl9ais4yc6kdijq1il4vi3mplp7z6bcih4x55axhan5n3n7riwi"))
- (modules '((guix build utils)))
- (snippet
- ;; Symlink goes to not existing directory.
- #~(for-each delete-file '("docs/testdata"
- "docs/tutorials/example_code/testdata")))))
- (build-system pyproject-build-system)
- (arguments
- (list #:test-flags #~(list
- ;; Disable tests which need to download additional
- ;; 1.0GiB+ of test data archive from
- ;; http://star.ucl.ac.uk/~app/testdata.tar.gz
- ;; https://github.com/pynbody/pynbody/blob/ \
- ;; f4bd482dc47532831b3ec115c7cb07149d61bfc5/ \
- ;; .github/workflows/build-test.yaml#L41
- ;; See <https://github.com/pynbody/pynbody/issues/778>
- "--ignore=tests/copy_on_access_test.py"
- "--ignore=tests/gravity_test.py"
- "--ignore=tests/adaptahop_test.py"
- "--ignore=tests/ahf_halos_test.py"
- "--ignore=tests/array_test.py"
- "--ignore=tests/bridge_test.py"
- "--ignore=tests/family_test.py"
- "--ignore=tests/partial_tipsy_test.py"
- "--ignore=tests/snapshot_test.py"
- "--ignore=tests/test_profile.py"
- "--ignore=tests/gadget_test.py"
- "--ignore=tests/gadgethdf_test.py"
- "--ignore=tests/grafic_test.py"
- "--ignore=tests/halotools_test.py"
- "--ignore=tests/nchilada_test.py"
- "--ignore=tests/ramses_new_ptcl_format_test.py"
- "--ignore=tests/ramses_test.py"
- "--ignore=tests/rockstar_test.py"
- "--ignore=tests/sph_image_test.py"
- "--ignore=tests/sph_smooth_test.py"
- "--ignore=tests/subfind_test.py"
- "--ignore=tests/subfindhdf_gadget4_test.py"
- "--ignore=tests/tipsy_test.py"
- "-k"
- (string-append
- "not test_div_curl_smoothing"
- " and not test_float_kd"
- " and not test_kd_delete"
- " and not test_kd_issue_88"
- " and not test_kdtree_from_existing_kdtree"
- " and not test_kdtree_shared_mem"
- " and not test_neighbour_list"
- " and not test_particles_in_sphere"
- " and not test_periodic_smoothing"
- " and not test_smooth"
- " and not test_smooth_WendlandC2"))
- #:phases
- #~(modify-phases %standard-phases
- (add-before 'build 'set-compiler
- (lambda _
- (setenv "CC" #$(cc-for-target)))))))
- (native-inputs
- (list python-cython
- python-pandas
- python-pytest
- python-setuptools
- python-wheel))
- (propagated-inputs
- (list python-h5py
- python-matplotlib
- python-numpy
- python-posix-ipc
- python-scipy))
- (home-page "https://pynbody.github.io/pynbody/index.html")
- (synopsis "Light-weight astronomical N-body/SPH analysis for python")
- (description "@code{Pynbody} is an analysis framework for N-body and hydrodynamic
-astrophysical simulations supporting PKDGRAV/Gasoline, Gadget, Gadget4/Arepo,
-N-Chilada and RAMSES AMR outputs.")
- (license license:gpl3+)))
-
(define-public python-pysynphot
;; XXX: 2.0.0 was released in 2021 there are a lot of changes since that
;; time and it failed to build with python-astropy 6.0.0, use the latest
@@ -8163,38 +8232,6 @@ photometric systems are available, and users can incorporate their own filters,
spectra, and data.")
(license license:bsd-3))))
-(define-public python-asdf-coordinates-schemas
- (hidden-package
- (package
- (name "python-asdf-coordinates-schemas")
- (version "0.4.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "asdf_coordinates_schemas" version))
- (sha256
- (base32 "1i5w1v74b84ygbd9pw9cs35bjaqs35f5iavazhjpbycqr1pf8rvh"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags
- #~(list "--numprocesses" (number->string (parallel-job-count)))))
- (native-inputs
- (list python-pytest
- python-pytest-xdist
- python-setuptools-next
- python-setuptools-scm
- python-wheel))
- (propagated-inputs
- (list python-asdf))
- (home-page "https://github.com/asdf-format/asdf-coordinates-schemas")
- (synopsis "ASDF coordinates schemas")
- (description
- "This package provides ASDF schemas for validating coordinates tags.
-Users should not need to install this directly; instead, install an
-implementation package such as asdf-astropy.")
- (license license:bsd-3))))
-
(define-public python-asdf-fits-schemas
(hidden-package
;; This package was never released and has been archived. The schemas in
@@ -8236,43 +8273,6 @@ implementation package such as asdf-astropy.")
"This package provides ASDF schemas for validating FITS tags.")
(license license:bsd-3)))))
-(define-public python-radio-beam
- (package
- (name "python-radio-beam")
- (version "0.3.9")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "radio_beam" version))
- (sha256
- (base32 "0i76hj6wyijbpxx7n1sm12f0qqw15srk6ikq2cr589lvrixylpwv"))))
- (build-system pyproject-build-system)
- (native-inputs
- (list python-pytest-astropy
- python-setuptools
- python-setuptools-scm
- python-wheel))
- (propagated-inputs
- (list python-astropy
- python-matplotlib
- python-numpy
- python-scipy))
- (home-page "https://radio-beam.readthedocs.io/en/latest/")
- (synopsis "Operations for radio astronomy beams with Astropy")
- (description
- "Radio Beam is a simple toolkit for reading beam information from FITS
-headers and manipulating beams.
-Some example applications include:
-@itemize
-@item Convolution and deconvolution
-@item Unit conversion (Jy to/from K)
-@item Handle sets of beams for spectral cubes with varying resolution between
-channels
-@item Find the smallest common beam from a set of beams
-@item Add the beam shape to a matplotlib plot
-@end itemize")
- (license license:bsd-3)))
-
(define-public python-roman-datamodels
(package
(name "python-roman-datamodels")