Releases: mhostetter/sdr
Releases · mhostetter/sdr
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)
sdr v0.0.14
Released February 2, 2024
Changes
- Added support for Python 3.12.
- Added support for NumPy 1.26.
- Pinned
galois
to v0.3.8.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.13
Released January 28, 2024
Changes
- Added Fibonacci LFSRs in
sdr.FLFSR
. - Added Galois LFSRs in
sdr.GLFSR
. - Added maximum-length sequences in
sdr.m_sequence()
. - Added additive scrambling in
sdr.AdditiveScrambler
. - Added interleavers in
sdr.Interleaver
andsdr.BlockInterleaver
. - Added generic continuous-phase modulation in
sdr.CPM
. - Added channel models
sdr.BinarySymmetricChannel
,sdr.BinaryErasureChannel
, andsdr.DiscreteMemorylessChannel
. - Added the Berlekamp-Massey LFSR synthesis algorithm in
sdr.berlekamp_massey()
. - Added persistence plots in
sdr.plot.raster()
,sdr.plot.eye()
, andsdr.plot.constellation()
. - Added
galois
dependency. - Renamed
sdr.barker()
tosdr.barker_code()
. - Renamed
sdr.hadamard()
tosdr.hadamard_code()
. - Renamed
sdr.walsh()
tosdr.walsh_code()
. - Renamed
sdr.zadoff_chu()
tosdr.zadoff_chu_sequence()
.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.12
Released January 7, 2024
Changes
- Added automatic gain control in
sdr.AGC
. - Added fractional delay FIR filters in
sdr.FractionalDelay
. - Added generic polyphase FIR filters in
sdr.PolyphaseFIR
. - Added polyphase FIR channelizers in
sdr.Channelizer
. - Added linear, quadratic, and quartic polynomials to
sdr.FarrowResampler
. - Added
FarrowResampler.flush()
method. - Added
offset
keyword argumentsdr.plot.impulse_response()
. - Added Numba dependency with minimum version 0.55.
- Modified
design_multirate_taps()
andpolyphase_decompose()
APIs. - Enabled Kaiser-method prototype filter design using
polyphase_order
andatten
keyword arguments to
polyphase FIR classes. - Standardized
interpolation
,decimation
,rate
, anddelay
properties of polyphase FIR classes. - Supported span of 1 for all pulse shape functions.
- Fixed bug in phase of first NCO output sample.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.11
Released December 14, 2023
Changes
- Added heuristic phase error detector in
sdr.PED
. - Added maximum-likelihood PED in
sdr.MLPED
. - Added Hadamard codes in
sdr.hadamard()
. - Added Walsh codes in
sdr.walsh()
. - Added moving average FIR filter in
sdr.MovingAverager
. - Added leaky integrating IIR filter in
sdr.LeakyIntegrator
. - Added
FIR.group_delay()
method. - Added
FIR.phase_delay()
method. - Reworked
{FIR|IIR}.frequency_response()
and removed{FIR|IIR}.frequency_response_log()
. - Added support for explicit time axes in
sdr.plot.time_domain(t, x)
. - Added
y_axis
option to frequency-domain plots. - Added
x_axis="auto"
option to frequency-domain filter plots. - Added NCO output formats of sine, cosine, complex exponential, or accumulated phase.
- Improved bandwidth of discrete-time differentiator in
sdr.Differentiator
. - Added backward, trapezoidal, and forward discrete-time integration methods in
sdr.Integrator
. - Updated Jupyter notebook examples.
Contributors
- Matt Hostetter (@mhostetter)
sdr v0.0.10
Released November 19, 2023
Changes
- Added window-based FIR filter design in
sdr.design_lowpass_fir()
,sdr.design_highpass_fir()
,sdr.design_bandpass_fir()
, andsdr.design_bandstop_fir()
. - Added fractional delay FIR filter design in
sdr.design_frac_delay_fir()
. - Added ability to measure Euclidean distance in
sdr.euclidean()
. - Added ability to measure Hamming distance in
sdr.hamming()
. - Renamed
sdr.multirate_taps()
tosdr.design_multirate_fir()
. - Renamed
sdr.polyphase_matrix()
tosdr.polyphase_decompose()
.
Contributors
- Matt Hostetter (@mhostetter)