view dsp/imagspec.m @ 32:c3b0cd708782

Imported core dsp tools.
author samer
date Sun, 20 Jan 2013 13:48:47 +0000
parents
children
line wrap: on
line source
function X=imagspec(A,P)
% IMAGSPEC - convert mag/phase spectrum to wave
%
% imagspec :: [[M+1,L]]~'magnitude', [[M+1,L]]~'phase' -> [[2*M,L]]~'signal'.
% imagspec :: [[M+1,L]]~'magnitude' -> [[2*M,L]]~'signal'.
%
% Second form uses random phases.

n=size(A,1);
if nargin<2,
	% make up random phases
	P=exp(2*i*pi*rand(size(A)));
end
A=[A; A(n-1:-1:2,:)];
phi=[P; conj(P(n-1:-1:2,:))];
X=real(ifft(phi.*A));	% get waveform