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

📄 wigner.m

📁 这是一个基于matlab维纳滤波的m程序
💻 M
字号:
function [F,T,AF]=wigner(x,fs)
N=floor(length(x));Ts=1/fs;
lin=zeros(1,N);
x_he=[lin ,x,lin];
%x_he=x;
x_ge=conj(x_he);

 Js=0;
 while 2^Js<2*N
  Js=Js+1;
  end
fft_num=2^Js;
%N=length(x);

AF=zeros(N,fft_num);%temp=zeros(1,N);
% x_las=zeros(N,2*N);
for n=1:N
for t=0:N-1
%if (i-th>=0)& ( i+th>=0) & ( i+th<=N) & ( i-th<=N)
    %x_las=x;
     %for t=1:N
     x_las1(t+1)=2*x_ge(N+n-t)*x_he(n+t+N);
    % x_las=x_las+x;
    end
   %x_las4=x_las1;
  x_las2=conj(fliplr(x_las1));
  x_las3=[x_las1,x_las2];
   temp=fft(x_las3 ,fft_num);
   temp=fftshift(temp);
   AF(n,:)=temp;

end
%坐标恢复
f_zuobiao=(((1:fft_num)-fft_num/2)/fft_num*fs);
t_zuobiao=((1:N)*Ts);
[F,T]=meshgrid(f_zuobiao,t_zuobiao);
%绘图
subplot(2,2,3);mesh(F,T,real(AF));
subplot(2,2,4);contour(F,T,abs(AF));

⌨️ 快捷键说明

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