- res <- stats::integrate(
- function(z) .deriv[[link]][[order]](λ[k]*z+b[k]) * exp(-z^2/2) / sqrt(2*pi),
- lower=-Inf, upper=Inf )$value
- }, error = function(e) {
- # Robust slow code, no fails observed:
- sink("/dev/null") #pracma package has some useless printed outputs...
- res <- pracma::integral(
- function(z) .deriv[[link]][[order]](λ[k]*z+b[k]) * exp(-z^2/2) / sqrt(2*pi),
- xmin=-Inf, xmax=Inf, method="Kronrod")
- sink()
- })
- res
- })
+ stats::integrate(integrand, lower=-Inf, upper=Inf)$value,
+ error = function(e) {
+ # Robust slow code, no fails observed.
+ # pracma package has some useless printed outputs: silence them
+ # without touching the user's sink() stack.
+ out <- NULL
+ utils::capture.output({
+ out <- pracma::integral(integrand, xmin=-Inf, xmax=Inf, method="Kronrod")
+ })
+ out
+ }
+ )
+ }, numeric(1) )