当前位置:文档之家› 多尺度熵

多尺度熵

%% 求解多尺度熵 Multiscale Entropy
clc
clear all
load X11b.mat s
x=s(1:128,1);
k=0;
t=2;% 尺度因子
N=floor(length(x)/t);
p= 0.20; % p 可以选择 在 0.1~0.25
r=p*std(x)
for i=1:N
for j=1+(i-1)*t:i*t
k=k+x(j);
end
y(i)=k/t;
k=0;
end

%% 求解m=2
m=2;
ph2=0;
num=zeros(N-m+1);
c=zeros(N-m+1);
for i=1:N-m+1
for j=1:N-m+1
if j~=i
d(i,j)=max([abs(y(i+0)-y(j+0)) abs(y(i+1)-y(j+1))]);
end
end
end
for i=1:N-m+1
for j=1:N-m+1
if d(i,j)num(i)=num(i)+1;
end
end
c(i)=num(i)/(N-m);
ph2=ph2+c(i)
end
ph2=ph2/(N-m+1);
%% 求解m=3
m=3;
ph3=0;
num=zeros(N-m+1);
c=zeros(N-m+1);
for i=1:N-m+1
for j=1:N-m+1
if j~=i
d(i,j)=max([abs(y(i+0)-y(j+0)) abs(y(i+1)-y(j+1)) abs(y(i+2)-y(j+2))]);
end
end
end
for i=1:N-m+1
for j=1:N-m+1
if d(i,j)num(i)=num(i)+1;
end
end
c(i)=num(i)/(N-m);
ph3=ph3+c(i);
end
ph3=ph3/(N-m+1);
%% 求得多尺度熵
MSEn=log(ph2/ph3)

相关主题
文本预览
相关文档 最新文档