The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Package {armadillo4r}


Type: Package
Title: An 'Armadillo' Interface
Description: Provides function declarations and inline function definitions that facilitate communication between R and the 'Armadillo' 'C++' library for linear algebra and scientific computing. This implementation is derived from Vargas Sepulveda and Schneider Malamud (2024) <doi:10.1016/j.softx.2025.102087>. The shipped version of the 'Armadillo' library is version 15.4.2 "Medium Roast Agave".
Version: 15.4.2
Imports: cpp4r
Suggests: Matrix, tinyroxygen, tinytest, litedown, rbibutils
License: Apache License 2.0
URL: https://pacha.dev/armadillo4r/, https://github.com/pachadotdev/armadillo4r
BugReports: https://github.com/pachadotdev/armadillo4r/issues
Depends: R(≥ 4.0.0)
Encoding: UTF-8
VignetteBuilder: litedown
NeedsCompilation: no
Packaged: 2026-08-23 10:34:32 UTC; pacha
Author: Mauricio Vargas Sepulveda ORCID iD [aut, cre], Jonathan Schneider Malamud [ctb], Conrad Sanderson [aut] (Armadillo library (C++))
Maintainer: Mauricio Vargas Sepulveda <m.vargas.sepulveda@gmail.com>
Repository: CRAN
Date/Publication: 2026-08-23 15:20:10 UTC

An 'Armadillo' Interface

Description

Provides function declarations and inline function definitions that facilitate communication between R and the 'Armadillo' 'C++' library for linear algebra and scientific computing. This implementation is derived from Vargas Sepulveda and Schneider Malamud (2024) <doi:10.1016/j.softx.2025.102087>.


Get Armadillo version

Description

Provides the Armadillo C++ library version name and number included in the package.

Usage

armadillo_version()

Value

A string with the Armadillo version name and number

Examples

armadillo_version()

Check that cpp4r can be used

Description

Check that cpp4r can be used

Usage

check_cpp4r()

Value

integer value


Start a new project with the armadillo4r package template

Description

Copies a package template into a new directory. The template includes a DESCRIPTION file, a minimal R/ directory and placeholders with instructions. You can then edit these files to customize your new package.

Usage

pkg_template(path = NULL, pkgname = NULL)

Arguments

path

Path to the new project

pkgname

Name of the new package

Value

The file path to the copied template (invisibly).

Examples

# create a new directory
dir <- paste0(tempdir(), "/", gsub("\\s+|[[:punct:]]", "", Sys.time()))
dir.create(dir)

# copy the package template into the directory
pkg_template(dir, "mynewpkg")

Unvendor the armadillo4r headers

Description

Removes the vendored armadillo4r headers from your package by automatically finding the vendored headers.

Usage

unvendor(path = NULL)

Arguments

path

The directory with the vendored headers (e.g., "./src/vendor"). The default is NULL.

Value

The path to the unvendored code (invisibly).

Examples

# create a new directory
dir <- paste0(tempdir(), "/", gsub("\\s+|[[:punct:]]", "", Sys.time()))
dir.create(dir, recursive = TRUE)

# vendor the armadillo4r headers into the directory
vendor(dir)

# unvendor the armadillo4r headers from the directory
unvendor(dir)

Vendor the cpp4r and armadillo4r headers

Description

Vendors armadillo4r into your package by copying the armadillo4r headers into the inst/include folder of your package and adding 'armadillo4r version: XYZ' to the top of the files, where XYZ is the version of armadillo4r currently installed on your machine.

Note: vendoring places the responsibility of updating the code on you. Bugfixes and new features in armadillo4r will not be available for your code until you run cpp_vendor() again.

Usage

vendor(path = NULL)

Arguments

path

The directory with the vendored headers. It is recommended to use "./src/vendor". The default is NULL.

Value

The path to the vendored code (invisibly).

Examples

# create a new directory
dir <- paste0(tempdir(), "/", gsub("\\s+|[[:punct:]]", "", Sys.time()))
dir.create(dir, recursive = TRUE)

# vendor the armadillo4r headers into the directory
vendor(dir)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.