Skip to content
Snippets Groups Projects
Unverified Commit 5673aa64 authored by Martin Lehoux's avatar Martin Lehoux
Browse files

Merge branch 'master' of gitlab.viarezo.fr:kagamino/dynamique-populations

parents 80921d51 7c4c24fc
Branches
No related tags found
No related merge requests found
...@@ -140,16 +140,20 @@ Voici comment sont déterminés les paramètres ($||x||$ correspond à la valeur ...@@ -140,16 +140,20 @@ Voici comment sont déterminés les paramètres ($||x||$ correspond à la valeur
\newpage \newpage
\subsection{Premier modèle d'évolution : SIR} \subsection{Premier modèle d'évolution : SIR}
Voici les différentes équations régissant l'évolution pas à pas du système (tout d'abord sans l'incubation): Le modéle SIR est le modéle fondamental dans l'étude compartimental en épidémiologie\cite{sir-model}.
Voici les différentes équations régissant l'évolution pas à pas du système (tout d'abord sans incubation):
\begin{itemize} \begin{itemize}
\item $s_{k+1} = (-death_{nat}-p.\frac{i_k}{s_k+i_k+r_k})s_k + loss.r_k + birth(s_k+i_k+r_k)$ \item $s_{k+1} = (-death_{nat}-p.\frac{i_k}{s_k+i_k+r_k})s_k + loss.r_k + birth(s_k+i_k+r_k)$
\item $i_{k+1} = p.\frac{i_k}{s_k+i_k+r_k}.s_k + (-death_{ill}-R)i_k$ \item $i_{k+1} = p.\frac{i_k}{s_k+i_k+r_k}.s_k + (-death_{ill}-R)i_k$
\item $r_{k+1} = vacc_{rate}.s_k + R.i_k + (1-death_{nat}-loss)r_k$ \item $r_{k+1} = vacc_{rate}.s_k + R.i_k + (1-death_{nat}-loss)r_k$
\end{itemize} \end{itemize}
% En particulier, le terme $p.\frac{i_k}{s_k+i_k+r_k}.s_k$ correspond à la transmission de la maladie. Il est important de noter qu'il dépend à la fois du nombre
% de personnes susceptibles, mais aussi de la proportion de personnes infectées parmis la population. Cela pose un problème car ce terme rend le système non-linéaire. En particulier, le terme $p.\frac{i_k}{s_k+i_k+r_k}.s_k$ correspond à la transmission de la maladie. Il est important de noter qu'il dépend à la fois du nombre
Le terme $s_k.(1-\frac{\gamma.p}{N})^I$ représente la transmission du virus. de personnes susceptibles, mais aussi de la proportion de personnes infectées parmis la population. Cela pose un problème car ce terme rend le système non-linéaire.
Voici comment obtenir cette formule :
Dans la recherche d'une modélisation plus proche de la réalité, nous avons pensé à une autre formule concernant la transmission du virus.
On procéde ainsi :
\begin{itemize} \begin{itemize}
\item Un individu infecté effectue $\gamma$ contacts par jour, donc seule une proportion $p$ est susceptible de transùettre la maladie. \item Un individu infecté effectue $\gamma$ contacts par jour, donc seule une proportion $p$ est susceptible de transùettre la maladie.
\item Parmis ces contacts, seuls $\frac{S}{N}$ atteignent des personnes saines. On a donc $\frac{\gamma.p.S}{N}$ transmissions par individu infecté. \item Parmis ces contacts, seuls $\frac{S}{N}$ atteignent des personnes saines. On a donc $\frac{\gamma.p.S}{N}$ transmissions par individu infecté.
...@@ -158,6 +162,12 @@ Voici comment obtenir cette formule : ...@@ -158,6 +162,12 @@ Voici comment obtenir cette formule :
\item Enfin, on a donc $S.P^{i_k}$ personnes saines qui sont infectées à chaque pas. \item Enfin, on a donc $S.P^{i_k}$ personnes saines qui sont infectées à chaque pas.
\end{itemize} \end{itemize}
Le terme $s_k.(1-\frac{\gamma.p}{N})^I$ représente donc la transmission du virus.
On a alors :
\begin{itemize}
\item $s_{k+1} = (-death_{nat}-(1-\frac{\gamma.p}{N})^I)s_k + loss.r_k + birth(s_k+i_k+r_k)$
\end{itemize}
\newpage \newpage
\subsection{Second modèle d'évolution : SEIR} \subsection{Second modèle d'évolution : SEIR}
On peut ensuite introduire dans notre modèle le phénomène d'incubation. Pour cela, on doit utiliser des variables stockant les personnes à différents stades de On peut ensuite introduire dans notre modèle le phénomène d'incubation. Pour cela, on doit utiliser des variables stockant les personnes à différents stades de
......
Figures/base_infection_first_result.png

43 KiB

...@@ -18,7 +18,7 @@ coeffs.QuarantineRate = 0; ...@@ -18,7 +18,7 @@ coeffs.QuarantineRate = 0;
VaccinationVector = build_vacc_rate(0, 0, 0, N); VaccinationVector = build_vacc_rate(0, 0, 0, N);
% VaccinationVector = build_vacc_rate(0, 0, 50, N); % VaccinationVector = build_vacc_rate(0, 0, 50, N);
m = model(S, I, Q, R, 1, N); m = model(S, I, Q, R, 0, N);
t = 1:N; t = 1:N;
......
...@@ -12,9 +12,9 @@ for i=6:length(X) ...@@ -12,9 +12,9 @@ for i=6:length(X)
end end
if length(X) > 4 if length(X) > 4
infection = S * (1 - 25 * options.InfectionRate / N) ^ I; % infection = S * (1 - 25 * options.InfectionRate / N) ^ I;
% infecter = sum(X(5:length(X)) + I); infecter = sum(X(5:length(X)) + I);
% infection = options.InfectionRate * S * infecter/N; infection = options.InfectionRate * S * infecter/N;
new_waiting(1) = infection; new_waiting(1) = infection;
dS = -infection; dS = -infection;
dI = X(length(X)); dI = X(length(X));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment