Commit 242d2b4
committed
Speed up freqresp for transfer functions by an order of magnitude
When determining the frequency response, the list of frequencies
is now stored as a numpy array, instead of a list, and evaluated
all at once, instead of using `map`. This is much faster.
The improved performance can be measured using a script
`bench/time_freqresp.py`. On my machine, I get a speedup of
more than a factor of 20 (from 3.9 seconds to 0.18 seconds) for
a 10th-order transfer function.1 parent 03c6637 commit 242d2b4
2 files changed
Lines changed: 23 additions & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
242 | 242 | | |
243 | 243 | | |
244 | 244 | | |
245 | | - | |
| 245 | + | |
246 | 246 | | |
247 | 247 | | |
248 | 248 | | |
249 | 249 | | |
250 | 250 | | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | | - | |
255 | | - | |
| 251 | + | |
| 252 | + | |
256 | 253 | | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
257 | 257 | | |
258 | 258 | | |
259 | 259 | | |
| |||
615 | 615 | | |
616 | 616 | | |
617 | 617 | | |
618 | | - | |
| 618 | + | |
619 | 619 | | |
620 | 620 | | |
621 | 621 | | |
622 | 622 | | |
623 | | - | |
624 | | - | |
625 | | - | |
626 | | - | |
| 623 | + | |
| 624 | + | |
627 | 625 | | |
628 | 626 | | |
629 | 627 | | |
| |||
0 commit comments