gnu: gtk+: Update to 3.10.1.
[jackhill/guix/guix.git] / gnu / packages / maths.scm
CommitLineData
8f8b2451
AE
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
3;;;
4;;; This file is part of GNU Guix.
5;;;
6;;; GNU Guix is free software; you can redistribute it and/or modify it
7;;; under the terms of the GNU General Public License as published by
8;;; the Free Software Foundation; either version 3 of the License, or (at
9;;; your option) any later version.
10;;;
11;;; GNU Guix is distributed in the hope that it will be useful, but
12;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14;;; GNU General Public License for more details.
15;;;
16;;; You should have received a copy of the GNU General Public License
17;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19(define-module (gnu packages maths)
20 #:use-module (gnu packages)
21 #:use-module ((guix licenses)
22 #:renamer (symbol-prefix-proc 'license:))
23 #:use-module (guix packages)
24 #:use-module (guix download)
c9dfa3c7 25 #:use-module (guix build-system gnu)
c9dfa3c7
AE
26 #:use-module (gnu packages compression)
27 #:use-module ((gnu packages gettext)
28 #:renamer (symbol-prefix-proc 'gnu:))
29 #:use-module (gnu packages perl)
30 #:use-module (gnu packages pkg-config)
31 #:use-module (gnu packages readline)
32 #:use-module (gnu packages xml))
8f8b2451
AE
33
34(define-public units
35 (package
36 (name "units")
d6f10ca3 37 (version "2.02")
8f8b2451
AE
38 (source (origin
39 (method url-fetch)
40 (uri (string-append "mirror://gnu/units/units-" version
41 ".tar.gz"))
42 (sha256 (base32
d6f10ca3 43 "16jfji9g1zc99agd5dcinajinhcxr4dgq2lrbc9md69ir5qgld1b"))))
8f8b2451
AE
44 (build-system gnu-build-system)
45 (synopsis "Conversion between thousands of scales")
46 (description
a22dc0c4
LC
47 "Units is a program for converting measured quantities between units of
48measure. It can handle scale changes through adaptive usage of standard
49scale prefixes (i.e. micro-, kilo-, etc.). It can also handle nonlinear
50conversions such as Fahrenheit to Celcius. Its interpreter is powerful
51enough to be used effectively as a scientific calculator.")
8f8b2451
AE
52 (license license:gpl3+)
53 (home-page "http://www.gnu.org/software/units/")))
c9dfa3c7 54
88bd1804
AE
55(define-public gsl
56 (package
57 (name "gsl")
58 (version "1.15")
59 (source
60 (origin
61 (method url-fetch)
62 (uri (string-append "mirror://gnu/gsl/gsl-"
63 version ".tar.gz"))
64 (sha256
65 (base32
66 "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5"))))
67 (build-system gnu-build-system)
71e0f288
AE
68 (arguments
69 `(#:phases
70 (alist-replace
71 'configure
72 (lambda* (#:key target system outputs #:allow-other-keys #:rest args)
73 (let ((configure (assoc-ref %standard-phases 'configure)))
74 ;; disable numerically unstable test on i686, see thread at
75 ;; http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
76 (if (string=? (or target system) "i686-linux")
77 (substitute* "ode-initval2/Makefile.in"
78 (("TESTS = \\$\\(check_PROGRAMS\\)") "TESTS =")))
79 (apply configure args)))
80 %standard-phases)))
88bd1804
AE
81 (home-page "http://www.gnu.org/software/gsl/")
82 (synopsis "Numerical library for C and C++")
83 (description
a22dc0c4
LC
84 "The GNU Scientific Library is a library for numerical analysis in C
85and C++. It includes a wide range of mathematical routines, with over 1000
86functions in total. Subject areas covered by the library include:
87differential equations, linear algebra, Fast Fourier Transforms and random
88numbers.")
88bd1804
AE
89 (license license:gpl3+)))
90
c9dfa3c7
AE
91(define-public pspp
92 (package
93 (name "pspp")
78c7e344 94 (version "0.8.1")
c9dfa3c7
AE
95 (source
96 (origin
97 (method url-fetch)
98 (uri (string-append "mirror://gnu/pspp/pspp-"
99 version ".tar.gz"))
100 (sha256
101 (base32
78c7e344 102 "0qhxsdbwxd3cn1shc13wxvx2lg32lp4z6sz24kv3jz7p5xfi8j7x"))))
c9dfa3c7
AE
103 (build-system gnu-build-system)
104 (inputs
105 `(("gettext" ,gnu:gettext)
106 ("gsl" ,gsl)
107 ("libxml2" ,libxml2)
108 ("readline" ,readline)
109 ("zlib" ,zlib)))
110 (native-inputs
111 `(("perl" ,perl)
112 ("pkg-config" ,pkg-config)))
113 (arguments
114 `(#:configure-flags
115 `("--without-cairo" ; FIXME: tests currently fail for lack of font
116 "--without-gui"))) ; FIXME: package missing dependencies
117 (home-page "http://www.gnu.org/software/pspp/")
118 (synopsis "Statistical analysis")
119 (description
a22dc0c4
LC
120 "PSPP is a statistical analysis program. It can perform descriptive
121statistics, T-tests, linear regression and non-parametric tests. It features
122both a graphical interface as well as command-line input. PSPP is designed to
123interoperate with Gnumeric, LibreOffice and OpenOffice. Data can be imported
124from spreadsheets, text files and database sources and it can be output in
125text, Postscript, PDF or HTML.")
c9dfa3c7 126 (license license:gpl3+)))