资源简介
局部均值分解的MATLAB代码,可以给定函数,可以用实测数据,亲测可用
代码片段和文件信息
clear all;
clc;
% 给定一仿真信号
fs=2000;
N=2048;
n=0:N-1;
t=n/fs;
x=(1+0.5*t).*sin(2*pi.*20*t)+2*cos(2*pi.*3*t);
%绘制仿真信号和其频谱图
figure(1)
subplot(211)
plot(tx)
subplot(212)
y2=x;
L=length(y2);
NFFT = 2^nextpow2(L);
Y = fft(y2NFFT)/L;
f = fs/2*linspace(01NFFT/2);
plot(f2*abs(Y(1:NFFT/2)))
% 局域均值分析
x=x‘;
c = x‘;
N = length(x);
A = ones(1N);
PF = [];
aii = 2*A;
while(1)
si = c;
a = 1;
while(1)
h = si;
maxVec = [];
minVec = [];
% look for max and min point
for i = 2: N - 1
if h (i - 1) < h (i) & h (i) > h (i + 1)
maxVec = [maxVec i];
end
if h (i - 1) > h (i) & h (i) < h (i + 1)
minVec = [minVec i];
end
end
%
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3522 2018-03-18 19:40 LMD,亲测可用\LMD.m
目录 0 2018-03-18 19:40 LMD,亲测可用\
- 上一篇:matlab中动态绘制3D心形曲线
- 下一篇:原汁原味的LMD的matlab程序
评论
共有 条评论