I noticed that time points seem to be doubled up in the waveforms gathered from simulation and emulation. More specifically, the time-value pairs are (t0, v0), (t1, v0), (t1, v1), (t2, v1), (t2, v2), etc., whereas I think they should be (t0, v0), (t1, v1), (t2, v2), etc. I haven't dug into this to figure out where it is coming from, but just wanted to point out that if the intent was to produce a piecewise-constant waveform, I think it is preferable to do that in plotting and interpolation routines (e.g. matplotlib.pyplot.step or scipy.interpolate.interp1d with the appropriate value for kind). Depending on the signal type, the time-value pairs may represent samples of a piecewise-constant or piecewise-linear waveform (or neither).
I noticed that time points seem to be doubled up in the waveforms gathered from simulation and emulation. More specifically, the time-value pairs are
(t0, v0)
,(t1, v0)
,(t1, v1)
,(t2, v1)
,(t2, v2)
, etc., whereas I think they should be(t0, v0)
,(t1, v1)
,(t2, v2)
, etc. I haven't dug into this to figure out where it is coming from, but just wanted to point out that if the intent was to produce a piecewise-constant waveform, I think it is preferable to do that in plotting and interpolation routines (e.g.matplotlib.pyplot.step
orscipy.interpolate.interp1d
with the appropriate value forkind
). Depending on the signal type, the time-value pairs may represent samples of a piecewise-constant or piecewise-linear waveform (or neither).