function [lokMAX, tMAX]= lokMaximum_NOVA (smMNF,tMNF,kutLMA,kut)
% odreðivanje lokalnih maksimuma srednje frekvencije kontrakcije MNF.
% lokMAX= sadrži amplitude lokalnih maksimuma
% tMAX= sadrži vremenske trenutke lokalnih maksimuma

% TsrLMA je broj uzoraka u postupku usrednjavanja, mora biti neparan broj (odd)
% zasad najbolje poklapanje za TsrLMA=501

Adem=abs(hilbert(kut));
meanAdem= Adem-mean(Adem);

% provodimo DVOSTRUKO FILTRIRANJE da ukupno kašnjenje bude NULA
x1= smooth(meanAdem,kutLMA);
x2= smooth(fliplr(x1'),kutLMA);
meanAdem= fliplr(x2');

% srednja vrijednost izglaðenog signala
sr= 0;

% tražimo prvo indekse elemenata koji prolaze kroz srednju vrijednost SR,a
% zatim ukupni broj prolaza dijelimo sa 2 da dobijemo broj kontrakcija
i= [1:length(kut)-1];
mjesto_prolaza= find((meanAdem(i+1)>sr & meanAdem(i)<sr) | (meanAdem(i+1)<sr & meanAdem(i)>sr));
broj_kontrakcija= floor(length(mjesto_prolaza)/2);

MAX= [];
tM= [];

for k=1:2:2*broj_kontrakcija
    
    ind=find(tMNF>mjesto_prolaza(k) & tMNF<mjesto_prolaza(k+1));
    % u IND spremam indekse varijable tMNF koja na mjestima tih indeksa ima
    % vrijednosti vremenske osi i sadrži intervale u kojima traje
    % kontrakcija, vremena su u [ms]
    
    [M, t]= max(smMNF(ind));
    % sa funkcijom "max" dobivam maksimum vrijednosti frekvencije (u ovom
    % sluèaju srednje frekvencije MNF) za vrijeme jedne kontrakcije.
    % preko indeksa IND pristupamo istim onim trenucima kontrakcije koje
    % smo dobili iz varijable tMNF.
    % u varijablu T smo spremili vrijednost indeksa varijable IND na kojoj
    % se nalazi vrijednosti indeka u varijabli tMNF sa pravim vremenskim
    % trenutkom lokalnog maksimuma lokMAX
    MAX{end+1}= M;
    tM{end+1}= tMNF(ind(t));
    
end

% mora se transponirati, inaèe vraæa pogrešku
lokMAX= cell2mat(MAX)';
tMAX= cell2mat(tM)';

%[lokMAX tMAX]= [cell2mat(MAX) cell2mat(tM)];
