From a85a0828cc40f9e5a9d0a605b827535701f7b986 Mon Sep 17 00:00:00 2001 From: Reza Housseini Date: Mon, 1 Dec 2025 12:25:05 +0100 Subject: [PATCH] gnu: Add trilinos-zoltan. * gnu/packages/maths.scm (trilinos-zoltan): New variable. Change-Id: I6aac3a2eb3a333720a9e23bc0af4edf1d931944d Signed-off-by: Andreas Enge --- gnu/packages/maths.scm | 65 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index c47595768c5d7c15ff7067177fb3c83e0d8cbe65..a255e1aa93ad179678fe59d8f604ad3c0cfaaf1e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -71,6 +71,7 @@ ;;; Copyright © 2025 Maxim Cournoyer ;;; Copyright © 2025 Sören Tempel ;;; Copyright © 2025 nomike Postmann +;;; Copyright © 2025 Reza Housseini ;;; ;;; This file is part of GNU Guix. ;;; @@ -11554,3 +11555,67 @@ expression parsing and evaluation.") linear programming (LP), mixed-integer programming (MIP), and quadratic programming (QP) models") (license license:expat))) + +(define-public trilinos-zoltan + (package + (name "trilinos-zoltan") + (version "16.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference (url "https://github.com/trilinos/Trilinos") + (commit (string-append "trilinos-release-" + (string-replace-substring + version "." "-"))))) + (file-name (git-file-name "trilinos" version)) + (sha256 (base32 "1snn8vzxwrk9qsvv9wsv4zf99cvcja4shgjpsavp893v9gvgp2gm")))) + (build-system cmake-build-system) + (inputs (list openmpi + perl + python + python-wrapper + tcsh + pt-scotch + zlib)) + (arguments + (list + #:configure-flags + #~(list "-DTrilinos_ENABLE_Zoltan=ON" + "-DBUILD_SHARED_LIBS=ON" + "-DTPL_ENABLE_MPI=ON" + "-DTPL_ENABLE_METIS=OFF" + "-DTPL_ENABLE_Scotch=ON" + "-DTPL_ENABLE_Zlib=ON" + "-DTrilinos_ENABLE_Fortran=OFF" + "-DZoltan_ENABLE_TESTS=ON" + ;; disable failing tests + "-DZoltan_ch_brack2_3_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_grid20x19_zoltan_parallel_DISABLE=ON" + "-DZoltan_hg_felix_zoltan_parallel_DISABLE=ON" + "-DZoltan_hg_ibm03_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_degenerate_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_degenerateAA_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_ewgt_scotch_parallel_DISABLE=ON" + "-DZoltan_ch_hammond_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_hammond_scotch_parallel_DISABLE=ON" + "-DZoltan_ch_hammond2_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_hughes_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_simple_scotch_parallel_DISABLE=ON" + "-DZoltan_hg_cage10_zoltan_parallel_DISABLE=ON" + "-DZoltan_ch_vwgt_scotch_parallel_DISABLE=ON"))) + (home-page "https://trilinos.github.io/") + (synopsis + "Parallel partitioning, load balancing and data-management services") + (description + "The Zoltan library is a collection of data management services for parallel, +unstructured, adaptive, and dynamic applications. It simplifies the +load-balancing, data movement, unstructured communication, and memory usage +difficulties that arise in dynamic applications such as adaptive +finite-element methods, particle methods, and crash simulations. Zoltan's +data-structure neutral design also lets a wide range of applications use it +without imposing restrictions on application data structures. Its object-based +interface provides a simple and inexpensive way for application developers to +use the library and researchers to make new capabilities available under a +common interface. +") + (license license:bsd-3)))