Project 2: Flu Disease Epidemic Population Model This year, the flu epidemic is
ID: 3282415 • Letter: P
Question
Project 2: Flu Disease Epidemic Population Model This year, the flu epidemic is observed to be worse that in previous years. A pharmaceutical company has hired Dr. T's students to test and model the effects of a new flu vaccine. To model the effects of the vaccine, the classes uses numerical techniques to solve the logistic population equation (non-linear) as follows: dp = nP-T2P2 (logistic equation) P-50 initial) Problem: dt Let P(t) represent healthy test subjects who are susceptible to flu at any point in time. Let ri 0.0225 and r20.0003 Population also affected by: Population infected with flu (F): dF F(I)-10% of P( 1 ) o Let s1-0.02875 and s20.0009 Population already infected and cannot be infected again (R): dkR (logisic equation) o Let k-0.0052 R(I)-5% of P(1) Total Healthy Population, Tt), change is the sum of changes resulting from P(t), F(U),-R(t) (i.e. pop change flu -reinfected) Assignment Develop Matlab programs that will numerically solve the DE problem(s) above using the a) Euler method, b) Heun method, and c) Runge-Kutta method for a 600 days period. 2. Analyze the differential equation numerically. Initially set ?1-60 days (then set At-25, and At 5). What is the effect of Ax on the final answer (i.e.t-600 days) for each method? 3. Provide graph in minutes for P(t), Ft), R(t), and T(t) for each method. 4. Summarize your results for Tt) at t-600 days for each method and Ax in a table Deliverable Summary of findings containing a bulleted write-up of the following: 1) 2) 3) 4) Objective of the project Description of methodology and key algorithms Results (contains tables, graphs, etc.) Discussion/Analysis of your work, output and key observations.Explanation / Answer
% MATLAB CODE
%Euler Method:
function [t,P] = eulode(dPdt, tspan, P0, h)
if nargin<4
error('at least 4 input arguments required')
end
ti= tspan(1);
tf = tspan(2);
if ~ (tf>ti)
error('upper limit must be greater than lower limit')
end
t = (ti:h:tf)';
n= length(t);
if t(n)<tf t(n+1) = tf;
n= n+1;
t(n)=tf;
end
P = P0*ones(n,1); %preallocate P to improve efficiency
F0 = 0.1*P0;
F = F0*ones(n,1);
R0 = 0.05*P0;
R = R0*ones(n,1);
for i = 1:n-1 %implementing Euler's Method
P(i+1) = P(i) + dPdt(t(i),P(i))*(t(i+1)-t(i));
F(i+1) = F(i) + dFdt(t(i),F(i))*(t(i+1)-t(i));
R(i+1) = R(i) + dRdt(t(i),R(i))*(t(i+1)-t(i));
T(i+1) = P(i+1)-F(i+1)-R(i+1);
end
plot(t,T)
dPdt=@(t,P) 0.0225*P - 0.0003*P^2 ;
dFdt=@(t,F) 0.02875F - 0.0009*F^2;
dRdt=@(t,R) 0.0052R;
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.