| <large>libXpertMassCore and libXpertMassGui Developer Documentation</large>

- libXpertMassCore Data processing
- MsXpS::libXpertMassCore::Processing Namespace

# MsXpS::libXpertMassCore::Processing Namespace

namespace MsXpS::libXpertMassCore::Processing

Contains the libXpertMassCore math-related features. More...

Header: | `#include <Processing>`

- Processing is part of libXpertMassCore Data processing.

## Classes

class | AbstractLowMassDeconvolver
struct | BinnedIsotopicCentroid
struct | ChargeSpecificFeature
class | CubicSplineModel
struct | DeconvolutedFeature
class | DeconvolutedMassIdMatcher
struct | DeconvolutedMassIdMatcherParameters
struct | FitQuality
class | HighResPeakPicker
struct | HighResPeakPickerParameters
struct | IsoMatch
class | LocalSignalToNoiseEstimator
class | LowMassDeconvolverFullLabelling
class | LowMassDeconvolverNoLabelling
struct | LowMassDeconvolverParameters
struct | SupportingIon

## Functions

void | spline_bisection(const MsXpS::libXpertMassCore::Processing::CubicSplineModel &spline_model, const double mz_at_left, const double mz_at_right, double &center_peak_mz, double &center_peak_intensity, const double threshold = 1e-6)

## Detailed Description

## Classes

### class AbstractLowMassDeconvolver

The AbstractLowMassDeconvolver class manages the deconvolution of low mass analytes mass spectra. More...

### class BinnedIsotopicCentroid

This struct describes a calculated isotopic cluster's centroid for a calculated isotopic cluster that was binned so as to remove hyperfine isotopic structure centroids that would be of no use during the matching of centroids with the input mass spectrum's centroids. More...

### class ChargeSpecificFeature

This struct holds the data describing an input mass spectrum's centroid with a given tested charge. More...

### class CubicSplineModel

The CubicSplineModel struct provides a cubic spline model of a mass spectrometric data peak. More...

### class DeconvolutedFeature

This struct holds the data about an analyte's neutral mass and intensity as defined by the deconvolution of one or more isotopic clusters representing different ionization levels of the same analyte. More...

### class DeconvolutedMassIdMatcher

The DeconvolutedMassIdMatcher class provides the mechanics that performs matches between analyte IDs and chemical formulas provided in a dictionary file. More...

### class DeconvolutedMassIdMatcherParameters

The DeconvolutedMassIdMatcherParameters structure holds all the parameters required to configure a DeconvolutedMassIdMatcher instance. More...

### class FitQuality

This struct holds the metric data about the matches between the calculated isotopic cluster's centroids and those from the input centroided mass spectrum. This struct is mainly for use in the reporting to the user. More...

### class HighResPeakPicker

Provides a peak picking feature for data acquired on high resolving power instruments. More...

### class HighResPeakPickerParameters

Provides parameters for the HighResPeakPicker peak picking feature. More...

### class IsoMatch

The IsoMatch struct describes a match between a theoretical isotopic cluster centroid and a centroid of the input centroided mass spectrum (observed). More...

### class LocalSignalToNoiseEstimator

The LocalSignalToNoiseEstimator class encapsulates all the features required to compute a signal-to-noise ratio value for each point in a trace. More...

### class LowMassDeconvolverFullLabelling

The LowMassDeconvolverFullLabelling class manages the deconvolution of low mass analytes mass spectra. More...

### class LowMassDeconvolverNoLabelling

The LowMassDeconvolverNoLabelling class manages the deconvolution of low mass analytes mass spectra. More...

### class LowMassDeconvolverParameters

The LowMassDeconvolverParameters struct encapsulates all the parameters needed to configure the low mass deconvolving process. More...

### class SupportingIon

The SupportingIon struct encapsulates an input mass spectrum's monoisotopic centroid of a cluster that was succesfully matched to a corresponding calculated cluster. More...

## Function Documentation

### void Processing::spline_bisection(const MsXpS::libXpertMassCore::Processing::CubicSplineModel &spline_model, const double mz_at_left, const double mz_at_right, double &center_peak_mz, double &center_peak_intensity, const double threshold = 1e-6)

Calculates the maximum intensity point by evaluating the spline's first derivative.

- spline_model: model to use for the calculation
- mz_at_left: m/z value at left
- mz_at_right: m/z value at right
- center_peak_mz: will be set to the m/z value at max intensity point (center of mass peak)
- center_peak_intensity: will be set to the intensity at center of mass peak
- threshold: used to determine the center of mass peak.