| Type: | Package |
| Title: | Vendored 'SUNDIALS' Solver Suite for Linking by Other Packages |
| Version: | 7.9.0-1 |
| Date: | 2026-10-10 |
| Description: | Bundles the pure-C part of the 'SUNDIALS' suite (CVODE, CVODES, ARKODE, IDA, IDAS and KINSOL with the serial vector and the dense, band and iterative linear solvers) and builds it into a static library. Other packages use it by adding 'sundials' to 'LinkingTo' for the headers and calling sundials::LdFlags() from their 'Makevars' to link the library. No 'Fortran', 'MPI', GPU or external third-party-library modules are included. 'SUNDIALS' is described in Hindmarsh et al. (2005) <doi:10.1145/1089014.1089020>. |
| License: | BSD_3_clause + file LICENSE |
| Copyright: | file inst/COPYRIGHTS |
| URL: | https://github.com/Konrad1991/sundials, https://computing.llnl.gov/projects/sundials |
| BugReports: | https://github.com/Konrad1991/sundials/issues |
| Encoding: | UTF-8 |
| NeedsCompilation: | yes |
| SystemRequirements: | GNU make |
| Suggests: | tinytest, Rcpp, deSolve |
| Packaged: | 2026-10-10 09:59:37 UTC; konrad |
| Author: | Konrad Krämer [aut, cre], Lawrence Livermore National Security [cph] (SUNDIALS source code), Southern Methodist University [cph] (SUNDIALS source code), University of Maryland Baltimore County [cph] (SUNDIALS source code), SUNDIALS contributors [aut, cph] (see inst/AUTHORS) |
| Maintainer: | Konrad Krämer <konrad_kraemer@yahoo.de> |
| Repository: | CRAN |
| Date/Publication: | 2026-10-21 14:30:15 UTC |
Vendored SUNDIALS solver suite for linking by other packages
Description
Bundles the pure-C part of the SUNDIALS suite (CVODE, CVODES, ARKODE, IDA, IDAS,
KINSOL, with the serial N_Vector and the dense, band and iterative linear
solvers) and builds it into a static library, ‘libsundials.a’, under the
package's ‘lib’ directory. Other packages link it with
LinkingTo: sundials (for the headers) and
LdFlags() in their ‘Makevars’.
No Fortran, MPI, GPU or external third-party-library modules are included. The build is double precision with 64-bit indices.
References
Hindmarsh, A. C., Brown, P. N., Grant, K. E., Lee, S. L., Serban, R., Shumaker, D. E., Woodward, C. S. (2005). SUNDIALS: Suite of Nonlinear and Differential/Algebraic Equation Solvers. ACM Transactions on Mathematical Software, 31(3), 363-396. doi:10.1145/1089014.1089020
https://computing.llnl.gov/projects/sundials
See Also
Build flags for the vendored SUNDIALS library
Description
LdFlags prints -L<libdir> -lsundials for linking against the
static SUNDIALS library shipped in this package. CFlags prints
-I<includedir> for its headers; this is only needed outside the
LinkingTo mechanism.
Usage
LdFlags()
CFlags()
Details
In the dependent package's DESCRIPTION:
LinkingTo: sundials
In its src/Makevars and src/Makevars.win:
PKG_LIBS = $(shell "$(R_HOME)/bin/Rscript" -e "sundials::LdFlags()")
The vendored build is double precision with 64-bit indices
(sunindextype = int64_t) and contains no Fortran, MPI, GPU or
external-library modules.
Value
The flag string, returned invisibly and also printed to stdout so it can
be captured by $(shell ...) in a Makevars file.
Examples
LdFlags()
CFlags()
Rcpp plugin for the vendored SUNDIALS library
Description
Lets Rcpp::sourceCpp and Rcpp::cppFunction compile against the
SUNDIALS headers and static library shipped in this package. Not called
directly; it is picked up by the attribute
// [[Rcpp::depends(sundials)]]
Usage
inlineCxxPlugin(...)
Arguments
... |
Ignored; present for compatibility with the plugin interface. |
Value
A list with element env holding PKG_CPPFLAGS (the include
flag) and PKG_LIBS (the linker flags from LdFlags).
See Also
Examples
str(inlineCxxPlugin())