OpenMS  2.7.0
List of all members
MSSim Class Reference

Central class for simulation of mass spectrometry experiments. More...

#include <OpenMS/SIMULATION/MSSim.h>

Inheritance diagram for MSSim:
[legend]
Collaboration diagram for MSSim:
[legend]

Constructors and Destructors

SimTypes::MSSimExperiment experiment_
 Holds the simulated data. More...
 
SimTypes::MSSimExperiment peak_map_
 Holds the ground-truth on generated peaks positions and intensities. More...
 
SimTypes::FeatureMapSimVector feature_maps_
 Holds the ground-truth on generated features. More...
 
ConsensusMap consensus_map_
 Holds consensus ground-truth about the charge associations. More...
 
SimTypes::FeatureMapSim contaminants_map_
 Holds the ground-truth on generated contaminants. More...
 
BaseLabelerlabeler_
 Labeling functionality. More...
 
 MSSim ()
 Default constructor. More...
 
 ~MSSim () override
 Destructor. More...
 
void simulate (SimTypes::MutableSimRandomNumberGeneratorPtr rnd_gen, SimTypes::SampleChannels &peptides)
 General purpose function to simulate a mass spectrometry run. More...
 
const SimTypes::MSSimExperimentgetExperiment () const
 Access the simulated experiment. More...
 
const SimTypes::FeatureMapSimgetSimulatedFeatures () const
 Access the simulated features. More...
 
ConsensusMapgetChargeConsensus ()
 Access the charge consensus map of simulated features. More...
 
const SimTypes::FeatureMapSimgetContaminants () const
 Access the contaminants feature map of simulated features. More...
 
ConsensusMapgetLabelingConsensus ()
 Access the labeling consensus map of simulated features. More...
 
const SimTypes::MSSimExperimentgetPeakMap () const
 Access the picked (centroided) experiment. More...
 
void getIdentifications (std::vector< ProteinIdentification > &proteins, std::vector< PeptideIdentification > &peptides) const
 Access the simulated identifications (proteins and peptides) More...
 
void getMS2Identifications (std::vector< ProteinIdentification > &proteins, std::vector< PeptideIdentification > &peptides) const
 Access the simulated MS2 identifications (proteins and peptides) More...
 
void getFeatureIdentifications (std::vector< ProteinIdentification > &proteins, std::vector< PeptideIdentification > &peptides) const
 Access the simulated identifications (proteins and peptides) from feature annotations. More...
 
Param getParameters () const
 Returns the default parameters for simulation including the labeling technique with name labeling_name. More...
 
void syncParams_ (Param &p, bool to_outer)
 handle global params More...
 
void createFeatureMap_ (const SimTypes::SampleProteins &peptides, SimTypes::FeatureMapSim &features, Size map_index)
 Convert a list of peptides with given abundance values into a FeatureMap. More...
 
void updateMembers_ () override
 Synchronize members with param class. More...
 

Additional Inherited Members

- Public Types inherited from ProgressLogger
enum  LogType { CMD , GUI , NONE }
 Possible log types. More...
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const String &name)
 Constructor with name that is displayed in error messages. More...
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor. More...
 
virtual ~DefaultParamHandler ()
 Destructor. More...
 
virtual DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () const
 Non-mutable access to the name. More...
 
void setName (const String &name)
 Mutable access to the name. More...
 
const std::vector< String > & getSubsections () const
 Non-mutable access to the registered subsections. More...
 
- Public Member Functions inherited from ProgressLogger
 ProgressLogger ()
 Constructor. More...
 
virtual ~ProgressLogger ()
 Destructor. More...
 
 ProgressLogger (const ProgressLogger &other)
 Copy constructor. More...
 
ProgressLoggeroperator= (const ProgressLogger &other)
 Assignment Operator. More...
 
void setLogType (LogType type) const
 Sets the progress log that should be used. The default type is NONE! More...
 
LogType getLogType () const
 Returns the type of progress log being used. More...
 
void startProgress (SignedSize begin, SignedSize end, const String &label) const
 Initializes the progress display. More...
 
void setProgress (SignedSize value) const
 Sets the current progress. More...
 
void endProgress () const
 Ends the progress display. More...
 
void nextProgress () const
 increment progress by 1 (according to range begin-end) More...
 
- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &prefix="")
 Writes all parameters to meta values. More...
 
- Protected Member Functions inherited from DefaultParamHandler
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 
- Static Protected Member Functions inherited from ProgressLogger
static String logTypeToFactoryName_ (LogType type)
 Return the name of the factory product used for this log type. More...
 
- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters. More...
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes! More...
 
std::vector< Stringsubsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes! More...
 
String error_name_
 Name that is displayed in error messages during the parameter checking. More...
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;. More...
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;. More...
 
- Protected Attributes inherited from ProgressLogger
LogType type_
 
time_t last_invoke_
 
ProgressLoggerImplcurrent_logger_
 
- Static Protected Attributes inherited from ProgressLogger
static int recursion_depth_
 

Detailed Description

Central class for simulation of mass spectrometry experiments.

This implementation is an extended and rewritten version of the concepts and ideas presented in:

Ole Schulz-Trieglaff, Nico Pfeifer, Clemens Gropl, Oliver Kohlbacher, and Knut Reinert.
LC-MSsim - A simulation software for liquid chromatography mass spectrometry data.
BMC Bioinformatics 9:423, 2008.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
Digestion:enzyme stringTrypsin Asp-N, Asp-N/B, Asp-N_ambic, Chymotrypsin, Chymotrypsin/P, CNBr, Formic_acid, Lys-C, Lys-N, Lys-C/P, PepsinA, TrypChymo, V8-DE, Trypsin/P, V8-E, Alpha-lytic protease, leukocyte elastase, proline endopeptidase, Arg-C/P, glutamyl endopeptidase, Trypsin, Arg-C, 2-iodobenzoate, iodosobenzoate, staphylococcal protease/D, proline-endopeptidase/HKR, Glu-C+P, PepsinA + P, cyanogen-bromide, Clostripain/P, elastase-trypsin-chymotrypsin, no cleavage, unspecific cleavageEnzyme to use for digestion (select 'no cleavage' to skip digestion)
Digestion:model stringnaive trained, naiveThe cleavage model to use for digestion. 'Trained' is based on a log likelihood model (see DOI:10.1021/pr060507u).
Digestion:min_peptide_length int3 min: 1Minimum peptide length after digestion (shorter ones will be discarded)
Digestion:model_trained:threshold float0.5 min: -2.0 max: 4.0Model threshold for calling a cleavage. Higher values increase the number of cleavages. -2 will give no cleavages, +4 almost full cleavage.
Digestion:model_naive:missed_cleavages int1 min: 0Maximum number of missed cleavages considered. All possible resulting peptides will be created.
RT:rt_column stringHPLC none, HPLC, CEModelling of an RT or CE column
RT:auto_scale stringtrue true, falseScale predicted RT's/MT's to given 'total_gradient_time'? If 'true', for CE this means that 'CE:lenght_d', 'CE:length_total', 'CE:voltage' have no influence.
RT:total_gradient_time float2500.0 min: 1.0e-05The duration [s] of the gradient.
RT:sampling_rate float2.0 min: 0.01 max: 60.0Time interval [s] between consecutive scans
RT:scan_window:min float500.0 min: 0.0Start of RT Scan Window [s]
RT:scan_window:max float1500.0 min: 1.0End of RT Scan Window [s]
RT:variation:feature_stddev int3  Standard deviation of shift in retention time [s] from predicted model (applied to every single feature independently)
RT:variation:affine_offset int0  Global offset in retention time [s] from predicted model
RT:variation:affine_scale int1  Global scaling in retention time from predicted model
RT:column_condition:distortion int0 min: 0 max: 10Distortion of the elution profiles. Good presets are 0 for a perfect elution profile, 1 for a slightly distorted elution profile etc... For trapping instruments (e.g. Orbitrap) distortion should be >4.
RT:profile_shape:width:value float9.0 min: 0.0Width of the Exponential Gaussian Hybrid distribution shape of the elution profile. This does not correspond directly to the width in [s].
RT:profile_shape:width:variance float1.6 min: 0.0Random component of the width (set to 0 to disable randomness), i.e. scale parameter for the lorentzian variation of the variance (Note: The scale parameter has to be >= 0).
RT:profile_shape:skewness:value float0.1  Asymmetric component of the EGH. Higher absolute(!) values lead to more skewness (negative values cause fronting, positive values cause tailing). Tau parameter of the EGH, i.e. time constant of the exponential decay of the Exponential Gaussian Hybrid distribution shape of the elution profile.
RT:profile_shape:skewness:variance float0.3 min: 0.0Random component of skewness (set to 0 to disable randomness), i.e. scale parameter for the lorentzian variation of the time constant (Note: The scale parameter has to be > 0).
RT:HPLC:model_file stringexamples/simulation/RTPredict.model  SVM model for retention time prediction
RT:CE:pH float3.0 min: 0.0 max: 14.0pH of buffer
RT:CE:alpha float0.5 min: 0.0 max: 1.0Exponent Alpha used to calculate mobility
RT:CE:mu_eo float0.0 min: 0.0 max: 5.0Electroosmotic flow
RT:CE:lenght_d float70.0 min: 0.0 max: 1000.0Length of capillary [cm] from injection site to MS
RT:CE:length_total float75.0 min: 0.0 max: 1000.0Total length of capillary [cm]
RT:CE:voltage float1000.0 min: 0.0Voltage applied to capillary
Detectability:dt_simulation_on stringfalse true, falseModelling detectibility enabled? This can serve as a filter to remove peptides which ionize badly, thus reducing peptide count
Detectability:min_detect float0.5  Minimum peptide detectability accepted. Peptides with a lower score will be removed
Detectability:dt_model_file stringexamples/simulation/DTPredict.model  SVM model for peptide detectability prediction
Ionization:esi:ionized_residues string list[Arg, Lys, His] Ala, Cys, Asp, Glu, Phe, Gly, His, Ile, Lys, Leu, Met, Asn, Pro, Gln, Arg, Sec, Ser, Thr, Val, Trp, TyrList of residues (as three letter code) that will be considered during ES ionization. The N-term is always assumed to carry a charge. This parameter will be ignored during MALDI ionization
Ionization:esi:charge_impurity string list[H+:1]  List of charged ions that contribute to charge with weight of occurrence (their sum is scaled to 1 internally), e.g. ['H:1'] or ['H:0.7' 'Na:0.3'], ['H:4' 'Na:1'] (which internally translates to ['H:0.8' 'Na:0.2'])
Ionization:esi:max_impurity_set_size int3  Maximal @#combinations of charge impurities allowed (each generating one feature) per charge state. E.g. assuming charge=3 and this parameter is 2, then we could choose to allow '3H+, 2H+Na+' features (given a certain 'charge_impurity' constraints), but no '3H+, 2H+Na+, 3Na+'
Ionization:esi:ionization_probability float0.8  Probability for the binomial distribution of the ESI charge states
Ionization:maldi:ionization_probabilities float list[0.9, 0.1, 0.0]  List of probabilities for different charge states (starting at charge=1, 2, ...) during MALDI ionization (the list must sum up to 1.0)
Ionization:mz:lower_measurement_limit float200.0 min: 0.0Lower m/z detector limit
Ionization:mz:upper_measurement_limit float1200.0 min: 0.0Upper m/z detector limit
RawSignal:enabled stringtrue true, falseEnable RAW signal simulation? (select 'false' if you only need feature-maps)
RawSignal:peak_shape stringGaussian Gaussian, LorentzianPeak Shape used around each isotope peak (be aware that the area under the curve is constant for both types, but the maximal height will differ (~ 2:3 = Lorentz:Gaussian) due to the wider base of the Lorentzian
RawSignal:resolution:value int50000  Instrument resolution at 400 Th
RawSignal:resolution:type stringlinear constant, linear, sqrtHow does resolution change with increasing m/z?! QTOFs usually show 'constant' behavior, FTs have linear degradation, and on Orbitraps the resolution decreases with square root of mass
RawSignal:baseline:scaling float0.0 min: 0.0Scale of baseline. Set to 0 to disable simulation of baseline
RawSignal:baseline:shape float0.5 min: 0.0The baseline is modeled by an exponential probability density function (pdf) with f(x) = shape*e^(- shape*x)
RawSignal:mz:sampling_points int3 min: 2Number of raw data points per FWHM of the peak
RawSignal:contaminants:file stringexamples/simulation/contaminants.csv  Contaminants file with sum formula and absolute RT interval. See 'OpenMS/examples/simulation/contaminants.txt' for details
RawSignal:variation:mz:error_mean float0.0  Average systematic m/z error (in Da)
RawSignal:variation:mz:error_stddev float0.0  Standard deviation for m/z errors. Set to 0 to disable simulation of m/z errors
RawSignal:variation:intensity:scale float100.0 min: 0.0Constant scale factor of the feature intensity. Set to 1.0 to get the real intensity values provided in the FASTA file
RawSignal:variation:intensity:scale_stddev float0.0 min: 0.0Standard deviation of peak intensity (relative to the scaled peak height). Set to 0 to get simple rescaled intensities
RawSignal:noise:shot:rate float0.0 min: 0.0Poisson rate of shot noise per unit m/z (random peaks in m/z, where the number of peaks per unit m/z follows a Poisson distribution). Set this to 0 to disable simulation of shot noise
RawSignal:noise:shot:intensity-mean float1.0  Shot noise intensity mean (exponentially distributed with given mean)
RawSignal:noise:white:mean float0.0  Mean value of white noise (Gaussian) being added to each *measured* signal intensity
RawSignal:noise:white:stddev float0.0  Standard deviation of white noise being added to each *measured* signal intensity
RawSignal:noise:detector:mean float0.0  Mean intensity value of the detector noise (Gaussian distribution)
RawSignal:noise:detector:stddev float0.0  Standard deviation of the detector noise (Gaussian distribution)
RawTandemSignal:status stringdisabled disabled, precursor, MS^ECreate Tandem-MS scans?
RawTandemSignal:tandem_mode int0 min: 0 max: 2Algorithm to generate the tandem-MS spectra. 0 - fixed intensities, 1 - SVC prediction (abundant/missing), 2 - SVR prediction of peak intensity
RawTandemSignal:svm_model_set_file stringexamples/simulation/SvmModelSet.model  File containing the filenames of SVM Models for different charge variants
RawTandemSignal:Precursor:ms2_spectra_per_rt_bin int5 min: 1Number of allowed MS/MS spectra in a retention time bin.
RawTandemSignal:Precursor:min_mz_peak_distance float2.0 min: 1.0e-04The minimal distance (in Th) between two peaks for concurrent selection for fragmentation. Also used to define the m/z width of an exclusion window (distance +/- from m/z of precursor). If you set this lower than the isotopic envelope of a peptide, you might get multiple fragment spectra pointing to the same precursor.
RawTandemSignal:Precursor:mz_isolation_window float2.0 min: 0.0All peaks within a mass window (in Th) of a selected peak are also selected for fragmentation.
RawTandemSignal:Precursor:exclude_overlapping_peaks stringfalse true, falseIf true, overlapping or nearby peaks (within 'min_mz_peak_distance') are excluded for selection.
RawTandemSignal:Precursor:charge_filter int list[2, 3] min: 1 max: 5Charges considered for MS2 fragmentation.
RawTandemSignal:Precursor:Exclusion:use_dynamic_exclusion stringfalse true, falseIf true dynamic exclusion is applied.
RawTandemSignal:Precursor:Exclusion:exclusion_time float100.0 min: 0.0The time (in seconds) a feature is excluded.
RawTandemSignal:Precursor:ProteinBasedInclusion:max_list_size int1000 min: 1The maximal number of precursors in the inclusion list.
RawTandemSignal:Precursor:ProteinBasedInclusion:rt:min_rt float960.0 min: 0.0Minimal rt in seconds.
RawTandemSignal:Precursor:ProteinBasedInclusion:rt:max_rt float3840.0 min: 0.0Maximal rt in seconds.
RawTandemSignal:Precursor:ProteinBasedInclusion:rt:rt_step_size float30.0 min: 1.0rt step size in seconds.
RawTandemSignal:Precursor:ProteinBasedInclusion:rt:rt_window_size int100 min: 1rt window size in seconds.
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:min_protein_id_probability float0.95 min: 0.0 max: 1.0Minimal protein probability for a protein to be considered identified.
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:min_pt_weight float0.5 min: 0.0 max: 1.0Minimal pt weight of a precursor
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:min_mz float500.0 min: 0.0Minimal mz to be considered in protein based LP formulation.
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:max_mz float5000.0 min: 0.0Minimal mz to be considered in protein based LP formulation.
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:use_peptide_rule stringfalse true, falseUse peptide rule instead of minimal protein id probability
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:min_peptide_ids int2 min: 1If use_peptide_rule is true, this parameter sets the minimal number of peptide ids for a protein id
RawTandemSignal:Precursor:ProteinBasedInclusion:thresholds:min_peptide_probability float0.95 min: 0.0 max: 1.0If use_peptide_rule is true, this parameter sets the minimal probability for a peptide to be safely identified
RawTandemSignal:MS_E:add_single_spectra stringfalse true, falseIf true, the MS2 spectra for each peptide signal are included in the output (might be a lot). They will have a meta value 'MSE_DebugSpectrum' attached, so they can be filtered out. Native MS_E spectra will have 'MSE_Spectrum' instead.
RawTandemSignal:TandemSim:Simple:isotope_model stringnone none, coarse, fineModel to use for isotopic peaks ('none' means no isotopic peaks are added, 'coarse' adds isotopic peaks in unit mass distance, 'fine' uses the hyperfine isotopic generator to add accurate isotopic peaks. Note that adding isotopic peaks is very slow.
RawTandemSignal:TandemSim:Simple:max_isotope int2  Defines the maximal isotopic peak which is added if 'isotope_model' is 'coarse'
RawTandemSignal:TandemSim:Simple:max_isotope_probability float0.05  Defines the maximal isotopic probability to cover if 'isotope_model' is 'fine'
RawTandemSignal:TandemSim:Simple:add_metainfo stringfalse true, falseAdds the type of peaks as metainfo to the peaks, like y8+, [M-H2O+2H]++
RawTandemSignal:TandemSim:Simple:add_losses stringfalse true, falseAdds common losses to those ion expect to have them, only water and ammonia loss is considered
RawTandemSignal:TandemSim:Simple:sort_by_position stringtrue true, falseSort output by position
RawTandemSignal:TandemSim:Simple:add_precursor_peaks stringfalse true, falseAdds peaks of the unfragmented precursor ion to the spectrum
RawTandemSignal:TandemSim:Simple:add_all_precursor_charges stringfalse true, falseAdds precursor peaks with all charges in the given range
RawTandemSignal:TandemSim:Simple:add_abundant_immonium_ions stringfalse true, falseAdd most abundant immonium ions
RawTandemSignal:TandemSim:Simple:add_first_prefix_ion stringfalse true, falseIf set to true e.g. b1 ions are added
RawTandemSignal:TandemSim:Simple:add_y_ions stringtrue true, falseAdd peaks of y-ions to the spectrum
RawTandemSignal:TandemSim:Simple:add_b_ions stringtrue true, falseAdd peaks of b-ions to the spectrum
RawTandemSignal:TandemSim:Simple:add_a_ions stringfalse true, falseAdd peaks of a-ions to the spectrum
RawTandemSignal:TandemSim:Simple:add_c_ions stringfalse true, falseAdd peaks of c-ions to the spectrum
RawTandemSignal:TandemSim:Simple:add_x_ions stringfalse true, falseAdd peaks of x-ions to the spectrum
RawTandemSignal:TandemSim:Simple:add_z_ions stringfalse true, falseAdd peaks of z-ions to the spectrum
RawTandemSignal:TandemSim:Simple:y_intensity float1.0  Intensity of the y-ions
RawTandemSignal:TandemSim:Simple:b_intensity float1.0  Intensity of the b-ions
RawTandemSignal:TandemSim:Simple:a_intensity float1.0  Intensity of the a-ions
RawTandemSignal:TandemSim:Simple:c_intensity float1.0  Intensity of the c-ions
RawTandemSignal:TandemSim:Simple:x_intensity float1.0  Intensity of the x-ions
RawTandemSignal:TandemSim:Simple:z_intensity float1.0  Intensity of the z-ions
RawTandemSignal:TandemSim:Simple:relative_loss_intensity float0.1  Intensity of loss ions, in relation to the intact ion intensity
RawTandemSignal:TandemSim:Simple:precursor_intensity float1.0  Intensity of the precursor peak
RawTandemSignal:TandemSim:Simple:precursor_H2O_intensity float1.0  Intensity of the H2O loss peak of the precursor
RawTandemSignal:TandemSim:Simple:precursor_NH3_intensity float1.0  Intensity of the NH3 loss peak of the precursor
RawTandemSignal:TandemSim:SVM:add_isotopes stringfalse true, falseIf set to 1 isotope peaks of the product ion peaks are added
RawTandemSignal:TandemSim:SVM:max_isotope int2  Defines the maximal isotopic peak which is added, add_isotopes must be set to 1
RawTandemSignal:TandemSim:SVM:add_metainfo stringfalse true, falseAdds the type of peaks as metainfo to the peaks, like y8+, [M-H2O+2H]++
RawTandemSignal:TandemSim:SVM:add_first_prefix_ion stringfalse true, falseIf set to true e.g. b1 ions are added
RawTandemSignal:TandemSim:SVM:hide_y_ions stringfalse true, falseAdd peaks of y-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_y2_ions stringfalse true, falseAdd peaks of y-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_b_ions stringfalse true, falseAdd peaks of b-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_b2_ions stringfalse true, falseAdd peaks of b-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_a_ions stringfalse true, falseAdd peaks of a-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_c_ions stringfalse true, falseAdd peaks of c-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_x_ions stringfalse true, falseAdd peaks of x-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_z_ions stringfalse true, falseAdd peaks of z-ions to the spectrum
RawTandemSignal:TandemSim:SVM:hide_losses stringfalse true, falseAdds common losses to those ion expect to have them, only water and ammonia loss is considered
RawTandemSignal:TandemSim:SVM:y_intensity float1.0  Intensity of the y-ions
RawTandemSignal:TandemSim:SVM:b_intensity float1.0  Intensity of the b-ions
RawTandemSignal:TandemSim:SVM:a_intensity float1.0  Intensity of the a-ions
RawTandemSignal:TandemSim:SVM:c_intensity float1.0  Intensity of the c-ions
RawTandemSignal:TandemSim:SVM:x_intensity float1.0  Intensity of the x-ions
RawTandemSignal:TandemSim:SVM:z_intensity float1.0  Intensity of the z-ions
RawTandemSignal:TandemSim:SVM:relative_loss_intensity float0.1  Intensity of loss ions, in relation to the intact ion intensity
Global:ionization_type stringESI MALDI, ESIType of Ionization (MALDI or ESI)

Note:
See also
DetectabilitySimulation
DigestSimulation
IonizationSimulation
RawMSSignalSimulation
RTSimulation

Constructor & Destructor Documentation

◆ MSSim()

MSSim ( )

Default constructor.

◆ ~MSSim()

~MSSim ( )
override

Destructor.

Member Function Documentation

◆ createFeatureMap_()

void createFeatureMap_ ( const SimTypes::SampleProteins peptides,
SimTypes::FeatureMapSim features,
Size  map_index 
)
protected

Convert a list of peptides with given abundance values into a FeatureMap.

◆ getChargeConsensus()

ConsensusMap& getChargeConsensus ( )

Access the charge consensus map of simulated features.

◆ getContaminants()

const SimTypes::FeatureMapSim& getContaminants ( ) const

Access the contaminants feature map of simulated features.

◆ getExperiment()

const SimTypes::MSSimExperiment& getExperiment ( ) const

Access the simulated experiment.

◆ getFeatureIdentifications()

void getFeatureIdentifications ( std::vector< ProteinIdentification > &  proteins,
std::vector< PeptideIdentification > &  peptides 
) const

Access the simulated identifications (proteins and peptides) from feature annotations.

Parameters
proteinsWill be filled with a single ProteinIdentification holding all ProteinHits.
peptidesWill be filled with PeptideIdentifications for all simulated features.

◆ getIdentifications()

void getIdentifications ( std::vector< ProteinIdentification > &  proteins,
std::vector< PeptideIdentification > &  peptides 
) const

Access the simulated identifications (proteins and peptides)

If an MS2 signal has been simulated, identifications are generated based on their corresponding MS2 spectra. If MS2 simulation has been disabled, peptide IDs are generated from feature annotations. Otherwise, the -out_id idXML file would be empty if MS2 simulation is disabled (which is the default).

Parameters
proteinsWill be filled with a single ProteinIdentification holding all ProteinHits.
peptidesWill be filled with PeptideIdentifications.

◆ getLabelingConsensus()

ConsensusMap& getLabelingConsensus ( )

Access the labeling consensus map of simulated features.

◆ getMS2Identifications()

void getMS2Identifications ( std::vector< ProteinIdentification > &  proteins,
std::vector< PeptideIdentification > &  peptides 
) const

Access the simulated MS2 identifications (proteins and peptides)

Parameters
proteinsWill be filled with a single ProteinIdentification holding all ProteinHits used in the simulated MS2 spectra.
peptidesWill be filled with PeptideIdentifications for each simulated MS2 spectra holding all contributing peptides scored by their intensity contribution.

◆ getParameters()

Param getParameters ( ) const

Returns the default parameters for simulation including the labeling technique with name labeling_name.

◆ getPeakMap()

const SimTypes::MSSimExperiment& getPeakMap ( ) const

Access the picked (centroided) experiment.

◆ getSimulatedFeatures()

const SimTypes::FeatureMapSim& getSimulatedFeatures ( ) const

Access the simulated features.

◆ simulate()

void simulate ( SimTypes::MutableSimRandomNumberGeneratorPtr  rnd_gen,
SimTypes::SampleChannels peptides 
)

General purpose function to simulate a mass spectrometry run.

Parameters
rnd_genrandom number generator which will be passed to the different classes
peptidesList of peptides and abundances that will be simulated

◆ syncParams_()

void syncParams_ ( Param p,
bool  to_outer 
)
protected

handle global params

◆ updateMembers_()

void updateMembers_ ( )
overrideprotectedvirtual

Synchronize members with param class.

Reimplemented from DefaultParamHandler.

Member Data Documentation

◆ consensus_map_

ConsensusMap consensus_map_
private

Holds consensus ground-truth about the charge associations.

◆ contaminants_map_

SimTypes::FeatureMapSim contaminants_map_
private

Holds the ground-truth on generated contaminants.

◆ experiment_

SimTypes::MSSimExperiment experiment_
private

Holds the simulated data.

◆ feature_maps_

SimTypes::FeatureMapSimVector feature_maps_
private

Holds the ground-truth on generated features.

◆ labeler_

BaseLabeler* labeler_
private

Labeling functionality.

◆ peak_map_

SimTypes::MSSimExperiment peak_map_
private

Holds the ground-truth on generated peaks positions and intensities.