R/RcppExports.R

Defines functions logAffInv distAffInv distAffInv1m distAffInv11_2 distAffInv11 LogMSPD LogM ExpM logSO distSO

Documented in ExpM LogM LogMSPD

# Generated by using Rcpp::compileAttributes() -> do not edit by hand
# Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

distSO <- function(X, Y) {
    .Call('_manifold_distSO', PACKAGE = 'manifold', X, Y)
}

logSO <- function(p, X) {
    .Call('_manifold_logSO', PACKAGE = 'manifold', p, X)
}

#' Matrix exponential
#'
#' \code{ExpM(X)} computes the matrix exponential using Armardillo. 
#'
#' @param X A square matrix 
#' @returns A matrix having the same size as the input
#' @export
ExpM <- function(X) {
    .Call('_manifold_ExpM', PACKAGE = 'manifold', X)
}

#' Matrix logarithm
#'
#' \code{LogM(X)} computes the matrix logarithm of a general matrix using Armardillo. The returned value is a complex matrix but converted into a real one.
#'
#' @param X A square matrix 
#' @returns A matrix having the same size as the input
#' @export
LogM <- function(X) {
    .Call('_manifold_LogM', PACKAGE = 'manifold', X)
}

#' Matrix logarithm of a symmetric positive definite
#'
#' \code{LogMSPD(X)} computes the matrix logarithm of an SPD matrix using Armardillo. The returned value is a real matrix.
#'
#' @param X An SPD matrix 
#' @returns A symmetric matrix
#' @export
LogMSPD <- function(X) {
    .Call('_manifold_LogMSPD', PACKAGE = 'manifold', X)
}

distAffInv11 <- function(X, Y) {
    .Call('_manifold_distAffInv11', PACKAGE = 'manifold', X, Y)
}

distAffInv11_2 <- function(X, Y) {
    .Call('_manifold_distAffInv11_2', PACKAGE = 'manifold', X, Y)
}

distAffInv1m <- function(X, Y) {
    .Call('_manifold_distAffInv1m', PACKAGE = 'manifold', X, Y)
}

distAffInv <- function(X, Y) {
    .Call('_manifold_distAffInv', PACKAGE = 'manifold', X, Y)
}

logAffInv <- function(p, X) {
    .Call('_manifold_logAffInv', PACKAGE = 'manifold', p, X)
}

Try the manifold package in your browser

Any scripts or data that you put into this service are public.

manifold documentation built on Oct. 4, 2022, 5:06 p.m.