%9. gyakorlat
% SI rendszer egyenlet utazóhulláma:
dt = 0.1; %idõbeli lépésköz 
dx = 1; %térbeli lépésköz

x = 1:dx:1000; %viszgált pontok az egyenesen
nx = length(x);
tmax=150;
nt = round(tmax/dt); %idõtartomány vége
indv=zeros(nt,1); %sebességhez adatok ide;

c =1; %hulámterjedés sebességei állandó
D=4; %diffúzió sebessége
tau=2; %fertõzési ráta

eta = zeros(nx,1); %a betegek kezdeti értékei
%kezdeti értékek:
eta()=; %kezdeti fertõzöttek a tér elején
eta()=; %kis területrõl indul %fertõzöttek kezdeti értéktõl nem függ a hullámfront 
eta()=; %a kezdeti hulámfronttól se függ a hullám alak
fi=1-eta; %fertõzhetõk kezdeti értékei

figure;
%kezdeti érték rajzol:
plot(1:nx, eta, 'r', 1:nx, fi, 'g', 'LineWidth', 2);
grid(gca, 'minor');
    ylim([-0.2 1.2]);
    xlim([1 1000]);
     title('piros: fertõzött (\eta), zöld: fertõzhetõ (\phi); t=0');
     xlabel('x: 1D tér');
    waitforbuttonpress;
    
for %minden idõpillanatban
    fi_regi=fi; %fi_regi=értékek az elõzõ idõplillanatban; fi=új értékek
    eta_regi = eta; 
    for %minden pontban kiszámolom a hullám aktuális értékét (a széleket külön kell kezelni)
        %kezeljük a peremeket zero flux peremként
        
        % dfi/dt=c*fi*(-tau*eta)+D*dfi^2/dx^2 %fertõzhetõek (S) változása, reakció(-betegedés)+diffúzió  
        % deta/dt=c*eta*(tau*fi-1)+D*deta^2/dx^2 %fertõzöttek (I) változása, reakció(+betegedés-gyógyulás)+diffúzió 
    end
    
    %ábrázol:
    plot(1:nx, eta, 'r', 1:nx, fi, 'g', 'LineWidth', 2);
    grid(gca, 'minor');
    ylim([-0.2 1.2]);
    xlim([1 1000]);
    title(['piros: fertõzött (\eta), zöld: fertõzhetõ (\phi); t=', num2str(t*dt),]);
    xlabel('x: 1D tér');
    %waitforbuttonpress;
     pause(0.01);    
end
