Alisson, bom dia!Com base na dica dada por Jobenil Júnior, pensei em comparar o procedimento utilizando uma função para cálculo aproximado da área abaixo da curva já postada aqui no fórum.
### <code r># dvg <- function(x, ts, tr, a, n) {tr+(ts-tr)/((1+(a*x)^n)^(1-1/n))}dvg <- function(x){0.23+(0.64-0.23)/((1+(1.22*x)^1.34)^(1-1/1.34))}dvg(10) - dvg(1500) # [1] 0.1417496integrate(dvg, lower = 10, upper = 1500)# 412.4841 with absolute error < 0.0011# emprestando a função para cálculo da área abaixo da curva já postada por Walmes Zevianiaac <- function(x, y){ox <- order(x)x <- x[ox]y <- y[ox]alt <- diff(x)bas <- y[-length(y)]+diff(y)/2a <- sum(alt*bas)return(a)}
x=seq(10,1500, by=10); y=dvg(x); aac(x, y) #[1] 412.5297x=seq(10,1500, by=1); y=dvg(x); aac(x, y) #[1] 412.4846x=seq(10,1500, by=.1); y=dvg(x); aac(x, y) #[1] 412.4841integrate(dvg, lower = 10, upper = 1500)# 412.4841 with absolute error < 0.0011### visualizaçãoplot(x, y, ylim=c(0,.5), type='n')polygon(c(x[1],x,x[length(x)]),c(0,y,0), col=5)points(c(10,1500), c(dvg(10), dvg(1500)), col=2, pch=20)text(c(10,1500), c(dvg(10), dvg(1500)), round(c(dvg(10), dvg(1500)),4), cex=.5, pos=3)### </code>
_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.