| 查看: 1176 | 回复: 0 | ||
[求助]
请教一下emd程序问题出在哪里,得到的许多都是负频
|
|
我的时间序列n=432,想运用emd分解多个IMF,并求出振幅与频率,但出现很多负频,新手一枚,请各位指点迷津,小女不胜感激。 z= Book1S2; t=(1:1:432); figure plot(t, z) title('原始信号') % EMD imf=emd(z); emd_visu(z,t,imf) [A,f,tt]=hhspectrum(imf); [im,tt]=toimage(A,f,tt,length(tt)); disp_hhs(im); xlabel('时间(月)') ylabel('含沙量'); figure disp_hhs(A,tt) 未定义与 'double' 类型的输入参数相对应的函数 'instfreq'。 出错 hhspectrum (line 79) f(i, =instfreq(an(i, ',tt,l)';z=imf1; >> hx=hilbert(z); xr=real(hx);xi=imag(hx); %计算瞬时振幅 sz=sqrt(xr.^2+xi.^2); %计算瞬时相位 sx=atan(xi./xr);sx=angle(hx); %计算瞬时频率 dt=diff(t); dx=diff(sx); sp=dx./dt; |













=instfreq(an(i,
回复此楼