close all
clear all
clc

fvz = 200;
orig = load ('otevreni_zavreni.txt');
celk = orig(1:24808,2);
N = length(celk);

t = 0:1/fvz:(N-1)/fvz;
f = 1/N:fvz/N:fvz;

figure(1);
plot(t,celk);
title('otevreni,zavreni oci celkovy EEG');
xlabel('t[s]'); ylabel('Napeti[uV]');


b = fir1(301,[49*2/fvz 51*2/fvz],'stop');   %odfiltrovani 50Hz
celk = filter(b,1,celk);
clear b;

for m = 151:1:N                               %zpetne posunuti signalu po filtraci
    celk(m-150) = celk(m);
end

dd = fft(celk);
dd(1,1) = 0;

figure,
plot(f,abs(dd))
title('Spektrum naměřeného signálu po odfiltrování 50Hz');
xlabel('frekvence[Hz]'); ylabel('Sf[-]');

%alfa
alfa = zeros(N,1);
alfa(8*200:13*200,1) = 1;
alfa(N-13*200:N-8*200,1) = 1;

alfa = dd.*alfa;

figure,
plot(f,abs(alfa))
title('nulování pomocí spektrálních čar');
xlabel('frekvence[Hz]'); ylabel('[-]');
yy = ifft(alfa);

figure,
plot(real(yy(1:100,1)))
title('vyfiltrovaná alfa vlna');
xlabel('n[-]'); ylabel('napětí[uV]');

%beta


beta = zeros(N,1);
beta(15*200:20*200,1) = 1;
beta(N-20*200:N-15*200,1) = 1;

beta = dd.*beta;

figure,
plot(f,abs(beta))
title('nulování pomocí spektrálních čar');
xlabel('frekvence[Hz]'); ylabel('[-]');
xx = ifft(beta);

figure,
plot(real(xx(1:100,1)))
title('vyfiltrovaná beta vlna');
xlabel('n[-]'); ylabel('napětí[uV]');

% delta

delta = zeros(N,1);
delta(1*200:4*200,1) = 1;
delta(N-4*200:N-1*200,1) = 1;

delta = dd.*delta;

figure,
plot(f,abs(delta))
title('nulování pomocí spektrálních čar');
xlabel('frekvence[Hz]'); ylabel('[-]');
zz = ifft(delta);

figure,
plot(real(zz(1:100,1)))
title('vyfiltrovaná delta vlna');
xlabel('n[-]'); ylabel('napětí[uV]');

% theta

theta = zeros(N,1);
theta(4*200:7*200,1) = 1;
theta(N-7*200:N-4*200,1) = 1;

theta = dd.*theta;

figure,
plot(f,abs(theta))
title('nulování pomocí spektrálních čar');
xlabel('frekvence[Hz]'); ylabel('[-]');
aa = ifft(theta);

figure,
plot(real(aa(1:100,1)))
title('vyfiltrovaná theta vlna');
xlabel('n[-]'); ylabel('napětí[uV]');

% gama

gama = zeros(N,1);
gama(22*200:30*200,1) = 1;
gama(N-30*200:N-22*200,1) = 1;

gama = dd.*gama;

figure,
plot(f,abs(gama))
title('nulování pomocí spektrálních čar');
xlabel('frekvence[Hz]'); ylabel('[-]');
bb = ifft(gama);

figure,
plot(real(bb(1:100,1)))
title('vyfiltrovaná gama vlna');
xlabel('n[-]'); ylabel('napětí[uV]');

