summary refs log tree commit diff
path: root/gnu/packages/python-science.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/python-science.scm')
-rw-r--r--gnu/packages/python-science.scm86
1 files changed, 86 insertions, 0 deletions
diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 79ee7c8bb2..39f52f1d64 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -11,6 +11,8 @@
 ;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
 ;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
+;;; Copyright © 2021 Roel Janssen <roel@gnu.org>
+;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,13 +35,17 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages check)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages image-processing)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages mpi)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-check)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages simulation)
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages time)
   #:use-module (gnu packages xdisorg)
@@ -47,6 +53,7 @@
   #:use-module (gnu packages xorg)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module (guix build-system python))
 
@@ -439,6 +446,27 @@ doing practical, real world data analysis in Python.")
                        "if 'NULL byte' in msg or 'line contains NUL' in msg:"))
                     #t)))))))
 
+(define-public python-pyflow
+  (package
+    (name "python-pyflow")
+    (version "1.1.20")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/Illumina/pyflow/releases/download/v"
+                    version "/pyflow-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1bvfvviw58cndyn862qnv9nj3d9cd3a0dm4vc4sd9vwq8a6z1riv"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:tests? #f)) ; There is no test suite.
+    (home-page "https://illumina.github.io/pyflow/")
+    (synopsis "Tool to manage tasks in a task dependency graph")
+    (description "This package is a Python module to manage tasks in the
+context of a task dependency graph.  It has some similarities to make.")
+    (license license:bsd-2)))
+
 (define-public python-bottleneck
   (package
     (name "python-bottleneck")
@@ -617,3 +645,61 @@ annotations on an existing boxplots and barplots generated by seaborn.")
 UpSet plots are used to visualize set overlaps; like Venn diagrams but more
 readable.")
     (license license:bsd-3)))
+
+(define-public python-vedo
+  (package
+    (name "python-vedo")
+    (version "2021.0.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/marcomusy/vedo")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "18i3ajh5jzhpc86di15lwh4jv97jhm627ii877sa4yhv6abzjfpn"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'build 'mpi-setup
+           ,%openmpi-setup)
+         (replace 'check
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (setenv "HOME" (getcwd))
+             (add-installed-pythonpath inputs outputs)
+             (with-directory-excursion "tests"
+               (for-each (lambda (dir)
+                           (with-directory-excursion dir
+                             (invoke "./run_all.sh")))
+                         '("common" "dolfin")))
+             #t)))))
+    (inputs        ; for the check phase
+     `(("dolfin" ,fenics)
+       ("pkgconfig" ,python-pkgconfig)
+       ("matplotlib" ,python-matplotlib)))
+    (native-inputs ; for python-pkgconfig
+     `(("pkg-config" ,pkg-config)))
+    (propagated-inputs
+     `(("numpy" ,python-numpy)
+       ("vtk" ,vtk)))
+    (home-page "https://github.com/marcomusy/vedo")
+    (synopsis
+     "Analysis and visualization of 3D objects and point clouds")
+    (description
+     "@code{vedo} is a fast and lightweight python module for
+scientific analysis and visualization.  The package provides a wide
+range of functionalities for working with three-dimensional meshes and
+point clouds.  It can also be used to generate high quality
+two-dimensional renderings such as scatter plots and histograms.
+@code{vedo} is based on @code{vtk} and @code{numpy}, with no other
+dependencies.")
+    ;; vedo is released under the Expat license.  Included fonts are
+    ;; covered by the OFL license and textures by the CC0 license.
+    ;; The earth images are in the public domain.
+    (license (list license:expat
+                   license:silofl1.1
+                   license:cc0
+                   license:public-domain))))