aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/maths.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/maths.scm')
-rw-r--r--gnu/packages/maths.scm46
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 5954396508..508c0e62ea 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -927,6 +927,52 @@ bio-chemistry.")
(lambda _ (zero? (system* "make" "ptcheck"))))))))
(synopsis "Programs and libraries for graph algorithms (with MPI)")))
+(define-public p4est
+ (package
+ (name "p4est")
+ (version "1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://p4est.github.io/release/p4est-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "0faina2h5qsx3m2izbzaj9bbakma1krbbjmq43wrp1hcbyijflqb"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("fortran" ,gfortran)
+ ("blas" ,openblas)
+ ("lapack" ,lapack)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:configure-flags `(,(string-append "BLAS_LIBS=-L"
+ (assoc-ref %build-inputs "blas")
+ " -lopenblas")
+ ,(string-append "LAPACK_LIBS=-L"
+ (assoc-ref %build-inputs "lapack")
+ " -llapack"))))
+ (home-page "http://www.p4est.org")
+ (synopsis "Adaptive mesh refinement on forests of octrees")
+ (description
+ "The p4est software library enables the dynamic management of a
+collection of adaptive octrees, conveniently called a forest of octrees.
+p4est is designed to work in parallel and scales to hundreds of thousands of
+processor cores.")
+ (license license:gpl2+)))
+
+(define-public p4est-openmpi
+ (package (inherit p4est)
+ (name "p4est-openmpi")
+ (inputs
+ `(("mpi" ,openmpi)
+ ,@(package-inputs p4est)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments p4est)
+ ((#:configure-flags cf)
+ ``("--enable-mpi" ,@,cf))))
+ (synopsis "Parallel adaptive mesh refinement on forests of octrees")))
+
(define-public gsegrafix
(package
(name "gsegrafix")