In [1]:
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
import pathlib
In [2]:
dumps = pathlib.Path('/home/daniel/debian_testing_chroot/tmp/lockin_fsk/')
In [3]:
lock_ins = np.int32(np.arange(0.1, 1, 0.2) * 48000) + 500
lock_span = 500
waveform = np.fromfile(dumps / 'waveform.f32', dtype = 'float32')
plt.figure(figsize = (14, 6), facecolor = 'w')
plt.plot(waveform)
for lock in lock_ins:
plt.figure(figsize = (14, 6), facecolor = 'w')
plt.plot(waveform[lock-lock_span:lock+lock_span])
In [4]:
lock_ins = np.int32(np.arange(0.1, 1, 0.2) * 9600) + 100
lock_span = 100
In [5]:
clock_recovery_out = np.fromfile(dumps / 'clock_recovery_out.f32', dtype = 'float32')
clock_recovery_T_avg = np.fromfile(dumps / 'clock_recovery_T_avg.f32', dtype = 'float32')
fig, ax = plt.subplots(figsize = (14, 6), facecolor = 'w')
ax2 = ax.twinx()
ax2.plot(clock_recovery_T_avg, color = 'C1')
#ax2.set_ylim((4.9,5.1))
ax.plot((clock_recovery_out[1:] * clock_recovery_out[:-1].conj()).real, '.', color = 'C0')
ax.set_ylim((-2, 2))
for lock in lock_ins:
fig, ax = plt.subplots(figsize = (14, 6), facecolor = 'w')
ax2 = ax.twinx()
ax2.plot(clock_recovery_T_avg[lock-lock_span:lock+lock_span], color = 'C1')
#ax2.set_ylim((4.9,5.1))
ax.plot((clock_recovery_out[1:] * clock_recovery_out[:-1].conj()).real[lock-lock_span:lock+lock_span], '.', color = 'C0')
ax.set_ylim((-2, 2))