From 12eade5d45bb4ef4e41a62a2f59fac89773cef94 Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Thu, 16 Dec 2021 06:24:49 +0100 Subject: Constellation plots --- .../data/flowgraphs/qpsk_channel_dynamic.dat | Bin 0 -> 4845712 bytes .../data/flowgraphs/qpsk_channel_static.dat | Bin 0 -> 6369352 bytes .../data/flowgraphs/qpsk_equalized_dynamic.dat | Bin 0 -> 1211096 bytes .../data/flowgraphs/qpsk_equalized_static.dat | Bin 0 -> 1592008 bytes .../data/flowgraphs/qpsk_locked_dynamic.dat | Bin 0 -> 1211040 bytes .../figures/data/flowgraphs/qpsk_locked_static.dat | Bin 0 -> 1591992 bytes .../figures/data/flowgraphs/qpsk_sync_dynamic.dat | Bin 0 -> 1211096 bytes .../figures/data/flowgraphs/qpsk_sync_static.dat | Bin 0 -> 1592008 bytes .../data/qpsk_sim_constellations_dynamic.py | 32 +++++++++++++++++++++ .../figures/data/qpsk_sim_constellations_static.py | 32 +++++++++++++++++++++ 10 files changed, 64 insertions(+) create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_channel_dynamic.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_channel_static.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_equalized_dynamic.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_equalized_static.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_locked_dynamic.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_locked_static.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_sync_dynamic.dat create mode 100644 doc/thesis/figures/data/flowgraphs/qpsk_sync_static.dat create mode 100644 doc/thesis/figures/data/qpsk_sim_constellations_dynamic.py create mode 100644 doc/thesis/figures/data/qpsk_sim_constellations_static.py (limited to 'doc/thesis/figures/data') diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_channel_dynamic.dat b/doc/thesis/figures/data/flowgraphs/qpsk_channel_dynamic.dat new file mode 100644 index 0000000..560f179 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_channel_dynamic.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_channel_static.dat b/doc/thesis/figures/data/flowgraphs/qpsk_channel_static.dat new file mode 100644 index 0000000..7466d69 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_channel_static.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_equalized_dynamic.dat b/doc/thesis/figures/data/flowgraphs/qpsk_equalized_dynamic.dat new file mode 100644 index 0000000..473c43d Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_equalized_dynamic.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_equalized_static.dat b/doc/thesis/figures/data/flowgraphs/qpsk_equalized_static.dat new file mode 100644 index 0000000..c884795 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_equalized_static.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_locked_dynamic.dat b/doc/thesis/figures/data/flowgraphs/qpsk_locked_dynamic.dat new file mode 100644 index 0000000..92a9b97 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_locked_dynamic.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_locked_static.dat b/doc/thesis/figures/data/flowgraphs/qpsk_locked_static.dat new file mode 100644 index 0000000..1e85803 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_locked_static.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_sync_dynamic.dat b/doc/thesis/figures/data/flowgraphs/qpsk_sync_dynamic.dat new file mode 100644 index 0000000..bc21557 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_sync_dynamic.dat differ diff --git a/doc/thesis/figures/data/flowgraphs/qpsk_sync_static.dat b/doc/thesis/figures/data/flowgraphs/qpsk_sync_static.dat new file mode 100644 index 0000000..cb5ab19 Binary files /dev/null and b/doc/thesis/figures/data/flowgraphs/qpsk_sync_static.dat differ diff --git a/doc/thesis/figures/data/qpsk_sim_constellations_dynamic.py b/doc/thesis/figures/data/qpsk_sim_constellations_dynamic.py new file mode 100644 index 0000000..7e23125 --- /dev/null +++ b/doc/thesis/figures/data/qpsk_sim_constellations_dynamic.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 + +import os +import numpy as np + +DATA_DIR = "./figures/data/flowgraphs" +SPS = 4 + +channel = np.fromfile(f"{DATA_DIR}/qpsk_channel_dynamic.dat", dtype=np.complex64)[::SPS] +sync = np.fromfile(f"{DATA_DIR}/qpsk_sync_dynamic.dat", dtype=np.complex64) +equalized = np.fromfile(f"{DATA_DIR}/qpsk_equalized_dynamic.dat", dtype=np.complex64) +locked = np.fromfile(f"{DATA_DIR}/qpsk_locked_dynamic.dat", dtype=np.complex64) + +samples = [channel, sync, equalized, locked] + +# print(list(map(len, samples))) + +start = 67.8e3 +end = start + 200 + +get_range = lambda arr: arr[int(start):int(end)] +get_parts = lambda v: (np.real(v), np.imag(v)) + +values = map(get_range, samples) +parts = [p for v in map(get_parts, values) for p in v] +data = np.array(list(zip(*parts))) + +# save to file +location = os.path.realpath(os.path.join(os.getcwd(), os.path.dirname(__file__))) +name, _ = os.path.splitext(os.path.basename(__file__)) +filename = os.path.join(location, name + ".dat") +np.savetxt(filename, data, fmt='%.6e') diff --git a/doc/thesis/figures/data/qpsk_sim_constellations_static.py b/doc/thesis/figures/data/qpsk_sim_constellations_static.py new file mode 100644 index 0000000..61fdcb1 --- /dev/null +++ b/doc/thesis/figures/data/qpsk_sim_constellations_static.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python3 + +import os +import numpy as np + +DATA_DIR = "./figures/data/flowgraphs" +SPS = 4 + +channel = np.fromfile(f"{DATA_DIR}/qpsk_channel_static.dat", dtype=np.complex64)[::SPS] +sync = np.fromfile(f"{DATA_DIR}/qpsk_sync_static.dat", dtype=np.complex64) +equalized = np.fromfile(f"{DATA_DIR}/qpsk_equalized_static.dat", dtype=np.complex64) +locked = np.fromfile(f"{DATA_DIR}/qpsk_locked_static.dat", dtype=np.complex64) + +samples = [channel, sync, equalized, locked] + +# print(list(map(len, samples))) + +start = 67.8e3 +end = start + 200 + +get_range = lambda arr: arr[int(start):int(end)] +get_parts = lambda v: (np.real(v), np.imag(v)) + +values = map(get_range, samples) +parts = [p for v in map(get_parts, values) for p in v] +data = np.array(list(zip(*parts))) + +# save to file +location = os.path.realpath(os.path.join(os.getcwd(), os.path.dirname(__file__))) +name, _ = os.path.splitext(os.path.basename(__file__)) +filename = os.path.join(location, name + ".dat") +np.savetxt(filename, data, fmt='%.6e') -- cgit v1.2.1