Line 10: Line 10:
 
plot(t,x)
 
plot(t,x)
 
</pre>
 
</pre>
 +
 +
It outputs:
 +
 +
[[Image: Ece301_Hw2B_messedUP.jpg _ECE301Fall2008mboutin| Original Plot]]
  
 
This code is wrong because the sampling frequency, Ts, is to large to get an accurate recreation of the
 
This code is wrong because the sampling frequency, Ts, is to large to get an accurate recreation of the
signal. By Nyquist's theorem, the descrete sampling frequency must be twice the continuous frequency in order to avoid unwanted artifacts. In other words Ts=.5*T0.
+
signal. I fixed this bug by reducing the sampling time by a factor of 20-- Ts=.05*T0.
  
 
<pre>
 
<pre>
 
F0 = 13;
 
F0 = 13;
 
T0 = 1/F0;
 
T0 = 1/F0;
Ts = .5*T0;
+
Ts = .05*T0;
 
t  = 0:Ts:13*T0;
 
t  = 0:Ts:13*T0;
 
x  = real(exp(j*(2*pi*F0*t-pi/2)));
 
x  = real(exp(j*(2*pi*F0*t-pi/2)));
 +
 +
Now the output looks like this:
 +
 +
[[Image: Ece301_Hw2B.jpg _ECE301Fall2008mboutin| Fixed Plot]]
 
plot(t,x)
 
plot(t,x)
 
</pre>
 
</pre>
Explain what the bug is, and modify the above code to fix this bug. Post your answer on a Rhea page.
 

Revision as of 08:02, 10 September 2008

This is the original code:


F0 = 13;
T0 = 1/F0;
Ts = 0.07;
t  = 0:Ts:13*T0;
x  = real(exp(j*(2*pi*F0*t-pi/2)));
plot(t,x)

It outputs:

Original Plot

This code is wrong because the sampling frequency, Ts, is to large to get an accurate recreation of the signal. I fixed this bug by reducing the sampling time by a factor of 20-- Ts=.05*T0.

F0 = 13;
T0 = 1/F0;
Ts = .05*T0;
t  = 0:Ts:13*T0;
x  = real(exp(j*(2*pi*F0*t-pi/2)));

Now the output looks like this:

[[Image: Ece301_Hw2B.jpg _ECE301Fall2008mboutin| Fixed Plot]]
plot(t,x)

Alumni Liaison

Correspondence Chess Grandmaster and Purdue Alumni

Prof. Dan Fleetwood