Skip to content

Releases: mhostetter/sdr

sdr v0.0.19

27 May 22:56
Compare
Choose a tag to compare

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(), and sdr.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() to sdr.to_real_passband().
  • Renamed sdr.to_complex_bb() to sdr.to_complex_baseband().

Contributors

sdr v0.0.18

13 May 03:28
Compare
Choose a tag to compare

Released May 12, 2024

Changes

  • Added support for coherent integration n_c and non-coherent integration n_nc to detection functions sdr.h0(),
    sdr.h1(), sdr.p_d(), sdr.p_fa(), and sdr.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() to sdr.h0().
  • Renamed sdr.h1_theory() to sdr.h1().

Contributors

sdr v0.0.17

10 Mar 22:58
Compare
Choose a tag to compare

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() and sdr.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

sdr v0.0.16

03 Mar 21:59
Compare
Choose a tag to compare

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

sdr v0.0.15

04 Feb 19:02
Compare
Choose a tag to compare

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

sdr v0.0.14

02 Feb 15:05
Compare
Choose a tag to compare

Released February 2, 2024

Changes

  • Added support for Python 3.12.
  • Added support for NumPy 1.26.
  • Pinned galois to v0.3.8.

Contributors

sdr v0.0.13

29 Jan 01:34
Compare
Choose a tag to compare

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 and sdr.BlockInterleaver.
  • Added generic continuous-phase modulation in sdr.CPM.
  • Added channel models sdr.BinarySymmetricChannel, sdr.BinaryErasureChannel, and sdr.DiscreteMemorylessChannel.
  • Added the Berlekamp-Massey LFSR synthesis algorithm in sdr.berlekamp_massey().
  • Added persistence plots in sdr.plot.raster(), sdr.plot.eye(), and sdr.plot.constellation().
  • Added galois dependency.
  • Renamed sdr.barker() to sdr.barker_code().
  • Renamed sdr.hadamard() to sdr.hadamard_code().
  • Renamed sdr.walsh() to sdr.walsh_code().
  • Renamed sdr.zadoff_chu() to sdr.zadoff_chu_sequence().

Contributors

sdr v0.0.12

07 Jan 19:55
Compare
Choose a tag to compare

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 argument sdr.plot.impulse_response().
  • Added Numba dependency with minimum version 0.55.
  • Modified design_multirate_taps() and polyphase_decompose() APIs.
  • Enabled Kaiser-method prototype filter design using polyphase_order and atten keyword arguments to
    polyphase FIR classes.
  • Standardized interpolation, decimation, rate, and delay properties of polyphase FIR classes.
  • Supported span of 1 for all pulse shape functions.
  • Fixed bug in phase of first NCO output sample.

Contributors

sdr v0.0.11

15 Dec 03:24
Compare
Choose a tag to compare

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

sdr v0.0.10

19 Nov 23:06
Compare
Choose a tag to compare

Released November 19, 2023

Changes

  • Added window-based FIR filter design in sdr.design_lowpass_fir(), sdr.design_highpass_fir(), sdr.design_bandpass_fir(), and sdr.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() to sdr.design_multirate_fir().
  • Renamed sdr.polyphase_matrix() to sdr.polyphase_decompose().

Contributors