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

- libXpertMassCore
- LowMassDeconvolverParameters

# MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters Struct

struct MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters

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

Header: | `#include <MsXpS/libXpertMassCore/Processing/AbstractLowMassDeconvolver.hpp>`

- List of all members, including inherited members
- LowMassDeconvolverParameters is part of libXpertMassCore Data processing.

## Public Functions

| LowMassDeconvolverParameters()

LowMassDeconvolverParameters(int min_charge, int max_charge, double min_mass, double max_mass, double ppm_mass_tolerance, double min_intensity, int min_isotopic_cluster_matches, int max_isotopic_cluster_matches, int cluster_shape_centroid_count, const MsXpS::libXpertMassCore::Averagine &averagine, bool full_heavy_isotope_labelling, const QString &processing_details_log_file_path, double total_cluster_intensity_tolerance, double relative_cluster_shape_tolerance, double min_pearson_correlation_score)

| LowMassDeconvolverParameters(const MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters &other)

void

initialize(int min_charge, int max_charge, double min_mass, double max_mass, double ppm_mass_tolerance, double min_intensity, int min_isotopic_cluster_matches, int max_isotopic_cluster_matches, int cluster_shape_centroid_count, const MsXpS::libXpertMassCore::Averagine &the_averagine, bool full_heavy_isotope_labelling, const QString &processing_details_log_file_path, double total_cluster_intensity_tolerance, int relative_cluster_shape_tolerance, double min_pearson_correlation_score)

QString | toString() const
MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters & | operator=(const MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters &other)

## Public Variables

MsXpS::libXpertMassCore::Averagine | averagine
int | clusterShapeCentroidCount
double | clusterShapeTolerance
bool | fullHeavyIsotopeLabelling
int | maxCharge
int | maxIsotopicClusterMatches
double | maxMass
int | minCharge
double | minIntensity
int | minIsotopicClusterMatches
double | minMass
double | minPearsonCorrelationScore
double | ppmMassTolerance
QString | processingDetailsLogFilePath
double | totalClusterIntensityTolerance

## Detailed Description

## Member Function Documentation

### LowMassDeconvolverParameters::LowMassDeconvolverParameters()

Constructs an empty LowMassDeconvolverParameters instance.

### LowMassDeconvolverParameters::LowMassDeconvolverParameters(int min_charge, int max_charge, double min_mass, double max_mass, double ppm_mass_tolerance, double min_intensity, int min_isotopic_cluster_matches, int max_isotopic_cluster_matches, int cluster_shape_centroid_count, const MsXpS::libXpertMassCore::Averagine &averagine, bool full_heavy_isotope_labelling, const QString &processing_details_log_file_path, double total_cluster_intensity_tolerance, double relative_cluster_shape_tolerance, double min_pearson_correlation_score)

Constructs a LowMassDeconvolverParameters instance with all the parameters.

For the description of the parameters, check their description.

- min_charge: minimum charge of the deconvolved peak
- max_charge: maximum charge of the deconvolved peak
- min_mass: minimum mass of the deconvolved peak
- max_mass: maximum mass of the deconvolved peak
- ppm_mass_tolerance: tolerance (in parts-per-million) for the mass matches
- min_intensity: minimum intensity of the deconvolved mass peak
- min_isotopic_cluster_matches: minimum number of matches to be obtained
- max_isotopic_cluster_matches: maximum number of matches to be obtained
- cluster_shape_centroid_count: the number of cluster centroids used to compute the relative intensity ratios between the calculated isotopic cluster centroids and their input mass data counterpart
- averagine: Averagine describing the average composition of the analytes
- full_heavy_isotope_labelling: indicates if the deconvolution process is going to be performed on mass spectral data obtained on analytes fully labelled with stable heavy isotopes [13C] and/or [15N] such that the isotopic cluster profiles are inverted.
- processing_details_log_file_path: path to the file in which the processing details are logged
- total_cluster_intensity_tolerance: threshold below which matches between theoretical data and input mass spectral data are rejected
- relative_cluster_shape_tolerance: tolerance on the relative intensity of the centroids in the calculated isotopic cluster with respect to the experimental input cluster above which matches are rejected
- min_pearson_correlation_score: threshold below which matches are rejected. The Pearson correlation is calculate for the centroids of the calculated isotopic cluster and of the input mass spectral isotopic cluster.

averagine must contain a valid formula, as it is validated against the isotopic data. The mass of the averagine formula (neutral formula) is calculated and stored in the object.

Any failure with these assumptions triggers a qFatal() call.

### LowMassDeconvolverParameters::LowMassDeconvolverParameters(const MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters &other)

Constructs an instance using other as a template.

### void LowMassDeconvolverParameters::initialize(int min_charge, int max_charge, double min_mass, double max_mass, double ppm_mass_tolerance, double min_intensity, int min_isotopic_cluster_matches, int max_isotopic_cluster_matches, int cluster_shape_centroid_count, const MsXpS::libXpertMassCore::Averagine &the_averagine, bool full_heavy_isotope_labelling, const QString &processing_details_log_file_path, double total_cluster_intensity_tolerance, int relative_cluster_shape_tolerance, double min_pearson_correlation_score)

Initializes this instance using the parameters

- min_charge: minimum charge of the deconvolved peak
- max_charge: maximum charge of the deconvolved peak
- min_mass: minimum mass of the deconvolved peak
- max_mass: maximum mass of the deconvolved peak
- ppm_mass_tolerance: tolerance (in parts-per-million) for the mass matches
- min_intensity: minimum intensity of the deconvolved mass peak
- min_isotopic_cluster_matches: minimum number of matches to be obtained
- max_isotopic_cluster_matches: maximum number of matches to be obtained
- cluster_shape_centroid_count: the number of cluster centroids used to compute the relative intensity ratios between the calculated isotopic cluster centroids and their input mass data counterpart
- the_averagine: Averagine describing the average composition of the analytes
- full_heavy_isotope_labelling: indicates if the deconvolution process is going to be performed on mass spectral data obtained on analytes fully labelled with stable heavy isotopes [13C] and/or [15N] such that the isotopic cluster profiles are inverted.
- processing_details_log_file_path: path to the file in which the processing details are logged
- total_cluster_intensity_tolerance: threshold below which matches between theoretical data and input mass spectral data are rejected
- relative_cluster_shape_tolerance: tolerance on the relative intensity of the centroids in the calculated isotopic cluster with respect to the experimental input cluster above which matches are rejected
- min_pearson_correlation_score: threshold below which matches are rejected. The Pearson correlation is calculate for the centroids of the calculated isotopic cluster and of the input mass spectral isotopic cluster.

the_averagine must contain a valid formula, as it is validated against the isotopic data. The mass of the averagine formula (neutral formula) is calculated and stored in the object.

Any failure with these assumptions triggers a qFatal() call.

### QString LowMassDeconvolverParameters::toString() const

Crafts a text string describing the parameters and returns it.

### MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters &LowMassDeconvolverParameters::operator=(const MsXpS::libXpertMassCore::Processing::LowMassDeconvolverParameters &other)

Initializes this instance using other as a template.

Returns a reference to this instance.

## Member Variable Documentation

### MsXpS::libXpertMassCore::Averagine LowMassDeconvolverParameters::averagine

This variable holds the Averagine to be used for the calculation of the isotopic clusters based on the input mass data neutral masses.

### int LowMassDeconvolverParameters::clusterShapeCentroidCount

This variable holds the number of centroids in the isotopic cluster that must be used to compute the centroid intensity ratio between the calculated and input isotopic cluster centroids.

### double LowMassDeconvolverParameters::clusterShapeTolerance

This float value (by default set to 0.7) is used at the end of the process described below:

When comparing the relative intensity of the observed vs theoretical isotopic cluster centroids, two-by-tow (isotopologues 0, then isotopologues 1), the following value is the tolerance that is accepted for a deviation in the observed centroid intensity with respect to the theoretical intensty. For example 0.6 would mean: "tolerate that the intensity difference between observed and theoretical isotopologues at position 0 of the cluster be up to (0.6 * theoretical intensity): if (abs(obs_intensity - theo_intensity) > 0.6 * theoretical intensity -> REJECT.

### bool LowMassDeconvolverParameters::fullHeavyIsotopeLabelling

This variable holds the flag that indicates that the mass spectral data were obtained for heavy isotope labelling (which changes the way mass spectral data are looked into because the isotopic cluster shapes are inverted.

### int LowMassDeconvolverParameters::maxCharge

This variable holds the maximum charge deconvolved mass peaks may have.

### int LowMassDeconvolverParameters::maxIsotopicClusterMatches

This variable holds the maximum number of matches between the calculated isotopic cluster centroids and the input (experimental, or observed) mass data centroids.

### double LowMassDeconvolverParameters::maxMass

This variable holds the maximum mass deconvolved mass peaks may have.

### int LowMassDeconvolverParameters::minCharge

This variable holds the minimum charge deconvolved mass peaks may have.

### double LowMassDeconvolverParameters::minIntensity

This variable holds the minimum intensity signal must have to be taken into account in the processing.

Typically this value would be just above the noise signal.

### int LowMassDeconvolverParameters::minIsotopicClusterMatches

This variable holds the minimum number of matches between the calculated isotopic cluster centroids and the input (experimental, or observed) mass data centroids.

### double LowMassDeconvolverParameters::minMass

This variable holds the minimum mass deconvolved mass peaks may have.

### double LowMassDeconvolverParameters::minPearsonCorrelationScore

This float value (by default set to 0.3) is the minimum value to be obtained when computing the Pearson correlation between the centroids of the calculated isotopic cluster and the centroids from the matching input mass data. The Pearson correlation involves the comparison of the intensities of the different isotopic cluster's centroids in the observed centroided isotopic cluster and in the calculated isotopic cluster.

### double LowMassDeconvolverParameters::ppmMassTolerance

This variable holds the tolerance in part-per-million of the mass matches.

For a tight tolerance, use 3-5 ppm.

### QString LowMassDeconvolverParameters::processingDetailsLogFilePath

This variable holds the path to the file in which all the processing details are stored for forensic analysis of the whole deconvolution process.

### double LowMassDeconvolverParameters::totalClusterIntensityTolerance

This float value (by default set to 0.5) is used at the end of the process described below:

When a set of matches has occurred between a given theoretical cluster and the corresponding matching input centroided mass spectrum centroids, there might be a discrepancy between the sum of the intensities of the theoretical cluster matched centroids and the intensities of the corresponding input matched centroids. Of course the intensities are normalized to the ratio between the intensity of the monoisotopic (highest probability) theoretical cluster centroid and that of the matched input centroid. The absolute difference between the summed observed intensities and the summed theoretical intensity divided by the summed theoretical intensities reflect the proportion of observed or theoretical signal that deviates from the other. If that proportion is beyond this parameter, then there is too big a mismatch between the theoretical and the observed clusters intensities.