signintermittency.m

来自「一种新的时频分析方法的matlab源程序。」· M 代码 · 共 19 行

M
19
字号
function y=signIntermittency(x,maxConsec)
% y = signIntermittency(x,maxConsec) - remove consecutive signs greater than max
%  by Kenneth Arnold <ken@arnoldnet.net>

y=x;
x=sign(x);

curSign = x(1);
signStart = 1;
for i=2:max(size(x))
    if x(i) ~= curSign
        if signStart ~= 1 & curSign ~= 0 & i-signStart >= maxConsec
            y(signStart:i) = 0;
        end
        curSign = x(i);
        signStart = i;
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?