<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rocio+santos</id>
		<title>MateWiki - Contribuciones del usuario [es]</title>
		<link rel="self" type="application/atom+xml" href="https://mat.caminos.upm.es/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rocio+santos"/>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/wiki/Especial:Contribuciones/Rocio_santos"/>
		<updated>2026-04-30T13:00:55Z</updated>
		<subtitle>Contribuciones del usuario</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28919</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28919"/>
				<updated>2015-03-06T20:04:35Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial::  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias:: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,       siendo    K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28918</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28918"/>
				<updated>2015-03-06T20:04:12Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,       siendo    K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28917</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28917"/>
				<updated>2015-03-06T20:03:59Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,       siendo    K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28916</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28916"/>
				<updated>2015-03-06T20:03:10Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,       siendo    K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que se encuentran en el triangulo de vértices (S,I) = (0,0), (S,I) = (0,N) y (S,I) = (N,0).&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28915</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28915"/>
				<updated>2015-03-06T20:02:52Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,     siendo K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que se encuentran en el triangulo de vértices (S,I) = (0,0), (S,I) = (0,N) y (S,I) = (N,0).&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28914</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28914"/>
				<updated>2015-03-06T20:01:56Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K ,                                                    K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que se encuentran en el triangulo de vértices (S,I) = (0,0), (S,I) = (0,N) y (S,I) = (N,0).&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28912</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28912"/>
				<updated>2015-03-06T20:01:24Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
En los datos del caso 1, la población sana se contagia de la enfermedad prácticamente al completo antes de la quinta semana, aumentando a su vez, y como es lógico (R + I + S = N), los infectados y los curados, en menor medida estos últimos. Los infectados tienen un máximo entre la semana 3 y 4, a partir del cual empiezan a disminuir porque la población se recupera hasta casi su totalidad.&lt;br /&gt;
&lt;br /&gt;
En el caso 2, la población sana se infecta casi en su totalidad antes de la segunda semana, con un aumento mucho mayor que el caso anterior. Esto se debe a que el número de infectados en el primer caso eran 15 y en el segundo 20 000. Las curvas de curados e infectados tienen la misma forma que en el caso 1 pero con unas variaciones más suaves, teniendo que pasar más de 20 semanas para que los curados tiendan a ser la población total.&lt;br /&gt;
&lt;br /&gt;
En el caso 3, al haber inicialmente un único infectado, la población comienza a desarrollar la enfermedad en torno a la segunda semana, estando infectada casi en su mayoría al comienzo de la quinta semana. La variación de las curvas de infectados y sanos tienen una gran pendiente. Los curados tienen a aumentar con una pendiente más suave, hasta estabilizarse y llegar estar curada toda la población.&lt;br /&gt;
&lt;br /&gt;
Realmente y como se ha dicho en el apartado anterior, las curvas S e I tienden a cero y la curva R tiende a N en el infinito, aunque es válido decir que son cero y N respectivamente cuando ha pasado un tiempo t lo suficientemente grande como para que el error del método sea pequeño.&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
A partir de la siguiente ecuación diferencial:  &amp;lt;math&amp;gt; \frac {dI}{dS} =-1+\frac {\rho}{S} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
Si integramos la función obtenemos las trayectorias: &amp;lt;math&amp;gt; I+S-\rho \cdot log S = K , K\in\mathbb{R} &amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
que se encuentran en el triangulo de vértices (S,I) = (0,0), (S,I) = (0,N) y (S,I) = (N,0).&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28904</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28904"/>
				<updated>2015-03-06T19:57:29Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de las trayectorias obtenidas a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triángulo de trayectorias en función de (S,I) hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria obtenida a partir de la solución de la ecuación diferencial hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28865</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28865"/>
				<updated>2015-03-06T19:46:22Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Las trayectorias obtenidas en el plano de fases (I,S), están necesariamente acotadas por el triángulo de vértices (S,I)=(0,0); (S,I)=(0,N); (S,I)=(N,0). Esto ocurre porque las variables son positivas y dado que el sistema tiene tamaño fijo.&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28840</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28840"/>
				<updated>2015-03-06T19:33:36Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28837</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28837"/>
				<updated>2015-03-06T19:32:07Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20_0001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Traye20_0001.png&amp;diff=28836</id>
		<title>Archivo:Traye20 0001.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Traye20_0001.png&amp;diff=28836"/>
				<updated>2015-03-06T19:31:38Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: trayectoria hasta semana 20 con un paso 0.001&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;trayectoria hasta semana 20 con un paso 0.001&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28833</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28833"/>
				<updated>2015-03-06T19:30:03Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler y Runge-Kutta de orden 4 para los distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para los distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all;clf;clc&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
