From 46b7d3995cf4b43d70a9ddb1d57d2da02e4d77d6 Mon Sep 17 00:00:00 2001 From: Glenn Johnson Date: Mon, 10 Oct 2022 18:57:52 -0500 Subject: [PATCH] new package: r-interp (#33168) --- .../builtin/packages/r-interp/package.py | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 var/spack/repos/builtin/packages/r-interp/package.py diff --git a/var/spack/repos/builtin/packages/r-interp/package.py b/var/spack/repos/builtin/packages/r-interp/package.py new file mode 100644 index 00000000000..c1cd5b32d32 --- /dev/null +++ b/var/spack/repos/builtin/packages/r-interp/package.py @@ -0,0 +1,38 @@ +# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class RInterp(RPackage): + """Interpolation Methods. + + Bivariate data interpolation on regular and irregular grids, either linear + or using splines are the main part of this package. It is intended to + provide FOSS replacement functions for the ACM licensed akima::interp and + tripack::tri.mesh functions. Linear interpolation is implemented in + interp::interp(..., method="linear"), this corresponds to the call + akima::interp(..., linear=TRUE) which is the default setting and covers + most of akima::interp use cases in depending packages. A re-implementation + of Akimas irregular grid spline interpolation (akima::interp(..., + linear=FALSE)) is now also available via interp::interp(..., + method="akima"). Estimators for partial derivatives are now also available + in interp::locpoly(), these are a prerequisite for the spline + interpolation. The basic part is a GPLed triangulation algorithm (sweep + hull algorithm by David Sinclair) providing the starting point for the + irregular grid interpolator. As side effect this algorithm is also used to + provide replacements for almost all functions of the tripack package which + also suffers from the same ACM license restrictions. All functions are + designed to be backward compatible with their akima / tripack + counterparts.""" + + cran = "interp" + + version("1.1-3", sha256="b74e606b38cfb02985c1f9e3e45093620f76c0307b1b0b4058761e871eb5fa3f") + + depends_on("r@3.5.0:", type=("build", "run")) + depends_on("r-rcpp@0.12.9:", type=("build", "run")) + depends_on("r-deldir", type=("build", "run")) + depends_on("r-rcppeigen", type=("build", "run"))