function [ Se SO PO Chyba ] = PST( z, k, N, QRSb_shluk, QRSe_shluk, Pbg,  Pend, Tend)
% Statistické zhodnocení. Vypočítá průměrnou a směrodatnou odchylku,
% vytvoří histogramy odchylek a graf odchylek.

    load poziceEKGvCSE2

    chybaQRSb = []; chybaQRSe = []; Se = []; TP = zeros(1,2);
%% vytvoření chybových vektorů
    for i = z:k
        while any(i == N)
            i = i+1;
        end
    pozice = find(poziceEKGvCSE2(i,1)-50 < Pbg{i,1} & Pbg{i,1} < poziceEKGvCSE2(i,1)+50);
    chybaPbg{i} = Pbg{i,1}(pozice) - poziceEKGvCSE2(i,1);
    pozice = find(poziceEKGvCSE2(i,2)-50 < Pend{i,1} & Pend{i,1} < poziceEKGvCSE2(i,2)+50);
    chybaPend{i} = Pend{i,1}(pozice) - poziceEKGvCSE2(i,2);
    pozice = find(poziceEKGvCSE2(i,3)-50 < QRSb_shluk{i,1} & QRSb_shluk{i,1} < poziceEKGvCSE2(i,3)+50 );
    chybaQRSb{i} = QRSb_shluk{i,1}(pozice) - poziceEKGvCSE2(i,3);
    pozice = find(poziceEKGvCSE2(i,4)-50 < QRSe_shluk{i,1} & QRSe_shluk{i,1} < poziceEKGvCSE2(i,4)+50);
    chybaQRSe{i} = QRSe_shluk{i,1}(pozice) - poziceEKGvCSE2(i,4);
    pozice = find(poziceEKGvCSE2(i,5)-50 < Tend{i,1} & Tend{i,1} < poziceEKGvCSE2(i,5)+50);
    chybaTend{i} = Tend{i,1}(pozice) - poziceEKGvCSE2(i,5);
    end
    N(1) = 2;

    %% Vyřazení signálů
    chybaQRSe{29} = []; % vyřadí signály
    chybaQRSe{48} = [];
    chybaQRSe{120} = [];
    N(2) = 5;

    chybaPbg{10} = [];
    chybaPbg{52} = [];
    chybaPbg{57} = [];
    chybaPbg{89} = [];
    chybaPbg{100} = [];
    chybaPbg{120} = [];
    chybaPbg{54} = [];
    N(3) = 9;

    chybaPend{10} = [];
    chybaPend{57} = [];
    chybaPend{89} = [];
    chybaPend{92} = [];
    chybaPend{93} = [];
    chybaPend{100} = [];
    chybaPend{120} = [];

    chybaPend{54} = [];
    chybaPend{96} = [];
    chybaPend{111} = [];

    N(4) = 12;

    N(5) = 2;

    %% Výpočet chyby
    chybaPbg = cell2mat(chybaPbg);
    chybaPend = cell2mat(chybaPend);
    chybaQRSb = cell2mat(chybaQRSb);
    chybaQRSe = cell2mat(chybaQRSe);
    chybaTend = cell2mat(chybaTend);

    pom = find(abs(chybaPbg)> 25);
    chybaPbg(pom) = [];
    TP(3) = 125-N(3)-length(pom);

    pom = find(abs(chybaPend)>25);
    chybaPend(pom) = [];
    TP(4) = 125-N(4)-length(pom);

    pom= find( abs(chybaQRSb)>= 25);
    chybaQRSb(pom) = [];
    TP(1) = 125-N(1)-length(pom);

    pom= find( abs(chybaQRSe)>= 25);
    chybaQRSe(pom) = [];
    TP(2) = 125-N(2)-length(pom);

    pom= find( abs(chybaTend)>= 25);
    chybaTend(pom) = [];
    TP(5) = 125-N(5)-length(pom);

    for i = 1:5
        Se(i) = TP(i)*100/(125-N(i));
    end

    PO(1) = mean(2*chybaQRSb);                                % mean(chyba)*(1/fvz)*1000
    PO(2) = mean(2*chybaQRSe);                                % mean(chyba)*(1/500)*1000 = mean(2*chyba)  
    PO(3) = mean(2*chybaPbg);
    PO(4) = mean(2*chybaPend);
    PO(5) = mean(2*chybaTend);

    SO(1) = std(2*chybaQRSb);
    SO(2) = std(2*chybaQRSe);
    SO(3) = std(2*chybaPbg);
    SO(4) = std(2*chybaPend);
    SO(5) = std(2*chybaTend);

    Chyba{1} = 2*chybaQRSb;
    Chyba{2} = 2*chybaQRSe;
    Chyba{3} = 2*chybaPbg;
    Chyba{4} = 2*chybaPend;
    Chyba{5} = 2*chybaTend;

