MyNixOS website logo
Description

R Wrappers for EXPOKIT; Other Matrix Functions.

Wraps some of the matrix exponentiation utilities from EXPOKIT (<http://www.maths.uq.edu.au/expokit/>), a FORTRAN library that is widely recommended for matrix exponentiation (Sidje RB, 1998. "Expokit: A Software Package for Computing Matrix Exponentials." ACM Trans. Math. Softw. 24(1): 130-156). EXPOKIT includes functions for exponentiating both small, dense matrices, and large, sparse matrices (in sparse matrices, most of the cells have value 0). Rapid matrix exponentiation is useful in phylogenetics when we have a large number of states (as we do when we are inferring the history of transitions between the possible geographic ranges of a species), but is probably useful in other ways as well. NOTE: In case FORTRAN checks temporarily get rexpokit archived on CRAN, see archived binaries at GitHub in: nmatzke/Matzke_R_binaries (binaries install without compilation of source code).

rexpokit

The R package rexpokit is a key dependency of the BioGeoBEARS R package for phylogenetic biogeography.

rexpokit wraps some of the matrix exponentiation utilities from EXPOKIT, a Fortran 77 library that is widely recommended for matrix exponentiation (Sidje RB, 1998. "Expokit: A Software Package for Computing Matrix Exponentials." ACM Trans. Math. Softw. 24(1): 130-156). EXPOKIT includes functions for exponentiating both small, dense matrices, and large, sparse matrices (in sparse matrices, most of the cells have value 0).

Rapid matrix exponentiation is useful in phylogenetics when we have a large number of states (as we do when we are inferring the history of transitions between the possible geographic ranges of a species), but is probably useful in other ways as well.

Installation

As rexpokit contains C++ and FORTRAN code, it is easiest to install the pre-compiled binaries from CRAN. This is done from the R command line, with:

install.packages("rexpokit")

If you want to install the GitHub version, you will need gfortran and gcc compilers installed on your machine. Then, install using devtools:

library(devtools)
install_github("nmatzke/rexpokit", INSTALL_opts="--byte-compile")

To see examples of the matrix exponentiation calculations, see the example code with:

library(rexpokit)
?rexpokit

Build status on Travis-CI: (Deleted, as Travis-CI now requires subscription.)

NOTE: As of 2023-06-21, a new version of rexpokit, 0.26.6.8, has been submitted to CRAN. This version fixes some warnings caused by gfortan/gcc10. Binaries should be available soon. Old binaries have been archived at: https://github.com/nmatzke/Matzke_R_binaries

NOTE: As of 2019-11-04, a new version of rexpokit, 0.26.6.6, has been accepted on CRAN. This version fixes some warnings caused by gfortan/gcc10, currently in beta, but nonetheless checked by CRAN. Binaries should be available soon. Old binaries have been archived at: https://github.com/nmatzke/Matzke_R_binaries

NOTE: As of 2018-10-03, a new version of rexpokit, 0.26.6, has been accepted on CRAN. This version fixes warnings due to upgrades in CRAN's FORTRAN compilers, and more importantly, removes some dependencies previously needed by cladoRcpp/BioGeoBEARS. CRAN version is here, binaries should be available in a few days: https://cran.r-project.org/package=rexpokit

Release v0.26.6 registered on Zenodo: DOI

Zenodo link for release: https://zenodo.org/badge/latestdoi/17001945

Zenodo DOI for release: http://dx.doi.org/10.5281/zenodo.1442889

Metadata

Version

0.26.6.14

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows