https://github.com/cran/pracma
Tip revision: 708a2ad382a163d1eef5af0665e3ae2aad200ced authored by HwB on 21 March 2013, 00:00:00 UTC
version 1.4.5
version 1.4.5
Tip revision: 708a2ad
einsteinF.R
##
## e i n s t e i n F . R Einstein Functions
##
einsteinF <- function(d, x) {
stopifnot(is.numeric(x) || is.complex(x))
fi <- which(x == 0)
if (d == 1) {
y <- x^2 * exp(x) / (exp(x) - 1)^2
y[fi] <- 1
} else if (d == 2) {
y <- x / (exp(x) - 1)
y[fi] <- 1
} else if (d == 3) {
y <- log(1 - exp(-x))
y[fi] <- -Inf
} else if (d == 4) {
y <- x / (exp(x) - 1) - log(1 - exp(-x))
y[fi] <- Inf
} else {
stop("Argument 'd' must be one of the integers 1, 2, 3, 4.")
}
return(y)
}