Releases: garrettj403/CZT
Releases · garrettj403/CZT
CZT (v0.0.7)
- Bugs:
- Remove
import czt
fromsetup.py
. This was causing a circular dependency.
- Remove
- Testing:
- Compare this package against a stripped down version of the CZT algorithm.
- Improve testing coverage.
- Examples:
- Plot residuals in examples.
CZT (v0.0.6)
czt
:freq2time
andtime2freq
:- Fix phase correction.
- Remove scaling factor (hack).
- Remove
t_orig
andf_orig
arguments. Not needed anymore. - Don't return original frequency/time in
time2freq
andfreq2time
. Instead make a copy of the Numpy array.
- Always default to FFT settings if output frequency/time array is not specified.
- Fix
M!=N
error inczt.czt
. Use properk
-range. - Optimize
pd
andskew_circulant_multiply
.pd
is now a similar speed asscipy
.
- Profiling:
- Add benchmarking scripts using
perfplot
. - Add simple timing scripts.
- Add benchmarking scripts using
CZT (v0.0.5)
- CZT:
- Optimize code to run faster (approx. x4)
- Change default
t_method
to'ce'
(fastest, see benchmark scripts)
- Benchmark:
- Use perfplots to iterate over a range of input sizes
CZT (v0.0.4)
- CZT:
- Change default
t_method
to'scipy'
(fastest). - czt.iczt: add option to use algorithm 2 from Sukhoy & Stoytchev 2019.
- Fix error in fft and ifft algorithms. Remove warnings now that they work.
- Rename
f_method
:"std"
->"numpy"
,"fast"
->"recursive"
- Change default
- Benchmark:
- Add benchmarks for czt.czt and czt.iczt.
- Misc:
- Remove windowing functions (unnecessary).
CZT (v0.0.3)
- CZT:
- Added new
t_method
toczt
. This method uses the newmatmul_toeplitz
function from Scipy. Requiresscipy>=1.6.0
. - Fixed argument order in
scipy.linalg.toeplitz
. - Use
np.complex128
for A and W. Fixes a potential error if A or W is passed as an integer.
- Added new
- Setup:
- Add dependencies for examples.
- Add
requriements.txt
.
- Testing:
- Added new
t_method
to testing.
- Added new
- Misc:
- More comments.
CZT (v0.0.2)
- CZT:
- Add function for inverse CZT (iczt) using complex conjugate.
czt
:- Fixed default phase of W so that CZT provides FFT by default.
- Wrapped
czt_simple
intoczt
(can still accessed viasimple=True
argument).
time2freq
:- Changed default frequency range to match FFT
- Add normalization for arbitrary freq/time sweeps
- Add functions to generate windows.
- Testing:
- Add test to compare CZT to analytic expression
- Added test to compare CZT to FFT
- Added test for ICZT
- Added test for time-domain -> frequency-domain -> time-domain conversion
- Remove redundant tests
- Examples:
- Add example calculating the time-domain response of a lossy waveguide
- Automatic package reloading after each cell
setup.py
:- Use
py_modules
instead ofpackages
- Use
CZT (v0.0.1)
Initial release.