马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
同一个频域积分程序,为什么被积分信号频率改变后,却出现了漂移?
f=10; %把信号频率改成5Hz,
fs=300;
N=512;
n=0:N-1;
x=sin(2*pi*f/fs*n)+0.5;
subplot(211),plot(n/fs,x)
title('要求积分的信号')
grid on
fmin=1; %改成0.5Hz,
fmax=20; %改成10Hz,
nx=length(x);
nfft=2^nextpow2(nx);
df=fs/nfft;
dw=2*pi*df;
w1=0:dw:2*pi*(0.5*fs);
w2=-2*pi*(0.5*fs-df):dw:-dw;
w=[w1,w2];
ni=round(fmin/df+1);
na=round(fmax/df+1);
y=fft(x,nfft);
a=zeros(1,nfft);
a(2:nfft-1)=y(2:nfft-1)./w(2:nfft-1);
a1=imag(a);
a2=real(a);
y1=a1-a2*i;
% 接下来进行频域滤波.
a=zeros(1,nfft);
a(ni:na)=y1(ni:na);
a(nfft-na+1:nfft-ni+1)=y1(nfft-na+1:nfft-ni+1);
y2=ifft(a,nfft);
y3=real(y2(1:N));
subplot(212),plot(n/fs,y3)
title('积分后所得信号')
grid on
就是只改红色标出的部分,却出现积分后信号漂移现象,这是为什么?? |