flowrs-dsp Copyright 2024-2026 David Charlot and the flowRS contributors Licensed under either of the Apache License, Version 2.0 (LICENSE-APACHE) or the MIT license (LICENSE-MIT), at your option. This crate is part of flowRS. Third-party material: Ports from SciPy (BSD-3-Clause, LICENSES/SciPy-BSD-3-Clause.txt): SciPy, Copyright (c) 2001-2002 Enthought, Inc. 2003, SciPy Developers. - src/filters.rs: Cascade::filtfilt and its section seeding (scipy.signal.sosfiltfilt, sosfilt_zi) and odd_ext (scipy.signal._arraytools.odd_ext); - src/elliptic.rs: ellipdeg (scipy.signal._filter_design._ellipdeg) and asne (scipy.signal._filter_design._arc_jac_sn); - src/filters.rs: the Bessel pole table, values computed with scipy.signal.besselap. SciPy and NumPy are also the oracles the designers are checked against (tools/verify_filters.py in flowRS): values in the tests come from running them. Methods implemented from published sources, with no code taken: the real-argument Jacobi functions by the arithmetic-geometric mean and the complex-argument addition theorems (Abramowitz & Stegun, Handbook of Mathematical Functions, 16.4 and 16.21); the elliptic pole and zero placement (Sophocles J. Orfanidis, Lecture Notes on Elliptic Filter Design, Rutgers University, 2006); the biquad formulas (Robert Bristow-Johnson, Audio EQ Cookbook); spectral-flux onset detection (Bello et al., 2005).