diff options
Diffstat (limited to 'gnu/packages/algebra.scm')
-rw-r--r-- | gnu/packages/algebra.scm | 103 |
1 files changed, 102 insertions, 1 deletions
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 8c42ac31cc..57f273cc7a 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> @@ -35,6 +35,7 @@ #:use-module (gnu packages gl) #:use-module (gnu packages graphviz) #:use-module (gnu packages image) + #:use-module (gnu packages java) #:use-module (gnu packages maths) #:use-module (gnu packages mpi) #:use-module (gnu packages multiprecision) @@ -46,9 +47,11 @@ #:use-module (gnu packages texinfo) #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) + #:use-module (guix build-system ant) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils)) @@ -599,6 +602,104 @@ cosine/ sine transforms or DCT/DST).") (synopsis "Computing the discrete Fourier transform (AVX2-optimized)") (supported-systems '("x86_64-linux")))) +(define-public java-la4j + (package + (name "java-la4j") + (version "0.6.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vkostyukov/la4j.git") + (commit version))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1qir8dr978cfvz9k12m2kbdwpyf6cqdf1d0ilb7lnkhbgq5i53w3")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "la4j.jar" + #:jdk ,icedtea-8 + #:test-exclude (list "**/Abstract*.java" + "**/MatrixTest.java" + "**/DenseMatrixTest.java" + "**/SparseMatrixTest.java" + "**/VectorTest.java" + "**/SparseVectorTest.java" + "**/DenseVectorTest.java"))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core))) + (home-page "http://la4j.org/") + (synopsis "Java library that provides Linear Algebra primitives and algorithms") + (description "The la4j library is a Java library that provides Linear +Algebra primitives (matrices and vectors) and algorithms. The key features of +the la4j library are: + +@itemize +@item No dependencies and tiny size +@item Fluent object-oriented/functional API +@item Sparse (CRS, CCS) and dense (1D/2D arrays) matrices +@item Linear systems solving (Gaussian, Jacobi, Zeidel, Square Root, Sweep and other) +@item Matrices decomposition (Eigenvalues/Eigenvectors, SVD, QR, LU, Cholesky and other) +@item MatrixMarket/CSV IO formats support for matrices and vectors +@end itemize\n") + (license license:asl2.0))) + +(define-public java-jlargearrays + (package + (name "java-jlargearrays") + (version "1.6") + (source (origin + (method url-fetch) + (uri (string-append "http://search.maven.org/remotecontent?" + "filepath=pl/edu/icm/JLargeArrays/" + version "/JLargeArrays-" version + "-sources.jar")) + (file-name (string-append name "-" version ".jar")) + (sha256 + (base32 + "0v05iphpxbjnd7f4jf1rlqq3m8hslhcm0imdbsgxr20pi3xkaf2a")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jlargearrays.jar" + #:tests? #f ; tests are not included in the release archive + #:jdk ,icedtea-8)) + (propagated-inputs + `(("java-commons-math3" ,java-commons-math3))) + (home-page "https://gitlab.com/ICM-VisLab/JLargeArrays") + (synopsis "Library of one-dimensional arrays that can store up to 263 elements") + (description "JLargeArrays is a Java library of one-dimensional arrays +that can store up to 263 elements.") + (license license:bsd-2))) + +(define-public java-jtransforms + (package + (name "java-jtransforms") + (version "3.1") + (source (origin + (method url-fetch) + (uri (string-append "http://search.maven.org/remotecontent?" + "filepath=com/github/wendykierp/JTransforms/" + version "/JTransforms-" version "-sources.jar")) + (sha256 + (base32 + "1haw5m8shv5srgcpwkl853dz8bv6h90bzlhcps6mdpb4cixjirsg")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "jtransforms.jar" + #:tests? #f ; tests are not included in the release archive + #:jdk ,icedtea-8)) + (propagated-inputs + `(("java-commons-math3" ,java-commons-math3) + ("java-jlargearrays" ,java-jlargearrays))) + (home-page "https://github.com/wendykierp/JTransforms") + (synopsis "Multithreaded FFT library written in pure Java") + (description "JTransforms is a multithreaded FFT library written in pure +Java. Currently, four types of transforms are available: @dfn{Discrete +Fourier Transform} (DFT), @dfn{Discrete Cosine Transform} (DCT), @dfn{Discrete +Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).") + (license license:bsd-2))) + (define-public eigen (package (name "eigen") |