Segmented smooth function

Multiple segment variant of fastsmooth.m
184 Downloads
Aktualisiert 19. Nov 2016

Lizenz anzeigen

SegmentedSmooth(y,w,type,ends) divides y into a number of equal-length
segments defined by the length of the vector 'smoothwidths', then
smooths each segment with smooth of type 'type' and width defined by
the elements of vector 'smoothwidths'. Same syntax as fastsmooth.
Version 1, November 2016.
The argument "type" determines the smooth type:
If type=1, rectangular (sliding-average or boxcar)
If type=2, triangular (2 passes of sliding-average)
If type=3, pseudo-Gaussian (3 passes of sliding-average)
If type=4, pseudo-Gaussian (4 passes of same sliding-average)
If type=5, multiple-width (4 passes of different sliding-averages)
The argument "ends" controls how the "ends" of the signal
(the first w/2 points and the last w/2 points) are handled.
If ends=0, the ends are zero. (In this mode the elapsed
time is the fastest and is independent of the smooth width).
If ends=1, the ends are smoothed with progressively
smaller smooths the closer to the end. (In this mode the
elapsed time increases with increasing smooth widths).
SegmentedSmooth(Y,w,type) smooths with ends=0.
SegmentedSmooth(Y,w) smooths with type=1 and ends=0.

Examples: 3-segment smooth of random white noise, smooth widths of
2,20, and 200.
x=1:10000;y=randn(size(x));
plot(x,SegmentedSmooth(y,[2 20 200],3,0))

20-segment smooth, odd smooth widths from 1 to 41:
plot(x,SegmentedSmooth(y,[1:2:41],3,0))

Zitieren als

Tom O'Haver (2024). Segmented smooth function (https://www.mathworks.com/matlabcentral/fileexchange/60300-segmented-smooth-function), MATLAB Central File Exchange. Abgerufen.

Kompatibilität der MATLAB-Version
Erstellt mit R2009a
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!
Version Veröffentlicht Versionshinweise
1.0.0.0