Files

69 lines
1.8 KiB
R
Executable File

# Logistico
Dias<-c(105,112,119,126,133,140,147,154,161,168,175)
Peso<-c(59.4,66.1,72.8,79.6,86.4,93.2,99.8,106.4,112.8,119.2,125.3)
#Regresión no lineal
Reg<-nls(Peso~k/(1+b*exp(-r*Dias)),star=c(k=80,b=0.1, r=1),control=nls.control(warnOnly=TRUE))
summary(Reg)
K=180
b1=513
r=0.72
Y<-seq(1:50)
t<-seq(1:50)
G<-seq(1:50)
for (i in 1:49) {Y[i+1]<-K/(1+b1*exp(-r*i))}
plot(t,Y,xlab="Tiempo (semanas)",ylab="Peso Vivo")
for (i in 1:49) {G[i+1]<-(Y[i+1]-Y[i])}
plot(t,G)
# Presa-depredador Euler
a<-0.03
b<-0.0009
c<-0.0005
d<-0.05
N<-1000
x<-seq(1:N)
y<-seq(1:N)
paso<-1.5
x[1]<-100
y[1]<-100
for (i in 1:N) {x[i+1]<-x[i]+paso*(a*x[i]-b*x[i]*y[i])
y[i+1]<-y[i]+paso*(c*x[i]*y[i]-d*y[i])}
plot(x,ylim=c(0,max(x+y)),type='l',ylab="Densidad Poblacional")
lines(y,lwd=2,col="red")
# Modelo SIR
library(deSolve)
#tamaño poblacional
N = 1
#estado inicial de los compartimentos
init <- c(S = 1-1e-6,
I = 1e-6,
R = 0)
#parámetros del modelo (coeficientes de las variables)
param <- c(beta = 2.0,
gamma = 0.2)
#crear la función con las ODE
sir <- function(times, init, param) {
with(as.list(c(init, param)), {
#ecuaciones diferenciales
dS <- -beta * S * I
dI <- beta * S * I - gamma * I
dR <- gamma * I
#resultados de las tasas de cambio
return(list(c(dS, dI, dR)))
})
}
#intervalo de tiempo y resolución
times <- seq(0, 20, by = 1)
#resolver el sistema de ecuaciones con función 'ode'
out <- ode(y = init, times = times, func = sir, parms = param)
#cambiar out a un data.frame
out <- as.data.frame(out*N) #aqui puede multiplicar 'out' por N
# ver resultados
head(out)
plot(out$time,out$S,type="l",xlab="Tiempo",ylab="Población")
lines(out$I,col="red")
lines(out$R,col="blue")