Releases: mhostetter/sdr
Releases · mhostetter/sdr
sdr v0.0.24
Released September 5, 2024
Changes
- Added support for NumPy 2.1.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.23
Released July 28, 2024
Changes
- Added calculation of filter noise bandwidth in
sdr.FIR.noise_bandwidth()
andsdr.IIR.noise_bandwidth()
. - Added calculation of threshold level above the noise power in
sdr.threshold_factor()
. - Added numerical calculation of the PDF of the sum and product of random variables in
sdr.sum_distribution()
,
sdr.sum_distributions()
, andsdr.multiply_distributions()
. - Renamed
sdr.design_frac_delay_fir()
tosdr.fractional_delay_fir()
. - Renamed
sdr.design_lowpass_fir()
tosdr.lowpass_fir()
. - Renamed
sdr.design_highpass_fir()
tosdr.highpass_fir()
. - Renamed
sdr.design_bandpass_fir()
tosdr.bandpass_fir()
. - Renamed
sdr.design_bandstop_fir()
tosdr.bandstop_fir()
. - Renamed
sdr.design_multirate_fir()
tosdr.multirate_fir()
. - Allowed use of SciPy window definition using
scipy.signal.windows.get_window()
for all filter design and plotting
functions.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.22
Released July 13, 2024
Changes
- Added support for NumPy v2.
- Increased required
galois
version tov0.4.1
. - Added calculation of instantaneous power in
sdr.power()
. - Refactored
sdr.binary_code()
andsdr.gray_code()
to acceptlength
, notdegree
. - Reworked argument verification of entire public API.
- Improved nuisance warning suppression.
- Improved documentation.
- Fixed minor bugs.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.21
Released June 15, 2024
Changes
- Added Gold codes in
sdr.gold_code()
. - Added calculation of primitive polynomials that generate preferred pair
$m$ -sequences insdr.preferred_pairs()
. - Added check if two primitive polynomials form a preferred pair in
sdr.is_preferred_pair()
. - Added plot of the discrete Fourier transform (DFT) in
sdr.plot.dft()
. - Added plot of the discrete-time Fourier transform (DTFT) in
sdr.plot.dtft()
. - Added plot of periodic and non-periodic auto- and cross-correlations (PACF, ACF, PCCF, and CCF) in
sdr.plot.correlation()
. - Added general-purpose stem plot, styled like MATLAB, in
sdr.plot.stem()
. - Added plot of Shannon's limit on
$E_b/N_0$ insdr.plot.shannon_limit_ebn0()
. - Added support for
python -OO
optimization. - Increased required
galois
version tov0.3.9
.
Contributors
- Justin Charlong (@jcharlong)
- Matt Hostetter (@mhostetter)
sdr v0.0.20
Released June 9, 2024
Changes
- Removed
sdr.percent()
,sdr.ppm()
, andsdr.ppb()
. - Added Shnidman's minimum required SNR approximation in
sdr.shnidman()
. - Added Shannon's limit on
$E_b/N_0$ over the AWGN channel insdr.shannon_limit_ebn0()
. - Added Shannon's limit on
$S/N$ over the AWGN channel insdr.shannon_limit_snr()
. - Added axis keyword argument
ax
to eachsdr.plot
function. - Modified
sdr.sample_rate_offset()
andsdr.frequency_offset()
APIs to use offset and not ppm. - Renamed
sdr.fspl()
tosdr.free_space_path_loss()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.19
Released May 27, 2024
Changes
- Added calculation of Cramér-Rao lower bounds (CRLBs) for TOA, TDOA, FOA, and FDOA in
sdr.toa_crlb()
,
sdr.tdoa_crlb()
,sdr.foa_crlb()
, andsdr.fdoa_crlb()
. - Added calculation of the effective SNR of the product of two signals in
sdr.composite_snr()
. - Added calculation of RMS integration time in
sdr.rms_integration_time()
. - Added calculation of RMS bandwidth in
sdr.rms_bandwidth()
. - Added calculation of Shannon's capacity for the binary-input additive white Gaussian noise (BI-AWGN) channel in
sdr.biawgn_capacity()
. - Renamed
sdr.to_real_pb()
tosdr.to_real_passband()
. - Renamed
sdr.to_complex_bb()
tosdr.to_complex_baseband()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.18
Released May 12, 2024
Changes
- Added support for coherent integration
n_c
and non-coherent integrationn_nc
to detection functionssdr.h0()
,
sdr.h1()
,sdr.p_d()
,sdr.p_fa()
, andsdr.threshold()
. - Added support for real/complex signals and linear/square-law detectors to
sdr.non_coherent_gain()
. - Added calculation of minimum required SNR to achieve specified detection performance in
sdr.min_snr()
. - Added Peebles's approximation of non-coherent gain using a square-law detector in
sdr.peebles()
. - Renamed
sdr.h0_theory()
tosdr.h0()
. - Renamed
sdr.h1_theory()
tosdr.h1()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.17
Released March 10, 2024
Changes
- Added theoretical detection threshold calculation in
sdr.threshold()
. - Added theoretical probability of detection calculation in
sdr.p_d()
. - Added theoretical probability of false alarm calculation in
sdr.p_fa()
. - Added test statistic distributions in
sdr.h0_theory()
andsdr.h1_theory()
. - Added support for coherent, linear, and square-law detectors.
- Added support for detection of real and complex signals.
- Added plot helper for detection distributions in
sdr.plot.detection_pdfs()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.16
Released March 3, 2024
Changes
- Removed Python 3.7 support.
- Added Kasami codes in
sdr.kasami_code()
. - Added coherent integration gain in
sdr.coherent_gain()
. - Added coherent gain loss in
sdr.coherent_gain_loss()
. - Added maximum integration time for coherent integration in
sdr.max_integration_time()
. - Added maximum frequency offset for coherent integration in
sdr.max_frequency_offset()
. - Added non-coherent integration gain in
sdr.non_coherent_gain()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.15
Released February 4, 2024
Changes
- Fixed bug in support for Python 3.12.
- Made characteristic polynomial the default input for LFSRs, additive scramblers, and m-sequences.
Contributors
- Matt Hostetter (@mhostetter)