% Variables de RK4&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Variables de Euler&lt;br /&gt;
Ie=zeros(1,length(t));&lt;br /&gt;
Re=zeros(1,length(t));&lt;br /&gt;
Se=zeros(1,length(t));&lt;br /&gt;
Ie(1)=I0;&lt;br /&gt;
Se(1)=S0;&lt;br /&gt;
Re(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término&lt;br /&gt;
  K1s=-r*S(n)*I(n);&lt;br /&gt;
  K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
  K1r=a*I(n);&lt;br /&gt;
  &lt;br /&gt;
  %segundo término&lt;br /&gt;
  K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
  K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
  &lt;br /&gt;
  %tercer término&lt;br /&gt;
  K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
  K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
  &lt;br /&gt;
  %cuarto término&lt;br /&gt;
  K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
  K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
  &lt;br /&gt;
  S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
  R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
end&lt;br /&gt;
% Euler&lt;br /&gt;
for i=1:length(t)-1&lt;br /&gt;
  Se(i+1)=Se(i)+h*(Se(i)*(-0.0000218)*Ie(i)); %Euler primera ecuación&lt;br /&gt;
  Ie(i+1)=Ie(i)+h*(0.0000218*Se(i)*Ie(i)-0.341*Ie(i)); %Euler segunda ecuación&lt;br /&gt;
  Re(i+1)=Re(i)+h*(0.341*Ie(i)); %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','linewidth',2,t,I,'b','linewidth',2,t,R,'r','linewidth',2)&lt;br /&gt;
plot(t,Se,'m','linewidth',2,t,Ie,'c','linewidth',2,t,Re,'k','linewidth',2)&lt;br /&gt;
legend('S con RK4','I con RK4', 'R con RK4','S con Euler','I con Euler', 'R con Euler','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 1: S0=159 985, I0=15.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_sem_01.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_sem_001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_sem_0001.png|thumb|475px|left|Condiciones iniciales 1 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 2: S0=140 000, I0=20 000.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:4_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.1]] || [[Archivo:4_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.01]] || [[Archivo:4_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO220_01.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.1]] || [[Archivo:20_001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.01]] || [[Archivo:20_0001.png|thumb|475px|left|Condiciones iniciales 2 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
CONDICIONES 3: S0=159 999, I0=1.&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO34_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.1]] || [[Archivo:CASO34_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.01]] || [[Archivo:CASO34_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 4, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:CASO320_01.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.1]] || [[Archivo:C20_001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.01]] || [[Archivo:C20_0001.png|thumb|475px|left|Condiciones iniciales 3 hasta la semana 20, con un paso de 0.001]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(0001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:20_(0001).png&amp;diff=28830</id>
		<title>Archivo:20 (0001).png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:20_(0001).png&amp;diff=28830"/>
				<updated>2015-03-06T19:28:50Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Triangulo de trayectorias hasta la semana 20 con un paso de 0.001&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Triangulo de trayectorias hasta la semana 20 con un paso de 0.001&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28826</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28826"/>
				<updated>2015-03-06T19:27:51Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|600px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:traye20.001.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.01]] &lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Traye20.001.png&amp;diff=28821</id>
		<title>Archivo:Traye20.001.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Traye20.001.png&amp;diff=28821"/>
				<updated>2015-03-06T19:26:57Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: trayectorias hasta la semana 20 para un paso de 0.01&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;trayectorias hasta la semana 20 para un paso de 0.01&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28815</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28815"/>
				<updated>2015-03-06T19:25:05Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica del triángulo de trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20_(001).png|thumb|500px|left|Gráfica del triánglo de trayectorias hasta la semana 20]] || [[Archivo:|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:20_(001).png&amp;diff=28803</id>
		<title>Archivo:20 (001).png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:20_(001).png&amp;diff=28803"/>
				<updated>2015-03-06T19:21:43Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Triangulo trayectorias hasta semana 20 con paso de 0.01&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Triangulo trayectorias hasta semana 20 con paso de 0.01&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28795</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28795"/>
				<updated>2015-03-06T19:19:43Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|750px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28794</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28794"/>
				<updated>2015-03-06T19:19:24Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|650px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28792</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28792"/>
				<updated>2015-03-06T19:19:03Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|600px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28790</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28790"/>
				<updated>2015-03-06T19:18:35Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|500px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|500px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28787</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28787"/>
				<updated>2015-03-06T19:17:59Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|475px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:20_01.png|thumb|475px|left|Gráfica de la trayectoria hasta la semana 20 con paso de 0.1]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:20_01.png&amp;diff=28783</id>
		<title>Archivo:20 01.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:20_01.png&amp;diff=28783"/>
				<updated>2015-03-06T19:16:36Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: trayectorias hasta semana 20 con paso de 0.1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;trayectorias hasta semana 20 con paso de 0.1&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28774</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28774"/>
				<updated>2015-03-06T19:13:20Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Trayectorias de los casos del apartado 2.3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:20.png|thumb|475px|left|Gráfica de las trayectorias hasta la semana 20]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:20.png&amp;diff=28760</id>
		<title>Archivo:20.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:20.png&amp;diff=28760"/>
				<updated>2015-03-06T19:10:13Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Trayectorias para [0,20]&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Trayectorias para [0,20]&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28744</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28744"/>
				<updated>2015-03-06T19:03:26Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28743</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28743"/>
				<updated>2015-03-06T19:03:03Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
