OpenMS  2.5.0
OpenSwathScores.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2020.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Hannes Roest $
32 // $Authors: Hannes Roest $
33 // --------------------------------------------------------------------------
34 
35 #pragma once
36 
37 #include <OpenMS/OpenMSConfig.h>
38 #include <OpenMS/CONCEPT/Types.h>
39 
41 #include <vector>
42 
43 namespace OpenMS
44 {
45 
50  struct OPENMS_DLLAPI OpenSwath_Scores_Usage
51  {
52  bool use_coelution_score_ = true;
53  bool use_shape_score_ = true;
54  bool use_rt_score_ = true;
55  bool use_library_score_ = true;
56  bool use_elution_model_score_ = true;
57  bool use_intensity_score_ = true;
58  bool use_total_xic_score_ = true;
59  bool use_total_mi_score_ = true;
60  bool use_nr_peaks_score_ = true;
61  bool use_sn_score_ = true;
62  bool use_mi_score_ = true;
63  bool use_dia_scores_ = true;
64  bool use_sonar_scores = true;
65  bool use_im_scores = true;
66  bool use_ms1_correlation = true;
67  bool use_ms1_fullscan = true;
68  bool use_ms1_mi = true;
69  bool use_uis_scores = true;
70  };
71 
80  struct OPENMS_DLLAPI OpenSwath_Scores
81  {
82  double elution_model_fit_score = 0;
83  double library_corr = 0;
84  double library_norm_manhattan = 0;
85  double library_rootmeansquare = 0;
86  double library_sangle = 0;
87  double norm_rt_score = 0;
88 
89  double isotope_correlation = 0;
90  double isotope_overlap = 0;
91  double massdev_score = 0;
92  double xcorr_coelution_score = 0;
93  double xcorr_shape_score = 0;
94 
95  double yseries_score = 0;
96  double bseries_score = 0;
97  double log_sn_score = 0;
98 
99  double weighted_coelution_score = 0;
100  double weighted_xcorr_shape = 0;
101  double weighted_massdev_score = 0;
102 
103  double ms1_xcorr_coelution_score = -1;
104  double ms1_xcorr_coelution_contrast_score = 0;
105  double ms1_xcorr_coelution_combined_score = 0;
106  double ms1_xcorr_shape_score = -1;
107  double ms1_xcorr_shape_contrast_score = 0;
108  double ms1_xcorr_shape_combined_score = 0;
109  double ms1_ppm_score = 0;
110  double ms1_isotope_correlation = 0;
111  double ms1_isotope_overlap = 0;
112  double ms1_mi_score = -1;
113  double ms1_mi_contrast_score = 0;
114  double ms1_mi_combined_score = 0;
115 
116  double sonar_sn = 0;
117  double sonar_diff = 0;
118  double sonar_trend = 0;
119  double sonar_rsq = 0;
120  double sonar_shape = 0;
121  double sonar_lag = 0;
122 
123  double im_xcorr_coelution_score = 0;
124  double im_xcorr_shape_score = 0;
125  double im_delta_score = 0;
126  double im_ms1_delta_score = 0;
127  double im_drift = 0;
128  double im_drift_weighted = 0;
129  double im_ms1_contrast_coelution = 0;
130  double im_ms1_contrast_shape = 0;
131  double im_ms1_sum_contrast_coelution = 0;
132  double im_ms1_sum_contrast_shape = 0;
133 
134  double library_manhattan = 0;
135  double library_dotprod = 0;
136  double intensity = 0;
137  double total_xic = 0;
138  double nr_peaks = 0;
139  double sn_ratio = 0;
140  double mi_score = 0;
141  double weighted_mi_score = 0;
142 
143  double rt_difference = 0;
144  double normalized_experimental_rt = 0;
145  double raw_rt_score = 0;
146 
147  double dotprod_score_dia = 0;
148  double manhatt_score_dia = 0;
149 
150  OpenSwath_Scores() = default;
151 
152  double get_quick_lda_score(double library_corr_,
153  double library_norm_manhattan_,
154  double norm_rt_score_,
155  double xcorr_coelution_score_,
156  double xcorr_shape_score_,
157  double log_sn_score_) const;
158 
169  double calculate_lda_prescore(const OpenSwath_Scores& scores) const;
170 
179  double calculate_lda_single_transition(const OpenSwath_Scores& scores) const;
180 
188  double calculate_swath_lda_prescore(const OpenSwath_Scores& scores) const;
189 
190  };
191 
192  struct OPENMS_DLLAPI OpenSwath_Ind_Scores
193  {
194  int ind_num_transitions = 0;
195  std::vector<OpenMS::String> ind_transition_names;
196  std::vector<double> ind_isotope_correlation;
197  std::vector<double> ind_isotope_overlap;
198  std::vector<double> ind_massdev_score;
199  std::vector<double> ind_xcorr_coelution_score;
200  std::vector<double> ind_xcorr_shape_score;
201  std::vector<double> ind_log_sn_score;
202  std::vector<double> ind_area_intensity;
203  std::vector<double> ind_total_area_intensity;
204  std::vector<double> ind_intensity_score;
205  std::vector<double> ind_apex_intensity;
206  std::vector<double> ind_total_mi;
207  std::vector<double> ind_log_intensity;
208  std::vector<double> ind_intensity_ratio;
209  std::vector<double> ind_mi_ratio;
210  std::vector<double> ind_mi_score;
211 
212  OpenSwath_Ind_Scores() = default;
213 
214  };
215 
216 }
217 
218 
std::vector< OpenMS::String > ind_transition_names
Definition: OpenSwathScores.h:195
std::vector< double > ind_intensity_score
Definition: OpenSwathScores.h:204
std::vector< double > ind_isotope_overlap
Definition: OpenSwathScores.h:197
std::vector< double > ind_log_intensity
Definition: OpenSwathScores.h:207
A structure to store which scores should be used by the OpenSWATH Algorithm.
Definition: OpenSwathScores.h:50
std::vector< double > ind_log_sn_score
Definition: OpenSwathScores.h:201
std::vector< double > ind_massdev_score
Definition: OpenSwathScores.h:198
std::vector< double > ind_intensity_ratio
Definition: OpenSwathScores.h:208
std::vector< double > ind_mi_score
Definition: OpenSwathScores.h:210
Definition: OpenSwathScores.h:192
std::vector< double > ind_xcorr_shape_score
Definition: OpenSwathScores.h:200
std::vector< double > ind_total_area_intensity
Definition: OpenSwathScores.h:203
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
std::vector< double > ind_area_intensity
Definition: OpenSwathScores.h:202
A structure to hold the different scores computed by OpenSWATH.
Definition: OpenSwathScores.h:80
std::vector< double > ind_xcorr_coelution_score
Definition: OpenSwathScores.h:199
std::vector< double > ind_apex_intensity
Definition: OpenSwathScores.h:205
std::vector< double > ind_isotope_correlation
Definition: OpenSwathScores.h:196
std::vector< double > ind_mi_ratio
Definition: OpenSwathScores.h:209
std::vector< double > ind_total_mi
Definition: OpenSwathScores.h:206