I have over 40 years professional experience of analog and digital hardware and software in the following fields :
a) RF communications
b) Test software development for military systems.
c) Signal measurement and analysis.
Paul Lovell presents an updated, compact Octave/Matlab implementation of a narrow bandpass FIR that runs about four times faster and uses float32 to cut processing cost. The design combines a single matrix IFIR stage with three moving-sum (RRS) stages per baseband, auto-calculates the IFIR expansion factor, and adds easier parameter setup plus WAV I/O and FFT plots. A TensorFlow Colab demo is also provided.
Building very narrow FIR bandpass filters at high sample rates often yields extremely long impulse responses. This post shows a practical Octave/Matlab implementation that uses complex downconversion to baseband plus a multistage Matrix IFIR and running-sum cascade to slash computation. With the provided example (48 kHz, 850 Hz center, 10 Hz passband) you get <1 dB ripple and >60 dB stopband while running 20x to 100x faster than a single-stage FIR.
Paul Lovell presents an efficient linear-phase lowpass FIR implemented in Octave, built as a Matrix IFIR with two matrix band-edge shaping stages followed by three recursive running-sum stages. The design reshapes input blocks into matrices to exploit interpolation structure and uses cumsum-based moving sums for speed. For a 200 Hz cutoff at 48 kHz the five-stage example ran about 15 times faster than a single-stage FIR.
Hi guys,It may be just me, but I do get the impression that some of you are not taking our Rick seriously !I went to the so-called "fount of all knowledge" ChatGPT...
Thanks to all for the interesting replies. Good to hear from you again, Rick.For beginners who might be rather baffled by the intricacies of recursive filters, I...
Hi everyone, Not exclusively DSP this one, but please bear with me.I expect that most of us (especially those of more advanced years such as myself) have dealt...
Hi Guys,I thought that some of you may be interested in the following report from the Innovative Computing Laboratory, at the University of Tennessee, Knoxville,...
Hi all, I'm back again,For anyone interested in designing phase/amplitude correction FIR filters, the free rePhase FIR tool on the minidsp.com website may be...
Aha !Yes, this looks very promising Neil. Now if the h_goal parameter in the sinc_corr function could be modified to take on the inverse response of the second filter,...
Hi kaz,I'm attempting to find a generic solution to the case where the second or subsequent filter(s) is not able to be changed, for some reason.Perhaps it is better...
Hi Neil,Thanks for your input on this. The problem here is that the PM algorithm may not be able to handle the H2 response parameters produced by H/H1.For instance...
Ok thanks kaz,I agree wholeheartedly that a single design is preferable ;-) I'm wondering how, from your example, we calculate h2 given that we have h and h1 parameters.Could...
Hi everyone, There are of course, many situations where the design of a single linear-phase FIR filter may be accomplished using the Parks McClellan algorithm....
Hi Neil,Sounds like a good book, but the equations do things the old fashioned way.What d'yer mean they give 100% accurate solutions ?AI (aka machine learning) is...
One topic I would particularly like to see covered is parallel processing in DSP.Related to techniques, algorithms, hardware, use of MPI (Message Passing Interface)...
Hi everyone,I recently stumbled across the Differentiable DSP (DDSP) library for Python/Tensorflow. This seems to combine DSP techniques with a neural network in...
A little gem which shows that the only involvement of mathematics in politics, should be the counting of votes (and even that is not always straightforward). ...
Hi Rick,This is indeed an interesting spectral plot. However, a series of plots would be even more interesting. ie:a) Plots from microphones placed at different...
Hi all, Thanks to all for your interesting replies. I should have said that yes, the impulse response is symmetric, and I'm interested in filter lengths from 8...
Most of you, I'm sure, will be familiar with the "Folded FIR" technique for reducing the computational load of FIR filters. For instance, in the example below,...
Hi Rick and kaz,Good to get your input on the Prism. Much of the documentation seems rather unclear and contradictory e.g. In the "bikini pdf" it states:" Each new...
Hi everyone,Recently I have been analyzing what is claimed to be a new type of filter, known as a Prism.However, despite studying this document and this one, I've...
Ok everyone,Here is the link to R code examples from the Hilbert-Huang Transform document.My thanks to the author Danny Bowman for this :Electronic supplement to...
Hi Tim & Gianni, I have requested a link to the code from the authors.The R code for Fig 2 (given in the document) seems to run ok, once line 5 is changed to...
Hi Guys,Over the past month, I have been investigating possible methods of signal decomposition as an alternative to the FFT.In particular, I'm looking at signals...