Pessoal, estou com dúvida no script abaixo, pois as vezes fica me dando como resposta NULL e não estou conseguindo identificar o erro. O meu objetivo é Implementar uma funçao que, para um dado T , retorna os instantes das ocorrências de um processo de Poisson nao-homogeneo com funcao de intensidade lambda(t) = 3/(t + 1)

lambda_t<-function(t){
if(t<0){
print("tempo negativo")
break()
}
lambdat<-3/(t+1)
return(lambdat)
}

pois_naohomog<-function(){
        lambda<-3
i<-1
T<-0
saida<-NULL
T<-T+exponencial(lambda)
u<-runif(1)
while(u<lambda_t(T)/lambda){
saida[i]<-T
i<-i+1
T<-T+exponencial(lambda)
}
return(saida)
}