ok, given that linspace, then it looks like waveform_idx = recording_idx * (N * 2 - 1) / (N - 1) so recording_idx = waveform_idx * (N - 1) / (N * 2 - 1) and the max_period is 4 * (4 - 1) / (4 * 2 - 1) = 12 / 7 = N * (N - 1) / (N * 2 - 1) draft saved at 1:34 pm -- i tried using the above to construct index offsets and pass them to sample_sinusoids_funny and then micro_*ft, upsample=True . the first and last sample are correct, but the middle two differ. i now have a system that should be closed, where the sinusoids in question are being directly reprocess. so, i should be able to examine them to find where the discontinuity is, that they aren't. i'm thinking the max_period parameter to micro_*ft could be being interpreted in a way different from how i am using it here. failing that, i can in theory always step through the parts and take notes.