Finds peaks in the signal "DataMatrix" (with x-values in column 1 and y-values in column 2), according to the peak detection parameters AmpT, SlopeT, sw, fw (see the "findpeaks" function below), then compares the found peak positions (maximum x-values) to a database of known peaks,in the form of an array of known peak maximum positions (Positions) and matching cell array of names (Names). If the position of a found peak in the signal is closer to one of the known peaks by less than the specified maximun error (maxerror), that peak is considered a match and its peak position, name, error, and amplitude are entered into the output cell array "IdentifiedPeaks". The full list of detected peaks, indentified or not, is returned in AllPeaks. Use "cell2mat" to access numeric elements of IdentifiedPeaks, e.g.cell2mat(IdentifiedPeaks(2,1)) returns the position of the first indentified peak, cell2mat(IdentifiedPeaks(2,2)) returns its name, etc. For testing purposes, the ZIP file includes an experimentally measured high-resolution atomic spectrum and a DataTable of peaks for Copper.
Version 1.1, June 23, 2011, by Tom O'Haver (email@example.com)
Tom O'Haver (2023). IDpeak: Peak Identifier Function (https://www.mathworks.com/matlabcentral/fileexchange/31894-idpeak-peak-identifier-function), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Inspired by: Peak finding and measurement, 2019
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!