% Power estimation on discrete signals function [y,yf] = smhs(x,Nw1,Nw2,yi) N = length(x); y = zeros(1,N); x = abs(x); if (x(1) > yi) y(1) = (1-1/Nw1)*yi + (1/Nw1)*x(1); else y(1) = (1-1/Nw2)*yi + (1/Nw2)*x(1); end; for n = 2:N, if (x(n) > y(n-1)) y(n) = (1-1/Nw1)*y(n-1) + (1/Nw1)*x(n); else y(n) = (1-1/Nw2)*y(n-1) + (1/Nw2)*x(n); end; end; yf = y(N);