Regarding how to remove oscillations

Hi,
I am writing a code to reconstruct Fenton Karma model via Fourier Series using lsqcurvefit command. On recosntruction ,I got some oscillations.How can I remove them. I have attached the code with the required figure.

Antworten (1)

Image Analyst
Image Analyst am 20 Sep. 2020

1 Stimme

Use medfilt1() or sgolayfilt() to get rid of small local oscillations.

3 Kommentare

star star
star star am 17 Feb. 2022
Hi There,
I have some figures, and I need to compute and plot oscillations in a for loop. As there have been numerous discussions on mathwork about calculating with
[a, peaklocs] = findpeaks (y (:,4)); Period = mean(diff (tnew (peaklocs)));
I use this method and multiply one -peak oscillation by two to produce a completed oscillation. But my issue is with the minor oscillations, as shown in the figure below. That produces a high oscillation, according to diff(tnew(peaklocs)), which is not correct. I can't check each loop in a 100-loop programme. I simply want to avoid calculating errors and use a general rule. As a result, I use sgolayfilt(y(:,4),5,21), although slight oscillations persist. I'd appreciate it if you could make any suggestions about these tiny oscillations.
Image Analyst
Image Analyst am 17 Feb. 2022
@star mahdavi take a look at all the different input options for findpeaks() and find one that will get rid of small ones, like maybe MinPeakHeight or something.
star star
star star am 18 Feb. 2022
Thank you, I figure it out.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Get Started with Signal Processing Toolbox finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 20 Sep. 2020

Kommentiert:

am 18 Feb. 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by