https://github.com/cran/pracma
Tip revision: 71455748623ef69836470c75c5f9384f6e872d45 authored by HwB on 28 June 2011, 00:00:00 UTC
version 0.6-3
version 0.6-3
Tip revision: 7145574
crossn.R
##
## c r o s s n . R Vector Cross Product
##
crossn <- function(A) {
if (!is.numeric(A))
stop("Argument 'A' must be numeric.")
if (is.vector(A) && length(A) == 2) {
crossA <- c(A[2], -A[1])
} else {
if (is.matrix(A) && nrow(A) >= 2 && ncol(A) == nrow(A) + 1) {
m <- ncol(A)
crossA <- numeric(m)
for (i in 1:m)
crossA[i] <- (-1)^(i+1) * det(A[, -i])
} else {
stop("Matrix 'A' must be of size n x (n+1) with n >= 1.")
}
}
return(crossA)
}