dS/dt=-bSI, dI/dt=bSI (uso b para beta)


```python
from sympy import *
from sympy.abc import S,I,t,b
```


```python
#puntos criticos
P=-b*S*I
Q=b*S*I
#establecer P(S,I)=0 y Q(S,I)=0
Peqn=Eq(P,0)
Qeqn=Eq(Q,0)
print(solve((Peqn,Qeqn),S,I))
#matriz Jacobiana
J11=diff(P,S)
J12=diff(P,I)
J21=diff(Q,S)
J22=diff(Q,I)
J=Matrix([[J11,J12],[J21,J22]])
pprint(J)
```

    [(0, I), (S, 0)]
    ⎡-I⋅b  -S⋅b⎤
    ⎢          ⎥
    ⎣I⋅b   S⋅b ⎦



```python
#J en el punto critico
Jc1=J.subs([(S,0),(I,I)])
pprint(Jc1.eigenvals())
pprint(Jc1.eigenvects())
Jc2=J.subs([(S,S),(I,0)])
pprint(Jc2.eigenvals())
pprint(Jc2.eigenvects())
```

    {0: 1, -I⋅b: 1}
    ⎡⎛      ⎡⎡0⎤⎤⎞  ⎛         ⎡⎡-1⎤⎤⎞⎤
    ⎢⎜0, 1, ⎢⎢ ⎥⎥⎟, ⎜-I⋅b, 1, ⎢⎢  ⎥⎥⎟⎥
    ⎣⎝      ⎣⎣1⎦⎦⎠  ⎝         ⎣⎣1 ⎦⎦⎠⎦
    {0: 1, S⋅b: 1}
    ⎡⎛      ⎡⎡1⎤⎤⎞  ⎛        ⎡⎡-1⎤⎤⎞⎤
    ⎢⎜0, 1, ⎢⎢ ⎥⎥⎟, ⎜S⋅b, 1, ⎢⎢  ⎥⎥⎟⎥
    ⎣⎝      ⎣⎣0⎦⎦⎠  ⎝        ⎣⎣1 ⎦⎦⎠⎦


Los puntos criticos son no hiperbolicos.


```python
import matplotlib.pyplot as plt
import numpy as np
from scipy.integrate import odeint
import pylab as pl
import matplotlib
```


```python
b=1
def dx_dt(x,t):
    return [ -b*x[0]*x[1] , b*x[1]*x[0] ]
#trayectorias en tiempo hacia adelante
ts=np.linspace(0,10,500)
ic=np.linspace(20000,100000,3)
for r in ic:
    for s in ic:
        x0=[r,s]
        xs=odeint(dx_dt,x0,ts)
        plt.plot(xs[:,0],xs[:,1],"-", color="orangered", lw=1.5)
#trayectorias en tiempo hacia atras
ts=np.linspace(0,-10,500)
ic=np.linspace(20000,100000,3)
for r in ic:
    for s in ic:
        x0=[r,s]
        xs=odeint(dx_dt,x0,ts)
        plt.plot(xs[:,0],xs[:,1],"-", color="orangered", lw=1.5)
#etiquetas de ejes y estilo de letra
plt.xlabel('S',fontsize=20)
plt.ylabel('I',fontsize=20)
plt.tick_params(labelsize=12)
plt.ticklabel_format(style="sci", scilimits=(0,0))
plt.xlim(0,100000)
plt.ylim(0,100000)
#campo vectorial
X,Y=np.mgrid[0:100000:15j,0:100000:15j]
u=-b*X*Y
v=b*Y*X
pl.quiver(X,Y,u,v,color='dimgray')
plt.savefig("SIinf.pdf",bbox_inches='tight')
plt.show()
```

Analisis de Bifurcaciones

El punto critico del sistema no depende del parametro beta por lo que no cambia al variar beta.

a099718e70389d1ba800e59d3b011c3b1eac317a
ipynb
Jupyter Notebook
ModeloSI(infecciosas).ipynb
deleonja/dynamical-sys
024acc61a4e36d46b1502ce0391707e4afbc58e2
MIT
ModeloSI(infecciosas).ipynb
deleonja/dynamical-sys
024acc61a4e36d46b1502ce0391707e4afbc58e2
MIT
ModeloSI(infecciosas).ipynb
deleonja/dynamical-sys
024acc61a4e36d46b1502ce0391707e4afbc58e2
MIT
Qwen/Qwen-72B
1. YES
2. YES