
Se eu fosse gerar da normal truncada, eu iria proceder usando o método da inversa da acumulada. Talvez seja mais rápido. O com while pode demorar demais se a taxa de rejeição for grande. Por exemplo, o tempo para gerar sem números entre 0 e 1 é maior do que para gerar entre -1 e 1 porque a taxa de rejeição no primeiro caso é maior. par(mfrow=c(1,2)) curve(dnorm(x, 0, 1), -3, 3) abline(v=c(-0.5, 2), lty=2) curve(pnorm(x, 0, 1), -3, 3) abline(v=c(-0.5, 2), lty=2) layout(1) lim <- pnorm(c(-0.5, 2), 0, 1) u <- runif(100, lim[1], lim[2]) y <- qnorm(u, 0, 1) par(mfrow=c(1,2)) curve(dnorm(x, 0, 1), -3, 3) abline(v=c(-0.5, 2), lty=2) rug(y) curve(pnorm(x, 0, 1), -3, 3) abline(v=c(-0.5, 2), lty=2) rug(u, side=2) rug(y) layout(1) À disposição. Walmes.