[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r5712 - gnuradio/branches/features/ofdm/sync/gnuradio-
From: |
trondeau |
Subject: |
[Commit-gnuradio] r5712 - gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm |
Date: |
Wed, 6 Jun 2007 13:13:57 -0600 (MDT) |
Author: trondeau
Date: 2007-06-06 13:13:57 -0600 (Wed, 06 Jun 2007)
New Revision: 5712
Added:
gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm/plot_ofdm.m
Log:
adding matlab file for ofdm analysis
Added:
gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm/plot_ofdm.m
===================================================================
---
gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm/plot_ofdm.m
(rev 0)
+++
gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm/plot_ofdm.m
2007-06-06 19:13:57 UTC (rev 5712)
@@ -0,0 +1,110 @@
+theta_pn = read_float_binary('ofdm_sync_pn-theta_f.dat');
+angle_pn = read_float_binary('ofdm_sync_pn-epsilon_f.dat');
+anglesh_pn = read_float_binary('ofdm_sync_pn-sample_and_hold_f.dat');
+plot(theta_pn, 'k')
+
+theta_pnac = read_float_binary('ofdm_sync_pnac-theta_f.dat');
+angle_pnac = read_float_binary('ofdm_sync_pnac-angle_f.dat');
+plot(theta_pnac)
+
+
+plot(theta_pn, 'b-')
+plot(angle_pn+0.5, 'y*')
+plot(anglesh_pn+0.5, 'g*')
+ylim([-0, 1.1])
+xlim([0, 10000])
+hold on
+plot(theta_ml+1, 'g')
+hold off
+
+
+mf = read_float_binary('ofdm_sync_pn-mf_f.dat');
+theta_pn = read_float_binary('ofdm_sync_pn-theta_f.dat');
+peaks_pn = read_char_binary('ofdm_sync_pn-peaks_b.dat');
+regen_pn = read_char_binary('ofdm_sync_pn-regen_b.dat');
+plot(mf, 'k')
+hold
+plot(theta_pn, 'g');
+plot(peaks_pn, 'r');
+plot(regen_pn, 'b');
+xlim([100, 50000]);
+ylim([0, 1])
+i = find(peaks_pn);
+i(100:200)
+hold off
+
+
+regen_pn = read_char_binary('ofdm_sync_pn-regen_b.dat');
+peaks_ml = read_char_binary('ofdm_sync_ml-peaks_b.dat');
+plot(regen_pn, 'b')
+hold
+plot(peaks_ml, 'r-.');
+xlim([7300, 17000]);
+ylim([0, 1])
+hold off
+
+
+
+
+ofdm_tx = read_complex_binary('txpath.dat');
+figure
+plot(real(ofdm_tx));
+hold on
+plot(imag(ofdm_tx), 'r');
+hold off
+
+peaks = read_char_binary('peaks_b.dat');
+ipeaks = find(peaks);
+dpeaks = diff(ipeaks);
+hist(dpeaks, 100)
+set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+
+pll = read_char_binary('dpll_b.dat');
+ipll = find(pll);
+dpll = diff(ipll);
+hist(dpll, 100)
+set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+
+
+fft_size = 128;
+occ_tones = 100;
+
+ofdm = read_complex_binary('ofdm_corr_out_c.dat');
+ofdm_split = split_vect(ofdm, occ_tones);
+
+fftc = read_complex_binary('fft_out_c.dat');
+fftc_split = split_vect(fftc, fft_size);
+
+figure(1)
+
+for i = 1:20000
+ x = ofdm_split(i,:);
+ y = fftc_split(i,:);
+
+ subplot(4,1,1)
+ plot(real(x), imag(x), 'bo')
+ set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+ axis([-1.5, 1.5, -1.5, 1.5])
+
+ subplot(4,1,2)
+ plot(angle(x*j), 'bo')
+ set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+ axis([0, occ_tones, -3.5, 3.5])
+
+ subplot(4,1,3)
+ plot(angle(y*j), 'bo')
+ set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+ axis([0, fft_size, -3.5, 3.5])
+
+ subplot(4,1,4)
+ plot(abs(y), 'b-')
+ set(gca, 'FontSize', 30, 'FontWeight', 'Bold');
+ xlim([0, fft_size])
+
+ % N = 20*log10(var(abs(x)-1))
+
+ disp(sprintf('Symbol Number: %d\n', i))
+ disp(sprintf('\tFreq Error: %f\n', anglesh_pn(1+(i-1)*fft_size)))
+ pause
+
+end
Property changes on:
gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm/plot_ofdm.m
___________________________________________________________________
Name: svn:executable
+ *
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r5712 - gnuradio/branches/features/ofdm/sync/gnuradio-examples/python/ofdm,
trondeau <=