%% Zobrazovací část
    disp([' '])
    disp(['- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '])
    disp(sprintf('Senzitivita Pbg    =  %.2f %%',Se(3)))
    disp(sprintf('Senzitivita Pend  =  %.2f %%',Se(4)))
    disp(sprintf('Senzitivita QRSb =  %.2f %%',Se(1)))
    disp(sprintf('Senzitivita QRSe =  %.2f %%',Se(2)))
    disp(sprintf('Senzitivita Tend   =  %.2f %%',Se(5)))
    disp(sprintf('Pbg odchylka      =  %.1f  +-  %.1f ms, N = %d',PO(3),SO(3),(125-N(3))))
    disp(sprintf('Pend odchylka    =  %.1f  +-  %.1f ms, N = %d',PO(4),SO(4),(125-N(4))))
    disp(sprintf('QRSb odchylka   =  %.1f  +-  %.1f ms, N = %d',PO(1),SO(1),(125-N(1))))
    disp(sprintf('QRSe odchylka   =  %.1f  +-  %.1f ms, N = %d',PO(2),SO(2),(125-N(2))))
    disp(sprintf('Tend odchylka     =  %.1f  +-  %.1f ms, N = %d',PO(5),SO(5),(125-N(5))))
    disp('                                 průměrná +- směrodatná odchylka,')
    disp('                                 N = počet analyzovaných signálů')
    disp(['- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - '])

    figure
    subplot(5,1,1)
    plot(Chyba{3})
    title('Křivka chybovosti: Pbg ','fontsize',11);
    axis([0 123 -50 50])
    subplot(5,1,2)
    plot(Chyba{4})
    title('Křivka chybovosti: Pend ','fontsize',11);
    axis([0 123 -50 50])
    subplot(5,1,3)
    plot(Chyba{1})
    title('Křivka chybovosti: QRSb ','fontsize',11);
    axis([0 123 -50 50])
    ylabel('odchylka [ms]')
    subplot(5,1,4)
    plot(Chyba{2})
    title('Křivka chybovosti: QRSe ','fontsize',11);
    axis([0 123 -50 50])
    subplot(5,1,5)
    plot(Chyba{5})
    title('Křivka chybovosti: Tend','fontsize',11);
    axis([0 123 -50 50])
    xlabel('signál [-]')

    figure
    subplot(3,2,1)
    hist(Chyba{3},25)
    xlim([-50 50])
    title('Histogram odchylek Pbg','fontsize',11);
    ylabel('Počet [-]');
    xlabel('Odchylka [ms]');
    subplot(3,2,2)
    hist(Chyba{4},25)
    xlim([-50 50])
    title('Histogram odchylek Pend ','fontsize',11);
    ylabel('Počet [-]');
    xlabel('Odchylka [ms]');
    subplot(3,2,3)
    hist(Chyba{1},25)
    xlim([-50 50])
    title('Histogram odchylek QRSb ','fontsize',11);
    ylabel('Počet [-]');
    xlabel('Odchylka [ms]');
    subplot(3,2,4)
    hist(Chyba{2},25)
    xlim([-50 50])
    title('Histogram odchylek QRSe ','fontsize',11);
    ylabel('Počet [-]');
    xlabel('Odchylka [ms]');
    %subplot(3,2,5,'HorizontalAlignment','center')
    hax = axes('Position',[0.33 0.08 0.33 0.23]);
    hist(hax,Chyba{5},50)
    xlim([-50 50])
    title('Histogram odchylek Tend','fontsize',11);
    ylabel('Počet [-]');
    xlabel('Odchylka [ms]');
end

