guix-glicid/glicid/packages/science.scm

136 lines
6 KiB
Scheme
Raw Permalink Normal View History

2022-09-19 09:11:47 +02:00
(define-module (glicid packages science)
2023-01-02 11:18:12 +01:00
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages gl)
#:use-module (gnu packages boost)
#:use-module (gnu packages algebra)
#:use-module (gnu packages gdb)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages graphics)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages commencement)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages multiprecision)
#:use-module (glicid packages mpi)
#:use-module (glicid utils))
2022-09-19 09:02:58 +02:00
(define-public loki
2023-01-02 11:18:12 +01:00
(package
(name "loki")
(version "0.1.7")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/project/loki-lib/Loki/Loki%200.1.7/loki-"
version ".zip"))
(sha256
(base32
"0p23k4dipk5nnfpvhhqj9apz8rhnd62qdydjmzx8q78sxpwims4w"))))
(build-system gnu-build-system)
(inputs `(("gcc-toolchain" ,gcc-toolchain)))
(synopsis
"Loki is a C++ library of designs, containing flexible implementations of common design patterns and idioms.")
(description
"Loki is the name of a C++ software library written by Andrei Alexandrescu as part of his book Modern C++ Design.
2022-09-19 09:02:58 +02:00
The library makes extensive use of C++ template metaprogramming and implements several commonly used tools: typelist, functor, singleton, smart pointer, object factory, visitor and multimethods.")
2023-01-02 11:18:12 +01:00
(home-page "http://loki-lib.sourceforge.net/index.php?n=Main.HomePage")
(license gpl3+)))
2022-09-19 09:02:58 +02:00
2023-02-20 11:13:03 +01:00
;(define-public yade
; (package
; (name "yade")
; (version "2022.01a")
; (source (origin
; (method url-fetch)
; (uri (string-append
; "https://gitlab.com/yade-dev/trunk/-/archive/2022.01a/trunk-"
; version ".tar.gz"))
; (sha256
; (base32
; "0k4hnvi70cqzl0q54kkbij6jwxydhfwcacp9s49n3fkaf1dihxiv"))))
; (build-system cmake-build-system)
; (arguments
; `(#:configure-flags (list "-DENABLE_POTENTIAL_BLOCKS=OFF"
; (string-append "-DCMAKE_INSTALL_PREFIX="
; (assoc-ref %outputs "out"))
; (string-append "-DQGLVIEWER_INCLUDE_DIR="
; (assoc-ref %build-inputs
; "libqglviewer")))
; ;; (string-append "-DQGLVIEWER_INCLUDE_DIR="
; ;; libqglviewer))))
; #:phases (modify-phases %standard-phases
; (add-after 'unpack 'post-unpack
; (lambda* (#:key outputs inputs #:allow-other-keys)
; (mkdir-p "./build")
; (chdir "./build")))
; (replace 'configure
; (lambda* (#:key inputs outputs configure-flags
; #:allow-other-keys)
; (let ((out (assoc-ref outputs "out")))
; (apply invoke "cmake" "../" configure-flags)))))
; #:tests? #f))
; ;; (lambda _ (invoke
; ;; "cmake" "../trunk"
; ;; configure-flags))))))
; (propagated-inputs `(("gdb" ,gdb)
; ("sqlite" ,sqlite)
; ("openmpi" ,openmpi)
; ("python" ,python)
; ("python-numpy" ,python-numpy)
; ("python-matplotlib" ,python-matplotlib)
; ("python-sphinx" ,python-sphinx)
; ("python-ipython" ,python-ipython)
; ("python-mpi4py" ,python-mpi4py)
; ("python-mpmath" ,python-mpmath)
; ("python-pygraphviz" ,python-pygraphviz)
; ("python-xlib" ,python-xlib)
; ("python-future" ,python-future)
; ("python-pyqt" ,python-pyqt)
; ("python-pyqtwebengine" ,python-pyqtwebengine)
; ("python-qtpy" ,python-qtpy)))
; (inputs `(("boost" ,boost)
; ("qtbase-5" ,qtbase-5)
; ;; ("qt" ,qt)
; ("freeglut" ,freeglut)
; ("gts" ,gts)
; ("pkg-config" ,pkg-config)
; ("libqglviewer" ,libqglviewer)
; ("eigen" ,eigen)
; ;; ("loki" ,loki)
; ;; ("vtk" ,vtk)
; ("qtwebkit" ,qtwebkit)
; ("openblas" ,openblas)
; ("suitesparse" ,suitesparse)
; ("gcc-toolchain" ,gcc-toolchain)
; ("metis" ,metis)
; ("cgal" ,cgal)
; ("qtsvg" ,qtsvg)
; ("qtwebengine" ,qtwebengine)
; ("mpfr" ,mpfr)))
;
; (synopsis
; "Yade is an extensible open-source framework for discrete numerical models, focused on Discrete Element Method.")
; (description
; "Yade is an extensible open-source framework for discrete numerical models, focused on Discrete Element Method. The computation parts are written in c++ using flexible object model, allowing independent implementation of new algorithms and interfaces. Python is used for rapid and concise scene construction, simulation control, postprocessing and debugging.")
; (home-page "https://www.yade-dem.org/")
; (license gpl3+)))
;
;(define-public yade-glicid-waves
; (package
; (inherit (transform-package ((instead-of "openmpi-glicid-waves" openmpi)
; yade) "waves"))
; (name "yade-glicid-waves")))