Join GitHub today
Proof of concept: Using scipy instead evalresp #1718
Based on the discussion in #1493 it came to me that it would be almost trivial to replace evalresp completely with scipy. I don't know why I did not think of this before. Much simpler than our current wrapping of evalresp.
This PR does this for the PAZ, decimation, and coefficient response stages which are the most common and it also handles the final assembly and sensitivity calculations so it can already do quite a lot of responses. The rest is quite easy to add.
Of course this needs a lot more testing so I'd personally not include this in the upcoming 1.1 but rather wait a release.
The amplitude response matches the evalresp one to a relative error of 1E-10 - the sensitivity scaling makes this a bit different but I think what's done in this PR is correct. The phase differs a bit more for the FIR stage mainly after nyquist but also a tiny bit before. Again I think here scipy does the correct thing as it for example has no Gibb's artifacts which evalresp has.