From d245a43520d37e33615d825338d1f55dda36fce2 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 29 Jul 2022 21:17:50 +0100 Subject: [PATCH 2/2] gnu: Add pynbody * gnu/packages/astronomy.scm: (python-pynbody): New variable. --- gnu/packages/astronomy.scm | 68 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index e84eb188ff..3b4ded5728 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -1606,6 +1606,74 @@ (define-public python-pyerfa functions, so that they can be called with scalar or array inputs.") (license license:bsd-3))) +(define-public python-pynbody + (package + (name "python-pynbody") + (version "1.2.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pynbody" version)) + (sha256 + (base32 "1jxwk2s4qz1znvyak2lj7ld01kl1jh87xp81ki7a8dz1gcy93fkx")))) + (build-system python-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-tests-require-testdata + (lambda _ + ;; 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 + (with-directory-excursion "tests" + (for-each delete-file + '("gravity_test.py" + "adaptahop_test.py" + "ahf_halos_test.py" + "array_test.py" + "bridge_test.py" + "family_test.py" + "partial_tipsy_test.py" + "snapshot_test.py" + "test_profile.py" + "gadget_test.py" + "gadgethdf_test.py" + "grafic_test.py" + "halotools_test.py" + "nchilada_test.py" + "ramses_new_ptcl_format_test.py" + "ramses_test.py" + "rockstar_test.py" + "sph_image_test.py" + "sph_smooth_test.py" + "subfind_test.py" + "subfindhdf_gadget4_test.py" + "tipsy_test.py"))))) + (replace 'check + (lambda* (#:key tests? inputs outputs #:allow-other-keys) + (when tests? + (add-installed-pythonpath inputs outputs) + (setenv "HOME" "/tmp") + (invoke "pytest" "-vv"))))))) + (native-inputs + (list python-pandas python-pytest)) + (propagated-inputs + (list python-cython + 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-sep (package (name "python-sep") -- 2.36.1