Remove Undercuts
Version 1.0.0 (2,9 KB) von
William Rose
Remove undercuts from an x,y data set. This can make it possible to interpolate a data set that otherwise could not be.
function [xout,yout]=undercutRemoval(xin,yin,varargin)
Remove undercuts from an x,y dataset.
An undercut or uppercut (collectively, undercuts) in an x,y data set is one or more data points whose x values are less than or equal to previous x-values. In other words, an undercut is a data segment that "curves back on itself". Data sets with undercuts cannot be interpolated with interp1(). Removing the undercuts will make the data interpolate-able. The user may specify one of four methods, or not. Method 1 is the default. Figure below shows the difference between methods.
- Method 1: Remove down-going undercuts by a two-pass approach
- Method 2: Remove up-going uppercuts by a two-pass approach
- Method 3: Remove under- and uppercuts, proceeding from beginning to end
- Method 4: Remove under- and uppercuts, proceeding from end to beginning
See undercutRemovalTest.m for a demonstration of the function and example of the different methods. The demonstration program uses data in file undercutdata.txt.
I beleive the following statements are true, but have not proved them:
- Method 1 has an upward bias, i.e. mean(yout)>=mean(yin)
- Method 2 has a downward bias, i.e. mean(yout)<=mean(yin)
- Methods 3,4 are unbiased, i.e. exp.val(mean(yout))=exp.val.(mean(yin))
Zitieren als
William Rose (2024). Remove Undercuts (https://www.mathworks.com/matlabcentral/fileexchange/103195-remove-undercuts), MATLAB Central File Exchange. Abgerufen.
Kompatibilität der MATLAB-Version
Erstellt mit
R2021b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
1.0.0 |