Is there a way to initialize a filter to the first unfiltered value?
9 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I want to filter a data set. Suppose the data set consists of data points which equal 100 plus noise. I want the filtered value to be initialized to the first unfiltered value, instead of zero, so the filter won't have to take a long time to go from zero to the nominal value. Is there a way to do this?
After some thought, I came up with this method: filteredData = filter(b, a, raw - raw(1)) + raw(1); I think this answers my question, but I would welcome any comments.
0 Commenti
Risposte (1)
mojtaba rayati
il 5 Dic 2023
Be sure that your b array is normalized then for x0 initial condition: y=filter(b, a, x-x0) + x0.
The Reason: In FIR filter case:
if
the above formulation is equal to y=filter(b, a, x-x0) + x0.
Similar reason can be used for IIR Filter
0 Commenti
Vedere anche
Categorie
Scopri di più su Digital Filter Analysis in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!