aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVinicius Monego <monego@posteo.net>2023-07-29 21:38:27 -0300
committerVinicius Monego <monego@posteo.net>2023-09-30 10:37:47 -0300
commit9f41aa021f982b3fc23927e2988c59329acdc8fc (patch)
treef9493c208408236bcb8a341756c5685a9125cbdb
parent9c4e8a868d0ed105b06e127a39b794d9d4ced225 (diff)
downloadguix-9f41aa021f982b3fc23927e2988c59329acdc8fc.tar.gz
guix-9f41aa021f982b3fc23927e2988c59329acdc8fc.zip
gnu: Add python-openturns.
* gnu/packages/statistics.scm (python-openturns): New variable.
-rw-r--r--gnu/packages/statistics.scm93
1 files changed, 93 insertions, 0 deletions
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index e340f0174e..035950691d 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -43,6 +43,7 @@
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system ant)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system r)
@@ -54,12 +55,15 @@
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages bison)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cran)
#:use-module (gnu packages curl)
#:use-module (gnu packages emacs)
#:use-module (gnu packages emacs-xyz)
+ #:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gtk)
@@ -90,6 +94,7 @@
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
+ #:use-module (gnu packages tbb)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
@@ -2345,6 +2350,94 @@ statistical computations including descriptive statistics and estimation and
inference for statistical models.")
(license license:bsd-3)))
+(define-public python-openturns
+ (package
+ (name "python-openturns")
+ (version "1.21")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openturns/openturns")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "05lbx8npvvk7jyakvfpgi9ggdp6cnzwv2hjmjrkji2s42axv0q6d"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'check)
+ ;; This is a Python package which is fully managed by CMake. In
+ ;; cmake-build-system the check phase runs before install, but the
+ ;; Python modules required for testing are only installed in the
+ ;; install phase. Move check to after the install phase.
+ (add-after 'install 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "ctest" "--exclude-regex"
+ ;; XXX: Cpp tests fail in 'No such file or directory',
+ ;; skip for now and only run the Python tests.
+ ;; TODO: To pass the Python tests below, Ipopt must be
+ ;; built with MUMPS support, but simply adding mumps
+ ;; to the inputs doesn't work for it to be found,
+ ;; possibly because MUMPS doesn't generate a .pc file.
+ (string-join
+ (list "^cpp"
+ "pyinstallcheck_Bonmin_std"
+ "pyinstallcheck_Bonmin_4dsoo"
+ "pyinstallcheck_Bonmin_MIT15"
+ "pyinstallcheck_Bonmin_swiler2014"
+ "pyinstallcheck_Ipopt_std"
+ "pyinstallcheck_example_plot_optimization_bonmin"
+ "pyinstallcheck_coupling_tools")
+ "|"))))))))
+ (native-inputs
+ (list bison
+ dvisvgm
+ flex
+ python-numpydoc
+ python-sphinx
+ ;; python-sphinx-gallery ;; Currently broken
+ swig))
+ (inputs
+ (list openblas ; the only required dependency
+ ;; The dependecies below are all optional.
+ bonmin
+ boost
+ cbc ;; Maybe this should be propagated by Bonmin?
+ ceres
+ cminpack
+ dlib
+ hdf5
+ hmat
+ ipopt
+ libxml2
+ mpc
+ mpfr
+ nlopt
+ pagmo
+ primesieve
+ python-wrapper
+ spectra
+ tbb))
+ (propagated-inputs
+ (list python-chaospy
+ python-dill
+ python-matplotlib
+ python-numpy
+ python-pandas
+ python-scipy))
+ (home-page "https://openturns.github.io/www/")
+ (synopsis "Uncertainty treatment library")
+ (description
+ "OpenTURNS is a scientific C++ and Python library including an internal
+data model and algorithms dedicated to the treatment of uncertainties. The
+main goal of this library is giving to specific applications all the
+functionalities needed to treat uncertainties in studies.")
+ (license license:lgpl3+)))
+
(define-public r-coda
(package
(name "r-coda")