summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorGlenn Johnson <glenn-johnson@uiowa.edu>2023-02-06 08:13:37 -0600
committerGitHub <noreply@github.com>2023-02-06 15:13:37 +0100
commitfdaa54941deab5fa84a3ce00b293563a5bec98e2 (patch)
tree32e3557f2f511e0097699ec38e74dba47133b3e7 /var
parent135832650fdcfc3ffc7fe1a8469d074667b540d0 (diff)
downloadspack-fdaa54941deab5fa84a3ce00b293563a5bec98e2.tar.gz
spack-fdaa54941deab5fa84a3ce00b293563a5bec98e2.tar.bz2
spack-fdaa54941deab5fa84a3ce00b293563a5bec98e2.tar.xz
spack-fdaa54941deab5fa84a3ce00b293563a5bec98e2.zip
r-cvxr: add new package with dependencies (#35275)
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/r-cvxr/package.py35
-rw-r--r--var/spack/repos/builtin/packages/r-ecosolver/package.py22
-rw-r--r--var/spack/repos/builtin/packages/r-osqp/package.py24
-rw-r--r--var/spack/repos/builtin/packages/r-scs/package.py26
4 files changed, 107 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/r-cvxr/package.py b/var/spack/repos/builtin/packages/r-cvxr/package.py
new file mode 100644
index 0000000000..8a86713020
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-cvxr/package.py
@@ -0,0 +1,35 @@
+# 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 RCvxr(RPackage):
+ """Disciplined Convex Optimization.
+
+ An object-oriented modeling language for disciplined convex programming
+ (DCP) as described in Fu, Narasimhan, and Boyd (2020,
+ <doi:10.18637/jss.v094.i14>). It allows the user to formulate convex
+ optimization problems in a natural way following mathematical convention
+ and DCP rules. The system analyzes the problem, verifies its convexity,
+ converts it into a canonical form, and hands it off to an appropriate
+ solver to obtain the solution. Interfaces to solvers on CRAN and elsewhere
+ are provided, both commercial and open source."""
+
+ cran = "CVXR"
+
+ version("1.0-11", sha256="e92a9638f35f4909e2a29c3b7106081e3dae7ff88b14bb6466b87fbdc80b972a")
+
+ depends_on("r@3.4.0:", type=("build", "run"))
+ depends_on("r-r6", type=("build", "run"))
+ depends_on("r-matrix", type=("build", "run"))
+ depends_on("r-rcpp", type=("build", "run"))
+ depends_on("r-bit64", type=("build", "run"))
+ depends_on("r-gmp", type=("build", "run"))
+ depends_on("r-rmpfr", type=("build", "run"))
+ depends_on("r-ecosolver@0.5.4:", type=("build", "run"))
+ depends_on("r-scs@3.0:", type=("build", "run"))
+ depends_on("r-osqp", type=("build", "run"))
+ depends_on("r-rcppeigen", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/r-ecosolver/package.py b/var/spack/repos/builtin/packages/r-ecosolver/package.py
new file mode 100644
index 0000000000..7fec257e44
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-ecosolver/package.py
@@ -0,0 +1,22 @@
+# 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 REcosolver(RPackage):
+ """Embedded Conic Solver in R.
+
+ R interface to the Embedded COnic Solver (ECOS), an efficient and robust C
+ library for convex problems. Conic and equality constraints can be
+ specified in addition to integer and boolean variable constraints for
+ mixed-integer problems. This R interface is inspired by the python
+ interface and has similar calling conventions."""
+
+ cran = "ECOSolveR"
+
+ version("0.5.4", sha256="5d7489e8176c1df3f3f1290732243429280efca4f837916e6b6faa6dc8a8e324")
+
+ depends_on("gmake", type="build")
diff --git a/var/spack/repos/builtin/packages/r-osqp/package.py b/var/spack/repos/builtin/packages/r-osqp/package.py
new file mode 100644
index 0000000000..704e5df2fe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-osqp/package.py
@@ -0,0 +1,24 @@
+# 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 ROsqp(RPackage):
+ """Quadratic Programming Solver using the 'OSQP' Library.
+
+ Provides bindings to the 'OSQP' solver. The 'OSQP' solver is a numerical
+ optimization package or solving convex quadratic programs written in 'C'
+ and based on the alternating direction method of multipliers. See
+ <arXiv:1711.08013> for details."""
+
+ cran = "osqp"
+
+ version("0.6.0.7", sha256="ee6584d02341e3f1d8fab3b2cb93defd6c48d561297d82a6bedb3e7541868203")
+
+ depends_on("r-rcpp@0.12.14:", type=("build", "run"))
+ depends_on("r-matrix", type=("build", "run"))
+ depends_on("r-r6", type=("build", "run"))
+ depends_on("cmake", type="build")
diff --git a/var/spack/repos/builtin/packages/r-scs/package.py b/var/spack/repos/builtin/packages/r-scs/package.py
new file mode 100644
index 0000000000..52b89f42ed
--- /dev/null
+++ b/var/spack/repos/builtin/packages/r-scs/package.py
@@ -0,0 +1,26 @@
+# 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 RScs(RPackage):
+ """Splitting Conic Solver.
+
+ Solves convex cone programs via operator splitting. Can solve: linear
+ programs ('LPs'), second-order cone programs ('SOCPs'), semidefinite
+ programs ('SDPs'), exponential cone programs ('ECPs'), and power cone
+ programs ('PCPs'), or problems with any combination of those cones. 'SCS'
+ uses 'AMD' (a set of routines for permuting sparse matrices prior to
+ factorization) and 'LDL' (a sparse 'LDL' factorization and solve package)
+ from 'SuiteSparse'
+ (<https://people.engr.tamu.edu/davis/suitesparse.html>)."""
+
+ cran = "scs"
+
+ version("3.0-1", sha256="d6881eeec7282f8bfbf60847327786e7f90299e4b8c0b084d8bd11fec7705913")
+
+ depends_on("r@3.5.0:", type=("build", "run"))
+ depends_on("gmake", type="build")