aboutsummaryrefslogtreecommitdiffstats
path: root/doc/thesis/figures/data/qam_hw_lab.py
diff options
context:
space:
mode:
authorNao Pross <np@0hm.ch>2021-12-20 22:57:10 +0100
committerNao Pross <np@0hm.ch>2021-12-20 22:57:10 +0100
commit57cac49a0b3b0378245f02903d6bfdeaf58980da (patch)
treee69d6fc1f093f43341cb1de0543abfe32ca312e0 /doc/thesis/figures/data/qam_hw_lab.py
parentRemove old comments, add missing citation (diff)
downloadFading-57cac49a0b3b0378245f02903d6bfdeaf58980da.tar.gz
Fading-57cac49a0b3b0378245f02903d6bfdeaf58980da.zip
Add data and flowgraph for (broken) QAM on hardware
Diffstat (limited to '')
-rw-r--r--doc/thesis/figures/data/qam_hw_lab.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/doc/thesis/figures/data/qam_hw_lab.py b/doc/thesis/figures/data/qam_hw_lab.py
new file mode 100644
index 0000000..d49cfd1
--- /dev/null
+++ b/doc/thesis/figures/data/qam_hw_lab.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+
+import utils
+import numpy as np
+
+# get array of samples [channel, synchronized, equalized, locked]
+samples = utils.load_samples(__file__)
+
+# range of samples we want to show
+start = 20e3
+end = start +400
+
+# select every second samples
+select_samples = lambda arr: arr[int(start):int(end):6]
+values = map(select_samples, samples)
+
+# split into imaginary and real parts
+get_parts = lambda v: (np.real(v), np.imag(v))
+parts = [p for v in map(get_parts, values) for p in v]
+
+# zip data and add header
+data = np.array(list(zip(*parts)))
+headers = [
+ "channel_re", "channel_im",
+ "synchronized_re", "synchronized_im",
+ "equalized_re", "equalized_im",
+ "locked_re", "locked_im"
+]
+
+# save to file
+utils.save_to_file(__file__, data, headers)