&lt;br /&gt;
(1)  En el primero de los caso si el número de susceptibles iniciales es menor o igual que la tasa de remoción relativa, no habrá epidemia, el número de infectados no aumenta y tienden a desaparecer en poco tiempo.&lt;br /&gt;
(2)  En el segundo de los casos si el número de susceptibles iniciales es mayor que la tasa de remoción relativa, entonces hay epidemia en el sentido que los infectados empiezan a aumentar.&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28724</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28724"/>
				<updated>2015-03-06T18:51:46Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Infectados con dos umbrales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Se puede ver que tenderán a desaparecer los infectados  únicamente en el primero de los casos para un número inicial de infectados de 9700, esto es debido a que no se supera el umbral de 10000 (M) infectados. Cuando se supera este umbral M el número de infectados tiende a N=500000 en el infinito.&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28717</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28717"/>
				<updated>2015-03-06T18:43:39Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Infectados con dos umbrales */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para I(0) de 9700]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 10200]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun para un I(0) de 30000]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28695</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28695"/>
				<updated>2015-03-06T18:30:21Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
[[Archivo: APARTADO2.png|600px|miniaturadeimagen|centro|DEMOSTRACIÓN ANALÍTICA]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28693</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28693"/>
				<updated>2015-03-06T18:29:48Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
[[Archivo: APARTADO2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:APARTADO2.png&amp;diff=28691</id>
		<title>Archivo:APARTADO2.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:APARTADO2.png&amp;diff=28691"/>
				<updated>2015-03-06T18:29:12Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Demostración analítica caso (1) y caso (2)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Demostración analítica caso (1) y caso (2)&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28681</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28681"/>
				<updated>2015-03-06T18:21:22Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
Demostración analítica, caso (1)y (2):&lt;br /&gt;
[[Archivo: APARTADO2.jpg|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28679</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28679"/>
				<updated>2015-03-06T18:20:26Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:APARTADO2.jpg|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28669</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28669"/>
				<updated>2015-03-06T18:13:08Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Apartado_2.._Segunda_parte.jpg|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28661</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28661"/>
				<updated>2015-03-06T18:10:52Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Demostración analítica de la epidemia en función de S0 y a/r */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias de los casos del apartado 2.3==&lt;br /&gt;
Para los casos estudiados en &lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clf, clc&lt;br /&gt;
% Introducimos las condiciones iniciales----------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce la semana: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Primer caso---------------------------------&lt;br /&gt;
S10=159985;&lt;br /&gt;
I10=15;&lt;br /&gt;
I1=zeros(1,length(t));&lt;br /&gt;
S1=zeros(1,length(t));&lt;br /&gt;
I1(1)=I10;&lt;br /&gt;
S1(1)=S10;&lt;br /&gt;
% Segundo caso--------------------------------&lt;br /&gt;
S20=140000;&lt;br /&gt;
I20=20000;&lt;br /&gt;
I2=zeros(1,length(t));&lt;br /&gt;
S2=zeros(1,length(t));&lt;br /&gt;
I2(1)=I20;&lt;br /&gt;
S2(1)=S20;&lt;br /&gt;
% Tercer caso---------------------------------&lt;br /&gt;
S30=159999;&lt;br /&gt;
I30=1;&lt;br /&gt;
I3=zeros(1,length(t));&lt;br /&gt;
S3=zeros(1,length(t));&lt;br /&gt;
I3(1)=I30;&lt;br /&gt;
S3(1)=S30;&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
% Runge-Kutta de orden 4 Primer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S1(n)*I1(n);&lt;br /&gt;
  K1i=r*S1(n)*I1(n)-a*I1(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S1(n)+h/2*K1s)*(I1(n)+h/2*K1i)-a*(I1(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S1(n)+h/2*K2s)*(I1(n)+h/2*K2i)-a*(I1(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S1(n)+h/2*K3s)*(I1(n)+h/2*K3i)-a*(I1(n)+h/2*K3i);&lt;br /&gt;
  S1(n+1)=S1(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I1(n+1)=I1(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Segundo caso-------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S2(n)*I2(n);&lt;br /&gt;
  K1i=r*S2(n)*I2(n)-a*I2(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S2(n)+h/2*K1s)*(I2(n)+h/2*K1i)-a*(I2(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S2(n)+h/2*K2s)*(I2(n)+h/2*K2i)-a*(I2(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S2(n)+h/2*K3s)*(I2(n)+h/2*K3i)-a*(I2(n)+h/2*K3i);&lt;br /&gt;
  S2(n+1)=S2(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I2(n+1)=I2(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
% Runge-Kutta de orden 4 Tercer caso--------------------------------------------------------&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
  %primer término del runge-kutta del sistema&lt;br /&gt;
  K1s=-r*S3(n)*I3(n);&lt;br /&gt;
  K1i=r*S3(n)*I3(n)-a*I3(n);&lt;br /&gt;
  %segundo término del runge-kutta del sistema&lt;br /&gt;
  K2s=-r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i);&lt;br /&gt;
  K2i=r*(S3(n)+h/2*K1s)*(I3(n)+h/2*K1i)-a*(I3(n)+h/2*K1i);&lt;br /&gt;
  %tercer término del runge-kutta del sistema&lt;br /&gt;
  K3s=-r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i);&lt;br /&gt;
  K3i=r*(S3(n)+h/2*K2s)*(I3(n)+h/2*K2i)-a*(I3(n)+h/2*K2i);&lt;br /&gt;
  %cuarto término del runge-kutta del sistema&lt;br /&gt;
  K4s=-r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i);&lt;br /&gt;
  K4i=r*(S3(n)+h/2*K3s)*(I3(n)+h/2*K3i)-a*(I3(n)+h/2*K3i);&lt;br /&gt;
  S3(n+1)=S3(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
  I3(n+1)=I3(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
end&lt;br /&gt;
N=S10+I10;&lt;br /&gt;
h1=10000;&lt;br /&gt;
J=0:h1:N;&lt;br /&gt;
D=zeros(1,length(J));&lt;br /&gt;
P=N*ones(1,length(J));&lt;br /&gt;
for i=1:length(J)&lt;br /&gt;
D(i)=P(i)-J(i);&lt;br /&gt;
end&lt;br /&gt;
RO=a/r;&lt;br /&gt;
%Para k=0&lt;br /&gt;
L1=RO*log(S1)-S1;&lt;br /&gt;
L2=RO*log(S2)-S2;&lt;br /&gt;
L3=RO*log(S3)-S3;&lt;br /&gt;
% Trayectorias&lt;br /&gt;
figure(1)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,L1,'g','linewidth',2)&lt;br /&gt;
plot(t,L2,'linewidth',2)&lt;br /&gt;
plot(t,L3,'r','linewidth',2)&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
% S-I&lt;br /&gt;
figure(2)&lt;br /&gt;
clf&lt;br /&gt;
hold on&lt;br /&gt;
plot(S1,I1,'g','linewidth',2)&lt;br /&gt;
plot(S2,I2,'linewidth',2)&lt;br /&gt;
plot(S3,I3,'r','linewidth',2)&lt;br /&gt;
plot(D,J,'k')&lt;br /&gt;
legend('Caso 1','Caso 2','Caso 3','location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28622</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28622"/>
				<updated>2015-03-06T17:47:04Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptibles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el numero de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S,'Linewidth',3)&lt;br /&gt;
plot(t,I,'g',Linewidth',3)&lt;br /&gt;
plot(t,R,'r',Linewidth',3)&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana: ');&lt;br /&gt;
h=input('introduce el paso: ');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales: ');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28615</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28615"/>
				<updated>2015-03-06T17:44:14Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png&amp;diff=28612</id>
		<title>Archivo:Condiciones iniciales 3.. Semana 20. Paso de 0.001.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_3.._Semana_20._Paso_de_0.001.png&amp;diff=28612"/>
				<updated>2015-03-06T17:43:35Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 3, hasta la semana 20 con paso de 0.001&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 3, hasta la semana 20 con paso de 0.001&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28610</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28610"/>
				<updated>2015-03-06T17:42:50Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png&amp;diff=28605</id>
		<title>Archivo:Condiciones iniciales 3. .Semana 4. Paso de 0.01.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_3._.Semana_4._Paso_de_0.01.png&amp;diff=28605"/>
				<updated>2015-03-06T17:42:07Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 3, hasta la cuarta semana, con paso de 0.01&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 3, hasta la cuarta semana, con paso de 0.01&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28603</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28603"/>
				<updated>2015-03-06T17:41:21Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png&amp;diff=28602</id>
		<title>Archivo:Condiciones iniciales 2.. Semana 20. Paso de 0.001.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_2.._Semana_20._Paso_de_0.001.png&amp;diff=28602"/>
				<updated>2015-03-06T17:40:50Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 2, hasta la semana 20 con paso de 0.001&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 2, hasta la semana 20 con paso de 0.001&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28591</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28591"/>
				<updated>2015-03-06T17:37:58Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png&amp;diff=28587</id>
		<title>Archivo:Condiciones iniciales 2. Semana 4. Paso de 0.01.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.01.png&amp;diff=28587"/>
				<updated>2015-03-06T17:37:18Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 2, hasta la semana 4 con paso de 0.01&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 2, hasta la semana 4 con paso de 0.01&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28581</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28581"/>
				<updated>2015-03-06T17:35:10Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png&amp;diff=28580</id>
		<title>Archivo:Condiciones iniciales 1. Semana 20. Paso 0.01.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_1._Semana_20._Paso_0.01.png&amp;diff=28580"/>
				<updated>2015-03-06T17:34:24Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 1, hasta la semana 20, con paso de 0.01&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 1, hasta la semana 20, con paso de 0.01&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28579</id>
		<title>Modelo para epidemias (Grupo 9C, Trabajo 7)</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Modelo_para_epidemias_(Grupo_9C,_Trabajo_7)&amp;diff=28579"/>
				<updated>2015-03-06T17:33:36Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: /* Resolucióin numérica del sistema SIR */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;En este trabajo vamos a estudiar el comportamiento de una enfermedad infecciosa (epidemia) en una población de N habitantes, la cual es inextensible espacialmente (no varía el número de habitantes).&lt;br /&gt;
=ª Parte=&lt;br /&gt;
En la primera parte del trabajo vamos a emplear un modelo sencillo que implica una ecuación diferencial de primer orden. Como datos tenemos  el número total de habitantes (N=500.000 habitantes), el número inicial de infectados (I(0)=200 casos), el número de infectados tras la primera semana (I(1)=500 casos).&lt;br /&gt;
==Número de contactos 'aproximados'==&lt;br /&gt;
Para calcular los contactos 'aproximados', hemos empleado el método de Euler. Sabiendo que C tiene valores entre 0.01 y 0.99, hemos creado un bucle que ha pasado por cada uno de esos valores, guardando en un vector la condición de |I(primera semana) - 500| y dibujándolo en comparación con todas las C posibles para ver gráficamente, además de numéricamente, la variación de la condición. El problema que tenemos que resolver es:&lt;br /&gt;
&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_1.png|225px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
Y el código empleado para estos cálculos es el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 1----------------------------------------------------------------------------------------------&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=0:0.01:1;                          % Vector en el que se estudia la epidemia&lt;br /&gt;
n=length(t);                         % Número de puntos&lt;br /&gt;
c=0.01:0.01:0.99;                    % Vector de posibles C&lt;br /&gt;
m=length(c);                         % Número de posibles C&lt;br /&gt;
Y=zeros(m,n);                        % Matriz donde guardamos, por filas, las soluciones de los infectados según C&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Euler-------------------------------------------------------------------------------------------------&lt;br /&gt;
for k=1:m&lt;br /&gt;
  Y(k,1)=y0;&lt;br /&gt;
  for i=1:n-1&lt;br /&gt;
    y(i+1)=y(i)+h*(c(k)/500000*(500000-y(i))*y(i));&lt;br /&gt;
    Y(k,i+1)=y(i+1);&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
I=abs(Y(:,n)-500*(ones(1,m)'));      % Condición de abs(I(primera semana)-500) &lt;br /&gt;
minimo=min(I);                       % Mínimo de la condición&lt;br /&gt;
[u,v]=find(I==minimo);               % Posición del mínimo&lt;br /&gt;
C=u/100                              % C obtenida&lt;br /&gt;
plot(c,I)                            % Gráfica comparativa de C con la condición&lt;br /&gt;
}}&lt;br /&gt;
Y la gráfica obtenida de la comparación de la condición en función de cada valor posible de C es:&lt;br /&gt;
[[Archivo:Apartado1Parte1.png|600px|miniaturadeimagen|centro|Error absoluto en I(1) para cada c]]&lt;br /&gt;
&lt;br /&gt;
==Evolución de los infectados==&lt;br /&gt;
Utilizando el método de Heun y Runge Kutta de orden 4, con un paso de h=0.01, la gráfica de evolución de afectados frente al tiempo (I(t),t) en un tiempo t=20 semanas, que hemos escogido para ver la curva completa,  y el programa son los siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 2-----------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
N=round(tN-t0)/h;&lt;br /&gt;
% Vectores---------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;          % Tiempo&lt;br /&gt;
y=zeros(1,N+1);     % Infectados para Runge Kutta&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
z=zeros(1,N+1);     % Infectados para Heun&lt;br /&gt;
z(1)=y0;&lt;br /&gt;
c=0.92;             % Contactos&lt;br /&gt;
% Bucle------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
  K1RK=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2RK=c/500000*(500000-(y(i)+h/2*K1RK))*(y(i)+h/2*K1RK);&lt;br /&gt;
  K3RK=c/500000*(500000-(y(i)+h/2*K2RK))*(y(i)+h/2*K2RK);&lt;br /&gt;
  K4RK=c/500000*(500000-(y(i)+h*K3RK))*(y(i)+h*K3RK);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1RK+2*K2RK+2*K3RK+K4RK);&lt;br /&gt;
  K1H=c/500000*(500000-z(i))*z(i);&lt;br /&gt;
  K2H=c/500000*(500000-(z(i)+h*K1H))*(z(i)+h*K1H);&lt;br /&gt;
  z(i+1)=z(i)+h/2*(K1H+K2H);&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de RK4 y Heun-------------------------------------------&lt;br /&gt;
figure(1)&lt;br /&gt;
plot(t,y)&lt;br /&gt;
legend('Runge Kutta orden 4')&lt;br /&gt;
figure(2)&lt;br /&gt;
plot(t,z,'r')&lt;br /&gt;
legend('Heun')&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartado2Parte1Heun.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartado2Parte1Runge4.png|thumb|600px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Infectados al terminar la sexta semana==&lt;br /&gt;
Tras la sexta semana, los infectados se muestran con el siguiente programa, siendo: I(6)=4.5032e+004.&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 3-------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=6;&lt;br /&gt;
y0=200;&lt;br /&gt;
h=0.01;&lt;br /&gt;
t=t0:h:tN;                % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);             % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                   % Contactos&lt;br /&gt;
% Bucle de Euler-----------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
end&lt;br /&gt;
InfectadosSemana6=y(600)  % El I(6) es el punto 6/h=600&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Semana a partir de la cuál hay más de 400 000 infectados==&lt;br /&gt;
Estudiando las 20 primeras semanas de la epidemia, la semana a partir de la cual los infectados superan la cifra de 400 000 es la semana 10 (con mayor exactitud, a partir de las 10.3 primeras semanas). El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clear all, clf&lt;br /&gt;
% Parte 1 Apartado 4--------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce las semanas de estudio: ');&lt;br /&gt;
y0=200;&lt;br /&gt;
h=input('Introduce el paso:');&lt;br /&gt;
t=t0:h:tN;               % Vector tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
y=zeros(1,N);            % Vector de infectados&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
c=0.92;                  % Contactos&lt;br /&gt;
% Bucle de Euler------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c/500000*(500000-y(i))*y(i);&lt;br /&gt;
  K2=c/500000*(500000-(y(i)+h/2*K1))*(y(i)+h/2*K1);&lt;br /&gt;
  K3=c/500000*(500000-(y(i)+h/2*K2))*(y(i)+h/2*K2);&lt;br /&gt;
  K4=c/500000*(500000-(y(i)+h*K3))*(y(i)+h*K3);&lt;br /&gt;
  y(i+1)=y(i)+h/6*(K1+2*K2+2*K3+K4);&lt;br /&gt;
  if y(i)&amp;lt;=400000&lt;br /&gt;
    Sem=i+1;&lt;br /&gt;
  end&lt;br /&gt;
end&lt;br /&gt;
plot(t,y)&lt;br /&gt;
Semana=Sem*0.01          % La posición de la semana será (i+1)*h&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Infectados con dos umbrales==&lt;br /&gt;
Manteniendo la población en 500 000 habitantes, utilizando el método de Heun, una longitud de paso h = 0.01 y un umbral M = 10 000, el código y las gráficas de evolución de infectados para los infectados iniciales 9 700, 10 200 y 30 000 habitantes son las siguientes:&lt;br /&gt;
&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all, clc, clf&lt;br /&gt;
% Parte 1 Apartado 5--------------------------------------------------------&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas: ');         % Semanas&lt;br /&gt;
y0=input('Inserte valor de Infectados iniciales: ');  % Infectados iniciales&lt;br /&gt;
h=0.01;                                               % Paso&lt;br /&gt;
P=500000;                                             % Población&lt;br /&gt;
M=10000;                                              % Umbral&lt;br /&gt;
t=t0:h:tN;                                            % Tiempo&lt;br /&gt;
N=length(t);&lt;br /&gt;
c=0.92;                                               % Contactos&lt;br /&gt;
y=zeros(1,N);&lt;br /&gt;
y(1)=y0;&lt;br /&gt;
% Método de Heun------------------------------------------------------------&lt;br /&gt;
for i=1:N-1&lt;br /&gt;
  K1=c*y(i)*(1-(y(i)/P))*(y(i)/M-1);&lt;br /&gt;
  K2=c*(y(i)+K1*h)*(1-1/P*(y(i)+K1*h))*(1/M*(y(i)+K1*h)-1);&lt;br /&gt;
  y(i+1)=y(i)+h/2*(K1+K2);&lt;br /&gt;
end&lt;br /&gt;
% Gráfica-------------------------------------------------------------------&lt;br /&gt;
plot(t,y)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Apartad_5_parte_1_9700.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según Heun]] || [[Archivo:Apartad_5_parte_1_10200.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] || [[Archivo:Apartad_5_parte_1_30000.png|thumb|475px|left|Gráfica de la variación de I en 20 semanas según RK4]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=ª Parte=&lt;br /&gt;
Vamos a considerar ahora un método más general, empleando un sistema de ecuaciones que es el siguiente:&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
Llamado método SIR, donde S(t) es el número de personas susceptibles de infectarse, I(t) es el número de infectados y R(t) es el número de recuperados e inmunes (al curarse de la enfermedad no se pueden volver a contagiar) y de habitantes aislados, y S(0), I(0) y R(0) son los datos iniciales de esos grupos.&lt;br /&gt;
&lt;br /&gt;
==Demostrar que S(t) + I(t) + R(t) = S0 + I0 = N ==&lt;br /&gt;
Si sumamos S' + I' + R' definidas en el sistema, tenemos que S' + I' + R' = (-rSI) + (rSI - aI) + (aI) = 0, lo que indica que la suma de S + I + R es constante y además S(t) + I(t) + R(t) = S(0) + I(0) + R(0) = S0 + I0 = N, es decir, la población total.&lt;br /&gt;
&lt;br /&gt;
==Demostración analítica de la epidemia en función de S0 y a/r ==&lt;br /&gt;
[[Archivo:Formula_apartado_1_parte_2.png|400px|miniaturadeimagen|centro|]]&lt;br /&gt;
&lt;br /&gt;
==Resolucióin numérica del sistema SIR ==&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Euler para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clc, clf, clear all&lt;br /&gt;
t0=0;&lt;br /&gt;
S0=input('Introduce los susceptiles de ser infectados inicialmente: ');&lt;br /&gt;
I0=input('Introduce el número de infectados inicialmente: ');&lt;br /&gt;
R0=0;&lt;br /&gt;
tN=input('Introduce el numero de semanas de estudio: ');&lt;br /&gt;
h=input('Introduce el paso: ');&lt;br /&gt;
N=round((tN-t0)/h);                                        %numero de subintervalos&lt;br /&gt;
% Definimos la variable independiente---------------------------------------------------------------------------&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
% Definimos las variables dependientes--------------------------------------------------------------------------&lt;br /&gt;
S=zeros(1,N+1);                                            % Susceptibles de ser infectados (primera incógnita)&lt;br /&gt;
I=zeros(1,N+1);                                            % Infectados (segunda incógnita)&lt;br /&gt;
R=zeros(1,N+1);                                            % Removidos (tercera incógnita)&lt;br /&gt;
% Datos iniciales-----------------------------------------------------------------------------------------------&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
% Bucle Euler---------------------------------------------------------------------------------------------------&lt;br /&gt;
for i=1:N&lt;br /&gt;
    S(i+1)=S(i)+h*(S(i)*(-0.0000218)*I(i));                %Euler primera ecuación&lt;br /&gt;
    I(i+1)=I(i)+h*(0.0000218*S(i)*I(i)-0.341*I(i));        %Euler segunda ecuación&lt;br /&gt;
    R(i+1)=R(i)+h*(0.341*I(i));                            %Euler tercera ecuación&lt;br /&gt;
end&lt;br /&gt;
% Gráficas de S, I y R------------------------------------------------------------------------------------------&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,S)&lt;br /&gt;
plot(t,I,'g')&lt;br /&gt;
plot(t,R,'r')&lt;br /&gt;
legend('Variable S','Variable I','Variable R','Location','best')&lt;br /&gt;
hold off&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales1._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_1._Semana_20._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_2._Semana_4._Paso_de_0.1.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:Condiciones_iniciales_2._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_3._Semana_4._Paso_de_0.01.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:Condiciones_iniciales_3._Semana_20._Paso_de_0.001.png|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Para resolver numéricamente el sistema utilizamos el método de Runge-Kutta para distintos valores iniciales de [S0,I0] ([159 985,15],[140 000,20 000],[159 999,1]) y para distintos intervalos de tiempo ([0,4] y [0,20]), con r=0.0000218 y a=0.341.&lt;br /&gt;
&lt;br /&gt;
El código empleado para su cálculo ha sido el siguiente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
clear all&lt;br /&gt;
clf&lt;br /&gt;
% Introducimos las condiciones iniciales&lt;br /&gt;
&lt;br /&gt;
t0=0;&lt;br /&gt;
tN=input('introduce la semana');&lt;br /&gt;
h=input('introduce el paso');&lt;br /&gt;
t=t0:h:tN;&lt;br /&gt;
S0=input('introduce los susceptibles iniciales');&lt;br /&gt;
R0=0;&lt;br /&gt;
I0=input('introduce el numero de infectados iniciales');&lt;br /&gt;
I=zeros(1,length(t));&lt;br /&gt;
R=zeros(1,length(t));&lt;br /&gt;
S=zeros(1,length(t));&lt;br /&gt;
I(1)=I0;&lt;br /&gt;
S(1)=S0;&lt;br /&gt;
R(1)=R0;&lt;br /&gt;
&lt;br /&gt;
%datos&lt;br /&gt;
a=0.341;&lt;br /&gt;
r=0.0000218;&lt;br /&gt;
&lt;br /&gt;
% Runge-Kutta de orden 4 &lt;br /&gt;
&lt;br /&gt;
for n=1:length(t)-1&lt;br /&gt;
&lt;br /&gt;
%primer término del runge-kutta del sistema&lt;br /&gt;
K1s=-r*S(n)*I(n);&lt;br /&gt;
K1i=r*S(n)*I(n)-a*I(n);&lt;br /&gt;
K1r=a*I(n);&lt;br /&gt;
&lt;br /&gt;
%segundo término del runge-kutta del sistema&lt;br /&gt;
K2s=-r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i);&lt;br /&gt;
K2i=r*(S(n)+h/2*K1s)*(I(n)+h/2*K1i)-a*(I(n)+h/2*K1i);&lt;br /&gt;
K2r=a*(I(n)+h/2*K1i);&lt;br /&gt;
&lt;br /&gt;
%tercer término del runge-kutta del sistema&lt;br /&gt;
K3s=-r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i);&lt;br /&gt;
K3i=r*(S(n)+h/2*K2s)*(I(n)+h/2*K2i)-a*(I(n)+h/2*K2i);&lt;br /&gt;
K3r=a*(I(n)+h/2*K2i);&lt;br /&gt;
&lt;br /&gt;
%cuarto término del runge-kutta del sistema&lt;br /&gt;
K4s=-r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i);&lt;br /&gt;
K4i=r*(S(n)+h/2*K3s)*(I(n)+h/2*K3i)-a*(I(n)+h/2*K3i);&lt;br /&gt;
K4r=a*(I(n)+h/2*K3i);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
S(n+1)=S(n)+h/6*(K1s+2*K2s+2*K3s+K4s);&lt;br /&gt;
I(n+1)=I(n)+h/6*(K1i+2*K2i+2*K3i+K4i);&lt;br /&gt;
R(n+1)=R(n)+h/6*(K1r+2*K2r+2*K3r+K4r);&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,S,'g','Linewidth',3)&lt;br /&gt;
hold on&lt;br /&gt;
plot(t,I,'Linewidth',3)&lt;br /&gt;
hold on &lt;br /&gt;
plot(t,R,'r','Linewidth',3)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png|thumb|600px|left|Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 1 hasta la semana 20 con un paso de 0.01]]  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 2, hasta la semana 4, con un paso de 0.1]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 2, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 4, con un paso de 0.01]] || [[Archivo:|thumb|600px|left|Condiciones iniciales 3, hasta la semana 20, con un paso de 0.001]] &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Interpretación de la epidemia==&lt;br /&gt;
&lt;br /&gt;
==Trayectorias en el triángulo (0,0)-(0,N)-(N,0) ==&lt;br /&gt;
&lt;br /&gt;
==Número máximo de infectados en el primer caso del apartado 3 ==&lt;br /&gt;
Para el primer caso del apartado 2.3 (S0=159 985, I0=15, r=0.0000218, a=0.341), si calculamos analíticamente el número de infectados máximos, tanto para 4 semanas de estudio como para 20, resulta ser:&lt;br /&gt;
&lt;br /&gt;
I(máx) = N - rho + rho * ln (rho / S0) = S0 - a/r + a/r * ln (a / (S0*r)) = 159 985 - 15 642'2 + 15 642'2 * ln (15 642'2 / 159 985) = 107 988'0008 infectados&lt;br /&gt;
&lt;br /&gt;
Y para calcularlo numéricamente, hemos empleado el programa usado en el apartado 2.3 añadiendo solamente:&lt;br /&gt;
{{matlab|codigo=&lt;br /&gt;
format long e&lt;br /&gt;
Imax=max(I)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Y nos da un valor de Imax para los pasos h = 0.1, 0.01 y 0.001 siguientes:&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08520960052860e+005 = 108 521 infectados para h = 0.1&lt;br /&gt;
&lt;br /&gt;
Imax = 1.08041178514538e+005 = 108 041 infectados para h = 0.01&lt;br /&gt;
&lt;br /&gt;
Imax = 1.07993269666941e+005 = 107 993 infectados para h = 0.001 &lt;br /&gt;
&lt;br /&gt;
Como se puede comprobar, cuanto menor es el paso usado menor es el error del método numérico frente al analítico.&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	<entry>
		<id>https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png&amp;diff=28576</id>
		<title>Archivo:Condiciones iniciales 1. Semana 4. Paso 0.1.png</title>
		<link rel="alternate" type="text/html" href="https://mat.caminos.upm.es/w/index.php?title=Archivo:Condiciones_iniciales_1._Semana_4._Paso_0.1.png&amp;diff=28576"/>
				<updated>2015-03-06T17:33:04Z</updated>
		
		<summary type="html">&lt;p&gt;Rocio santos: Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Condiciones iniciales 1, hasta la semana 4, con un paso de 0.1&lt;/div&gt;</summary>
		<author><name>Rocio santos</name></author>	</entry>

	</feed>