www.pudn.com > tftb2002toolbox.rar > movpwdph.m
function M=movpwdph(N,Np,typesig);
%MOVPWDPH Influence of a phase-shift on the interferences of the pWVD.
% M=MOVPWDPH(N,Np,TYPESIG) generates the movie frames illustrating the
% influence of a phase-shift between two signals on the interference
% terms of the pseudo Wigner-Ville distribution.
%
% N : number of points for the signal;
% Np : number of snapshots (default : 8)
% TYPESIG : type of signal :
% 'C' : constant frequency modulation (default value) ;
% 'L' : linear frequency modulation ;
% 'S' : sinusoidal frequency modulation.
% M : matrix of movie frames.
%
% Example :
% M=movpwdph(128,8,'S'); movie(M,10);
% O. Lemoine - May 1996.
% Copyright (c) 1996 by CNRS (France).
%
% ------------------- CONFIDENTIAL PROGRAM --------------------
% This program can not be used without the authorization of its
% author(s). For any comment or bug report, please send e-mail to
% f.auger@ieee.org
if nargin<1,
error('At least one argument required');
elseif nargin==1,
typesig='C'; Np=8;
elseif nargin==2,
typesig='C';
end
M = moviein(Np);
typesig=upper(typesig);
if typesig=='C',
for k=1:Np,
sig=fmconst(N,0.2)+fmconst(N,0.3)*exp(j*2*pi*k/Np);
[tfr,t,f]=tfrpwv(sig);
Max=max(max(tfr));V=[0.3 0.5 0.7 0.9]*Max;
contour(t,f,tfr,V);xlabel('Time'); ylabel('Frequency');
title('Pseudo Wigner-Ville distribution');
M(:,k) = getframe;
end
elseif typesig=='L',
for k=1:Np,
sig=fmlin(N,0.1,0.5)+fmlin(N,0,0.4)*exp(j*2*pi*k/Np);
[tfr,t,f]=tfrpwv(sig);
Max=max(max(tfr));V=[0.3 0.5 0.7 0.9]*Max;
contour(t,f,tfr,V);xlabel('Time'); ylabel('Frequency');
title('Pseudo Wigner-Ville distribution');
M(:,k) = getframe;
end
elseif typesig=='S',
for k=1:Np,
sig=fmsin(N,0.2,0.4)+fmsin(N,0.1,0.3)*exp(j*2*pi*k/Np);
[tfr,t,f]=tfrpwv(sig);
Max=max(max(tfr));V=[0.3 0.5 0.7 0.9]*Max;
contour(t,f,tfr,V);xlabel('Time'); ylabel('Frequency');
title('Pseudo Wigner-Ville distribution');
M(:,k) = getframe;
end
else
error('Wrong input parameter for TYPESIG');
end