Package {sundials}


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

LdFlags


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

LdFlags, CFlags

Examples

str(inlineCxxPlugin())

mirror server hosted at Truenetwork, Russian Federation.