Quick search for local extremes
The new function extr.m analyses the given real vector carrying a sequence of samples to be analyzed. At the end, it returns a cell array of extreme positions in the sequence. The cell array consists of two cells only. The first one contains the logical vector of maxima and the other the similar one of minima. Should more equal values be present in adjacent elements of the vector, only one position is returned. The attention is also paid on low memory requirements and a speed of the procedure.
Forms of calls:
L = extr(x); % Find true local extremes
% ..... x vector containing a sequence to be analyzed,
% ..... L cell array {L(1), L(2)}, where
% ..... L(1) is logical vector of positions of maxima,
% ..... L(2) is logical vector of positions of minima.
There are also circumstances, when the processing time is critical for a user, while the exact true extrems are of less priority. In that case he may use:
L = extr(c,0); % Find true and false local extrems.
False extrems form pairs of equal value minimum-maximum laying somewhere on the trend of the sequence. They are not extrems, but they do not harm in certain cases of consecutive processing.
Examples:
demoXtr; % See the program and figure demoXtr.jpg
L = extr(x);
y = x(L(1)|L(2)); % y is a vector of all extremes
clear, x=rand(1e7,1)-.5; tic, L=extr(x); toc
Elapsed time is 2.974584 seconds. % (3GHz PC, Windows XP Prof.)
clear, x=rand(1e7,1)-.5; tic, L=extr(x,0); toc
Elapsed time is 1.392926 seconds. % (3GHz PC, Windows XP Prof.)
Hopefully, the function is error-free. If not, please, let me know.
Citation pour cette source
Miroslav Balda (2024). Quick search for local extremes (https://www.mathworks.com/matlabcentral/fileexchange/10272-quick-search-for-local-extremes), MATLAB Central File Exchange. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.0.0.0 | Smaller figure |