Online Dynamic Processing
Simulates an online processor handling a continuous stream of data and topology change events.
Dynamic Stream Processing
from sgwt import DyConvolve
from sgwt import DELAY_USA as L
scales = np.geomspace(0.1, 10.0, 10)
poles = 1.0 / scales
avg_signal_magnitudes = []
with DyConvolve(L, poles) as conv:
for t, f_t, event in get_incoming_data():
if event:
u, v, w = event
conv.addbranch(*event)
print(f"[{t:04d}] EVENT | Topology Update: Edge ({u} <-> {v}) added")
# Compute wavelet coefficients
W = conv.bandpass(f_t)
avg_signal_magnitudes.append(np.mean(np.abs(f_t))) # Record average signal magnitude
if not event: print(f"[{t:04d}] STATUS | Stream processing active")