📄 mutual_main3.m
字号:
function tau=mutual_main(data)
%互信息法求tau
c=load('D:/Program Files/MATLAB71/work/gzmbig.txt');
c=c.*0.01;
[thr,sorh,keepapp]=ddencmp('den','wv',c);
data=wdencmp('gbl',c,'db4',2,thr,sorh,keepapp);
maxLags = 100; % 本程序默认最大时延
Part = 128;
[entropy]=mutual(data,100);
for i = 1:length(entropy)-1
if (entropy(i)<=entropy(i+1))
tau = i; % 第一个局部极小值位置
break;
end
end
tau1 = tau -1 % r 的第一个值对应 tau = 0,所以要减 1
a=entropy
subplot(2,2,1)
plot(0:length(entropy)-1,entropy)
xlabel('\tau');
ylabel('II825-工作面平均互信息量')
hold on;
c=load('D:/Program Files/MATLAB71/work/smsmall.txt');
c=c.*0.01;
[thr,sorh,keepapp]=ddencmp('den','wv',c);
data=wdencmp('gbl',c,'db4',2,thr,sorh,keepapp);;%采煤面; % 时间序列,列向量
maxLags = 100; % 本程序默认最大时延
Part = 128;
[entropy]=mutual(data,100);
for i = 1:length(entropy)-1
if (entropy(i)<=entropy(i+1))
tau = i; % 第一个局部极小值位置
break;
end
end
tau2 = tau -1 % r 的第一个值对应 tau = 0,所以要减 1
b=entropy;
subplot(2,2,2)
plot(0:length(entropy)-1,entropy)
xlabel('\tau');
ylabel('II825-4#石门平均互信息量')
hold on;
c=load('D:/Program Files/MATLAB71/work/jhm.txt');
[thr,sorh,keepapp]=ddencmp('den','wv',c);
data=wdencmp('gbl',c,'db4',2,thr,sorh,keepapp);
maxLags = 100; % 本程序默认最大时延
Part = 128;
[entropy]=mutual(data,100);
for i = 1:length(entropy)-1
if (entropy(i)<=entropy(i+1))
tau = i; % 第一个局部极小值位置
break;
end
end
tau3 = tau -1 % r 的第一个值对应 tau = 0,所以要减 1
c=entropy;
subplot(2,2,3)
plot(0:length(entropy)-1,entropy)
xlabel('\tau');
ylabel('II825-2#机巷平均互信息量')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -