function en=MyApen_new(s,m1,r)

%--------------------------------------------------------
% Входящие параметры
% s- входной ряд
% m1 - длинна подстроки (окна)
% r - критерий подобности
%--------------------------------------------------------

n=length(s);
m=m1+1;
c=zeros(m,4);
for i=1:m
    c(i,1)=(n-i+1)^2;
end;
en=zeros(1,m1);
matr=zeros(n-1,n-1);

for i=1:n-1
for j=i+1:n
    p=s(i)-s(j);
    if abs(p)>=r
            if i<=m
                for k=1:i
                    matr(j-i+k-1,k)=1;
                end;
            else
                for k=1:m
                    matr(j-m+k-1,i-m+k)=1;
                end;
            end;
    end;
end;
if i<=m
    for k=1:i
        [number]=count(n-i+k-1,k,matr);
        c(i-k+1,2)=c(i-k+1,2)+number;
    end;
else
    for k=1:m
        [number]=count(n-m+k-1,i-m+k,matr);
        c(m-k+1,2)=c(m-k+1,2)+number;
    end;
end;
end;

for i=1:m
    c(i,2)=c(i,2)*2;
    c(i,3)=c(i,1)-c(i,2);
    c(i,4)=c(i,3)/c(i,1);
end;
for i=1:m-1
    en(i)=log(c(i,4)/c(i+1,4));
end;

function number=count(ryadok,stolbec,matrica)
number=0;
for i=stolbec:ryadok
    if matrica(i,stolbec)==1
        number=number+1;
    end;
end;