function bolgeanimering3

clear all;
% Velg a = b = 1.0 for ren monokromatisk bølge
% Velg a = 1.25 for å få to ulike frekvenser, og:
% 1) b = 1.25 for ingen dispersjon
% 2) b = 1.50 for anomal dispersjon
% 3) b = 1.15 for normal dispersjon
a = 1.25;
b = 1.50;
k1 = 8;
k2 = 8*a;
w1 = 8;
w2 = 8*b;
N = 400;
x = linspace(0,20,N);
y = linspace(0,20,N);   % Dummy innhold foreløpig

% Plotter sammensatt kurve sammen med omhyllingskurvens forløp
t = 0.0;
for i = 1:N
    y(i) = sin(k1*x(i)-w1*t) + sin(k2*x(i)-w2*t);
    conv(i) = 2*cos(((k2-k1)/2)*x(i) - ((w2-w1)/2)*t);
end;
plot(x,y,'-b');
hold on;
plot(x,conv,'.r');
xlabel('Posisjon (vilkårlig enhet)');
ylabel('Amplitude (vilkårlig enhet)');
figure;

% Her følger så animeringen av hvordan bølgen utvikler seg med tiden
p = plot(x,y,'-','EraseMode','xor'); 
axis([0 20 -2.5 2.5])
hold on
for i=1:200
    t = i*0.1;
    for j = 1:N
        %y(j) = sin(k1*x(j)-w1*t);
        y(j) = sin(k1*x(j)-w1*t) + sin(k2*x(j)-w2*t);
    end;
    set(p,'XData',x,'YData',y) 
    drawnow
    wkmean = (w1+w2)/(k1+k2);
    wkdelta = (w2-w1)/(k2-k1);
    plot(t*wkmean,2.3,'.r')  % Plotter rød stav for å vise fasehastigheten 
    plot(t*wkdelta,-2.3,'.g');  % Ploter grønn stav for gruppehastighet
    pause(0.15);  % Forsinker fremvisningen av bølgen (juster denne for din pc)
end