https://github.com/cran/pracma
Raw File
Tip revision: 1305bf51cc38adca02d0c8a834c61a4c7e038309 authored by Hans W. Borchers on 08 February 2015, 00:00:00 UTC
version 1.8.3
Tip revision: 1305bf5
inv.R
##
##  i n v . R  matrix inverse
##


inv <- function(a) {
	if (length(a) == 0) return(matrix(0, nrow=0, ncol=0))
	if ((!is.numeric(a) && !is.complex(a)) || !is.matrix(a))
		stop("Argument 'a' must be a numeric or complex matrix.")
	if (nrow(a) != ncol(a))
		stop("Matrix 'a' must be square.")

	e <- try(b <- solve(a), silent=TRUE)
	if (class(e) == "try-error") {
		warning("Matrix appears to be singular.")
		b <- rep(Inf, length(a))
		dim(b) <- dim(a)
	}
	return(b)
}
back to top