################################################ ##### Exemplo 1 - Crescimento exponencial ##### ################################################ rm(list=ls()) p0=10 #tamanho populacional inicial r=0.9 #taxa de crescimento. Teste para r=0.9 e 1.1 para ver a diferenca. tempo.Max=50 #tempo de analise da nossa equacao p=rep(0,(tempo.Max)) tempo=seq(0,tempo.Max) #definicao de cada instante de tempo for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo pela solucao da equacao p[n]=exp(n*log(r))*p0 } p=append(p0,p) #nosso vetor de tamanho populacional cbind(tempo, p) #nosso vetor de tamanho populacional a cada unidade de tempo #r=0.9 e r=1.1 plot(p~tempo, pch=19, xlab="tempo", ylab="n(t)",xlim=c(0,50)) ###################################################### ##### Exemplo 2 - Equilibrio e sua estabilidade ##### ##################################################### rm(list=ls()) pstar=0 #tamanho populacional no equilibrio r=1.1 #taxa de crescimento. Teste para r=0.9 e 1.1 para ver a diferenca. eps=0.1 #perturbacao pstar.pert=pstar+eps #equilibrio + perturbado tempo.Max=50 #tempo de analise da nossa equacao p=rep(0,(tempo.Max)) tempo=seq(0,tempo.Max) #definicao de cada instante de tempo for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo pela solucao da equacao p[n]=exp(n*log(r))*pstar.pert } p=append(pstar.pert,p) #nosso vetor de tamanho populacional cbind(tempo,p) #nosso vetor de tamanho populacional a cada unidade de tempo #r=0.9 e r=1.1 plot(p~tempo, pch=19, xlab="n", ylab="p(n)") ##################################################################### ##### Exemplo 3 - Tempo de Dobra/Metade do tamanho populacional ##### ##################################################################### rm(list=ls()) r=1.1 # Teste para r=0.9 e 1.1 para ver a diferenca. nd=abs(log(2)/log(r)) p0=10 #tamanho inicial da populacao tempo.Max=20 #tempo de analise da nossa equacao p=rep(0,tempo.Max) p[1]=p0 tempo=seq(0,tempo.Max) #definicao de cada instante de tempo for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo iterativamente p[n+1]=r*p[n] } cbind(tempo,p) #nosso vetor de tamanho populacional a cada unidade de tempo #r=0.9 plot(p~tempo, pch=19, xlab="n", ylab="p(n)", ylim=c(0,10), xlim=c(0,tempo.Max)) lines(p~tempo) abline(h=5, col="blue", lty=2, ylim=c(0,100), xlim=c(0,tempo.Max)) abline(v=nd, col="blue", lty=2, ylim=c(0,10), xlim=c(0,tempo.Max)) #r=1.1 plot(p~tempo, pch=19, xlab="n", ylab="p(n)", ylim=c(0,30), xlim=c(0,tempo.Max)) lines(p~tempo) abline(h=20, col="blue", lty=2, ylim=c(0,30), xlim=c(0,tempo.Max)) abline(v=nd, col="blue", lty=2, ylim=c(0,30), xlim=c(0,tempo.Max)) ################################ ##### Exemplo 4 - MigraƧao ##### ################################ rm(list=ls()) r=1.1 # Teste para r=0.9 e 1.1 para ver a diferenca. m=10 #migracao por uniade de tempo p0=5#equilibrio calculado em aula tempo.Max=100 #tempo de analise da nossa equacao p=rep(0,tempo.Max) p[1]=p0 tempo=seq(0,tempo.Max) #definicao de cada instante de tempo for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo iterativamente p[n+1]=r*p[n]+m } cbind(tempo,p) #nosso vetor de tamanho populacional a cada unidade de tempo #r=0.9 eq=m/(1-r) p.eq=rep(eq,(tempo.Max+1)) plot(p.eq ~ tempo, xlab="n", ylab="p(n)", xlim=c(0,tempo.Max), ylim=c(0,110), type="l", col="blue", lty=2) points(p~tempo, pch=19, xlab="n", ylab="p(n)", xlim=c(0,tempo.Max)) #r=1.1 plot(p~tempo, pch=19, xlab="n", ylab="p(n)", ylim=c(0,3000)) plot(p~tempo, pch=19, xlab="n", ylab="p(n)") ######################################### ##### Exemplo 4 - MigraƧao com r=1 ##### ######################################## rm(list=ls()) r=1 m=10 #migracao por uniade de tempo p0=2 tempo.Max=50 #tempo de analise da nossa equacao tempo=seq(0,tempo.Max) #definicao de cada instante de tempo # Recorrencia (iterativamente) p.recor=rep(0,tempo.Max) p.recor[1]=p0 for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo iterativamente p.recor[n+1]=r*p.recor[n]+m } cbind(tempo,p.recor) plot(p.recor~tempo, pch=19, xlab="n", ylab="p(n)", xlim=c(0,50), col="blue") # Equacao geral p.geral=rep(0,(tempo.Max-1)) for(n in 1:(tempo.Max)){ #avaliando como nosso p varia com o tempo. Fazendo pela solucao da equacao p.geral[n]=p0+m*n } p.geral=append(p0,p.geral) cbind(tempo,p.geral) #nosso vetor de tamanho populacional a cada unidade de tempo points(p.geral~tempo, pch=19, xlab="n", ylab="p(n)", xlim=c(0,50), col="orange", cex=0.4)