资源简介
ceemd分解信号,得到imf分量,然后在按照你自己的想法做你,可以运行,请好评,缺积分,谢谢。

代码片段和文件信息
% Y: Inputted data;
% Nstd: ratio of the standard deviation of the added noise and that of Y;
% NE: Ensemble member being used
% TNM: total number of modes (not including the trend)
%
function allmode=ceemd(YNstdNETNM)
% find data length
xsize=length(Y);
dd=1:1:xsize;
% Nornaliz data
Ystd=std(Y);
Y=Y/Ystd;
% Initialize saved data
TNM2=TNM+2;
for kk=1:1:TNM2
for ii=1:1:xsize
allmode(iikk)=0.0;
end
end
for iii=1:1:NE
% adding noise
for i=1:xsize
temp=randn(11)*Nstd;
X1(i)=Y(i)+temp;
X2(i)=Y(i)-temp;
end
% sifting X1
xorigin = X1;
xend = xorigin;
% save the initial data into the first column
for jj=1:1:xsize
mode(jj1) = xorigin(jj);
end
nmode = 1;
while nmode <= TNM
xstart = xend;
iter = 1;
while iter<=5
[spmax spmin flag]=extrema(xstart);
upper= spline(spmax(:1)spmax(:2)dd);
lower= spline(spmin(:1)spmin(:2)dd);
mean_ul = (upper + lower)/2;
xstart = xstart - mean_ul;
iter = iter +1;
end
xend = xend - xstart;
nmode=nmode+1;
% save a mode
for jj=1:1:xsize
mode(jjnmode) = xstart(jj);
end
end
% save the trend
for jj=1:1:xsize
mode(jjnmode+1)=xend(jj);
end
% add mode to the sum of modes from earlier ensemble members
allmode=allmode+mode;
%%%=============================================================
% sifting X2
xorigin = X2;
xend = xorigin;
% save the initial data into the first column
for jj=1:1:xsize
mode(jj1) = xorigin(jj);
end
nmode = 1;
while nmode <= TNM
xstart = xend;
iter = 1;
while iter<=5
[spmax spmin flag]=extrema(xstart);
upper= spline(spmax(:1)spmax(:2)dd);
lower= spline(spmin(:1)spmin(:2)dd);
mean_ul = (upper + lower)/2;
xstart = xstart - mean_ul;
iter = iter +1;
end
xend = xend - xstart;
nmode=nmode+1;
% save a mode
for jj=1:1:xsize
mode(jjnmode) = xstart(jj);
end
end
% save the trend
for jj=1:1:xsize
mode(jjnmode+1)=xend(jj);
end
% add mode to the sum of modes from earlier ensemble members
allmode=allmode+mode;
%fprintf(‘-‘);
end
% ensemble average
allmode=allmode/NE/2;
% Rescale mode to origional unit.
allmode=allmode*Ystd;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 492624 2018-05-21 16:17 ceemd分解\Ain.mat
文件 578563 2018-05-22 20:27 ceemd分解\Bin.mat
文件 2603 2014-04-01 21:11 ceemd分解\ceemd.m
文件 2180 2011-10-21 09:02 ceemd分解\extrema.m
文件 929 2018-10-15 10:26 ceemd分解\fenjie.m
目录 0 2018-10-15 10:26 ceemd分解
----------- --------- ---------- ----- ----
1076899 6
相关资源
- 编程实现二维DCT变换
- 图像二值化
- 用FFT对信号进行频谱分析
- Tone-Reservation
- QGA 量子遗传算法
- 差分形式的阻滞增长模型
- 遗传算法的M文件
- 简单二阶互联系统的非线性动力学分
- 手写数字识别-模板匹配法
- Stock_Watson_动态因子分析模型
- 果蝇优化算法优化支持向量回归程序
- 自己做的一个简单GUI扑克纸牌识别-
- multi output SVR
- AR过程的线性建模过程与各种功率谱估
- PCNN TOOLBOX
- plstoolbox.zip
- 中国国家基础地理信息系统GIS数据
- 粒子群微电网优化调度
- 矩阵分析-经典教材-中文版-Roger.A.Ho
- 压缩感知TwIST
- 基于最小错误率的贝叶斯手写数字分
- 最全系统辨识源代码,包括多种最小
- 导弹制导实验
- 画跟踪精确度图的程序.zip
- 重力场大地水准面及重力异常阶次误
- prtools5.2.3工具包
- 脉冲耦合神经网络工具箱PCNN-toolbox
- SVM算法-回归拟合程序.zip
- Kriging代理模型EGO算法.zip
- Matalb实现停车场完整系统
评论
共有 条评论