The signal $x_a(t) = \cos(2\pi450t)$ is sampled.

F = 450
Fs = 1000 Hz
f = F/Fs = 450/1000   // Sampling theorem is fulfilled
x(n) = cos(2*pi*(450/1000))

The signal is then down sampled with a factor 3.

fNew = f*3 = 450*3/1000 = 1.35
xNew(n) = cos(2*pi*1.35)

Now the signal is prepared. How to make an ideal reconstruction using 1000Hz?


2 Answers 2


If you take your input signal and downsample it by a factor of 3 your original frequency of 450 Hz will be aliased. But since you single contains a single frequency it can be reconstructed.

For example (in MATLAB), let's generate 1024 samples of your signal:

Fs = 1000;
t = (0:1023)/Fs;
xa = cos(2*pi*450*t);
figure; pwelch(xa,[],[],[],Fs);

Spectrum of $x_a$
Now if you down sample your signal you notice that the frequency has changed.

xad = xa(1:3:end);
figure; pwelch(xad,[],[],[],Fs/3)

enter image description here

And if you try to interpolate the signal back to the original sampling frequency, you can see that there is some kind of "ambiguity":

xadu = upsample(xad,3);
figure; pwelch(xadu,[],[],[],Fs);

enter image description here

Also note that the amplitude is lower (by a factor of 3 actually).
All there is left is to filter the signal using a high-pass filter:

h = fir1(32,350/500,'high');
xaduf = filter(3*h,1,xadu);
xar = xaduf(37:end);

The signal can not be reconstructed because in the new sampled signal the sampling theorem is violated. Aliasing would occur and the signal reconstructed would be a lower frequency than the original signal.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.