⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 new.m

📁 硕士课程随机数字信号处理的实验源代码 正弦干扰陷波器
💻 M
字号:
clear
clc
%正弦干扰陷波器
%定义信号长度M,幅度A
M=1000;
n0=1:M;%时间序列
A=5;
N=100;
%生成噪声信号
v=(rand(1,M)-0.5)*2;
%产生正弦信号
s=sin(0.5*(1:M));
Pv=1^2/3;
Ps=10*Pv;
%产生正弦信号
Pss=sum(s.^2)/M;
A=sqrt(Ps/Pss);
s=A*s;
%实现部分
x=s+v;
d=x;
x1=sigshift(x,n0,1); %信号延时
u=1/(10*N*(Ps+Pv)+10);

[w,y]=LMS(x1,d,u,N);
e=x-y;
figure(1)
%绘制v(n),s(n),x(n),e(n)的图形
subplot(3,1,1);plot(n0,s);title('正弦信号s(n)');xlabel('信号长度');ylabel('s(n)');
subplot(3,1,2);plot(n0,v);title('噪声信号v(n)');xlabel('信号长度');ylabel('v(n)');axis([0,length(v),-5,5]);
subplot(3,1,3);plot(n0,x);title('输入信号x(n)');xlabel('信号长度');ylabel('v(n)+s(n)');

%计算H(jw)
E=fft(e);
D=fft(d);
H=E./D;
HH=abs(H);
f=(0:length(H)-1)*2*pi/length(H);

e1=e(N:length(e));
d1=d(N:length(d));
E1=fft(e1);
D1=fft(d1);
H1=abs(E1./D1);
f1=(0:length(H1)-1)*2*pi/length(H1);

e2=e(2*N:length(e));
d2=d(2*N:length(d));
E2=fft(e2);
D2=fft(d2);
H2=abs(E2./D2);
f2=(0:length(H2)-1)*2*pi/length(H2);

figure(2)
%w=(pi/1000)*(0:1999);
subplot(3,1,1);plot(n0,e);title('输出信号');xlabel('信号长度');ylabel('e(n)');
subplot(3,1,2);plot(n0,y);title('单频率信号');xlabel('时间n');ylabel('y(n)');
subplot(3,1,3);plot(n0,abs(e-v));title('误差信号e(n)');xlabel('信号长度');ylabel('e(n)');%axis([0,1000,-5,5]);
figure(3)
subplot(3,1,1);plot(f,HH);title('系统频率响应H(jw)');xlabel('w');ylabel('H(w)');axis([0,pi,0,6]); %length(w)/2(1:length(w))
subplot(3,1,2);plot(f1,H1);title('系统基本稳定后才频率响应');axis([0,pi,0,6]);
subplot(3,1,3);plot(f2,H2);title('稳定后的系统频率响应H(jw)');axis([0,pi,0,6]);
%subplot(2,1,2);plot(R,angle(H));

⌨️ 快捷键说明

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