diff --git a/CHANGELOG b/CHANGELOG index b5b2f6818cd..4064c589a74 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -17,6 +17,7 @@ PR - Pull Request (on GitHub), i.e. integration of a new feature or bugfix ---- OpenMS 3.1.0 (released: under development) ---- ------------------------------------------------------------------------------------------ +- Major change: removed the distinction between TOPP tool and util and the TOPP and UTIL build targets were merged to a single TOPP target. All utils are considered tools now and categorized as "Utilities". - Added SageAdapter. Support for standard identification tasks with sage (https://github.com/lazear/sage). - require some advanced instruction sets for x64 CPUs: SSE3 (g++/clang) or AVX (MSVC); and NEON for ARM64 CPUs (#6978) and report them via the OpenMSInfo tool (#7022) @@ -30,6 +31,7 @@ Cleanup of old/unused tools and code: - Removed PepNovoAdapter - Removed CompNovoAdapter and library code - Removed simplistic evaluation tools FFEval, LabeledEval, TransformationEvaluation +- Removed EnzymaticDigestionLogModel ------------------------------------------------------------------------------------------ ---- OpenMS 3.0 (released 7/2023) ---- diff --git a/doc/code_examples/Tutorial_PeakIntensityPredictor.cpp b/doc/code_examples/Tutorial_PeakIntensityPredictor.cpp deleted file mode 100644 index 4fda042c494..00000000000 --- a/doc/code_examples/Tutorial_PeakIntensityPredictor.cpp +++ /dev/null @@ -1,69 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- - -#include - -#include - -using namespace OpenMS; -using namespace std; - -Int main() -{ - //Create a vector for the predicted values that is large enough to hold them all - vector peptides; - peptides.push_back(AASequence::fromString("IVGLMPHPEHAVEK")); - peptides.push_back(AASequence::fromString("LADNISNAMQGISEATEPR")); - peptides.push_back(AASequence::fromString("ELDHSDTIEVIVNPEDIDYDAASEQAR")); - peptides.push_back(AASequence::fromString("AVDTVR")); - peptides.push_back(AASequence::fromString("AAWQVK")); - peptides.push_back(AASequence::fromString("FLGTQGR")); - peptides.push_back(AASequence::fromString("NYPSDWSDVDTK")); - peptides.push_back(AASequence::fromString("GSPSFGPESISTETWSAEPYGR")); - peptides.push_back(AASequence::fromString("TELGFDPEAHFAIDDEVIAHTR")); - - //Create new predictor model with vector of AASequences - PeakIntensityPredictor model; - - //Perform prediction with LLM model - vector predicted = model.predict(peptides); - - //for each element in peptides print sequence as well as corresponding predicted peak intensity value. - for (Size i = 0; i < peptides.size(); i++) - { - cout << "Intensity of " << peptides[i] << " is " << predicted[i] << endl; - } - - return 0; -} //end of main diff --git a/doc/code_examples/executables.cmake b/doc/code_examples/executables.cmake index f199aa568be..1fa96322452 100644 --- a/doc/code_examples/executables.cmake +++ b/doc/code_examples/executables.cmake @@ -37,7 +37,6 @@ Tutorial_TheoreticalSpectrumGenerator Tutorial_MorphologicalFilter Tutorial_Unlabeled Tutorial_typeAsString -Tutorial_PeakIntensityPredictor ) # -------------------------------------------------------------------------- diff --git a/share/OpenMS/CHEMISTRY/MissedCleavage.model b/share/OpenMS/CHEMISTRY/MissedCleavage.model deleted file mode 100644 index 4fcf54efdb3..00000000000 --- a/share/OpenMS/CHEMISTRY/MissedCleavage.model +++ /dev/null @@ -1,229 +0,0 @@ -### missed cleavage model for trypsin -### columns: -### residue position (0-8, 4|5 being cleavage site), residue type, p[cleaved model], p[missed model] -0 S 0.00155119425371577 -0.00721584368297066 -0 F 0.0101203450370329 -0.0499143795822267 -0 T 0.00437580160216219 -0.0207404654555115 -0 N 0.00863951037114175 -0.0421668411875381 -0 K -0.0426349905702423 0.155520296424895 -0 x 0 0 -0 Y -0.00523499887692041 0.0233253947565591 -0 E 0.00818034396259026 -0.039797629165997 -0 V 0.00493316169438667 -0.0234703056642569 -0 Z 0.0853437450703708 0 -0 Q -0.00238950679147767 0.0108374287670045 -0 M 0.00754132801219614 -0.0365259139536316 -0 C 0.01095597703868 -0.0543599833494246 -0 L 0.00188686459291307 -0.00879665556808435 -0 A -0.0049122447091631 0.0219309154288239 -0 W 0.00693320815473958 -0.0334395263233619 -0 X -0.011566267937686 0.0496159156380304 -0 P 0.0103237181563291 -0.0509913667336383 -0 Ct 0 0 -0 B 0.0853437450703708 0 -0 H 0.00578955397457641 -0.0277053940254705 -0 D 0.0141624132472289 -0.0719369441334252 -0 I 0.00384378298672882 -0.0181538887728747 -0 R -0.0559191548111558 0.192111114311861 -0 G -0.000318027050528464 0.00146155865238389 -0 Nt 0.0809346261653139 -1.2470492746235 -1 S -0.00188774397621617 0.00858895217038756 -1 F 0.0144613722136596 -0.0736193995313521 -1 T 0.00526322191736816 -0.0250966660897753 -1 N 0.0111926226367841 -0.0556288300737603 -1 K -0.044153635141278 0.159921600947166 -1 x 0 0 -1 Y 0.0152488432689032 -0.0780881261688707 -1 E -0.00222127914039957 0.0100851603709803 -1 V 0.00417320066605687 -0.0197532660165449 -1 Z 0.0853437450703708 0 -1 Q 0.00636975003212183 -0.0306030716008546 -1 M -0.00524147923293532 0.0233533371391882 -1 C 0.0148254346379286 -0.075678654240404 -1 L 0.00508630706016019 -0.0242240132320469 -1 A -0.00626781185306248 0.0277509980548175 -1 W 0.0181272910523906 -0.0948976405530249 -1 X -0.090747513985311 0.271464665254386 -1 P 0.0150543502357306 -0.0769793817145727 -1 Ct 0 0 -1 B 0.0853437450703708 0 -1 H 0.00455527468070269 -0.021617235705912 -1 D 0.0099568688324829 -0.0490509678757512 -1 I 0.00131189125848209 -0.00609311139032893 -1 R -0.0455394380519306 0.163886132848834 -1 G 0.000868058270173546 -0.00402007022809444 -1 Nt 0.0688146873864017 -0.679188613161495 -2 S -0.00179609780733301 0.00817672965188891 -2 F 0.0280184052564126 -0.159199188226274 -2 T -0.0022521384724719 0.0102232743918174 -2 N 0.010514806562435 -0.05200619945784 -2 K -0.0498530534413316 0.175921830105783 -2 x 0 0 -2 Y 0.0194801608035318 -0.103068708688225 -2 E 0.0028442937155881 -0.0133442628224803 -2 V 0.00917321806055152 -0.0449401919765487 -2 Z 0 0 -2 Q 0.012161600167981 -0.0608706268016039 -2 M 0.0057657018440194 -0.0275867644275067 -2 C 0.0219373168460715 -0.118382665495958 -2 L 0.0015271894185259 -0.00710306174657736 -2 A -0.00113516316915836 0.00518962066798522 -2 W 0.0254494100003613 -0.141415693210588 -2 X 0.0183969554397552 -0.0965121200402077 -2 P 0.00487552628651554 -0.0231870591559591 -2 Ct 0 0 -2 H 0.020885755843452 -0.111752086596945 -2 D 0.000929377266564833 -0.00430576272835574 -2 I -0.000352115411225422 0.00161786388127948 -2 R -0.0541455813655727 0.187463071487379 -2 G 0.000330198733098511 -0.00152385762818177 -2 Nt -0.00598639055684963 0.0265506115693381 -3 S 0.00120217171057805 -0.00557951790496735 -3 F 0.0181982754958097 -0.0953219453246492 -3 T 0.00746782714495857 -0.0361514776936105 -3 N 0.000459581898316416 -0.00212273527092521 -3 K -0.0497578863798243 0.175661135601301 -3 x 0 0 -3 Y 0.0168451463172139 -0.0873159356295266 -3 E 0.00491926832574982 -0.0234020070165263 -3 V 0.00952970722162894 -0.0468044755798308 -3 Z 0 0 -3 Q 0.0104019447570531 -0.05140647211982 -3 M -0.0101222284297051 0.0437912585812453 -3 C 0.0112312454730355 -0.055836336165553 -3 L 0.000930249394099852 -0.00430982772116158 -3 A 0.00392961759045261 -0.0185699461081312 -3 W 0.0354451553685568 -0.215820560584245 -3 X 0.0853437450703708 0 -3 P 0.0258005600513561 -0.143797826856209 -3 Ct 0 0 -3 H 0.00594142776223056 -0.0284616589594472 -3 D -0.0162973823115694 0.0680412256217175 -3 I 0.00565904209703786 -0.0270567632506103 -3 R -0.0538609149609292 0.186710603099994 -3 G -0.00346452584212206 0.0156073024880689 -3 Nt -0.190862666868579 0.421226985587719 -4 S 0 0 -4 F 0 0 -4 T 0 0 -4 N 0 0 -4 K -0.0106125875004242 0.045780112741825 -4 x 0 0 -4 Y 0 0 -4 E 0 0 -4 V 0 0 -4 Q 0 0 -4 M 0 0 -4 C 0 0 -4 L 0 0 -4 A 0 0 -4 W 0 0 -4 X 0 0 -4 P 0 0 -4 Ct 0 0 -4 H 0 0 -4 D 0 0 -4 I 0 0 -4 R 0.0112126601842253 -0.0557364696622383 -4 G 0 0 -4 Nt 0 0 -5 S -0.00414728931498034 0.0186037055032237 -5 F 0.0119920426834694 -0.0599479594033155 -5 T 0.0115728837855243 -0.0576769689205623 -5 N 0.0153786428896758 -0.0788299287119621 -5 K 0.00402270759345742 -0.0190217159063933 -5 x 0 0 -5 Y 0.0194284810017644 -0.1027532603019 -5 E -0.0124248587558356 0.053033404763815 -5 V 0.00681194613657833 -0.0328272141698239 -5 Z 0.0853437450703708 0 -5 Q 0.0218723992037776 -0.117969916479998 -5 M 0.0212654895269526 -0.114132974344623 -5 C 0.0173071318266984 -0.0900299925122872 -5 L 0.0147945517930332 -0.0755035242375552 -5 A 0.0186237213392114 -0.0978752075888718 -5 W 0.0306856368818309 -0.178586262592309 -5 X -0.0395949915379296 0.146525928646086 -5 P -1.408135429711 0.734415886060518 -5 Ct 0.0853437450703708 0 -5 H 0.0117663765407453 -0.0587235591508078 -5 D -0.007133815548037 0.0314193812682074 -5 I 0.0199421197114211 -0.105900364403556 -5 R -0.0206030273840874 0.0839923310796518 -5 G -8.20312810020782e-05 0.000377565111733786 -5 Nt 0 0 -6 S -0.00607359115820411 0.026922998856415 -6 F 0.0139395144782525 -0.0706875113660484 -6 T 0.00871709724548706 -0.0425687027718217 -6 N -0.00122862317011291 0.00561354121363955 -6 K -0.0148551046432945 0.0625277225670337 -6 x 0 0 -6 Y 0.0127667737830556 -0.0641827923770768 -6 E -0.0232307606334326 0.0933726218622424 -6 V 0.0173429094275379 -0.0902410077930348 -6 Q 0.0101618904516775 -0.0501341304713985 -6 M -0.0087793419126029 0.0382858518051329 -6 C 0.0182362544270455 -0.0955491607057649 -6 L 0.00748424375471079 -0.0362350755152361 -6 A 0.00420022515410901 -0.0198847901320386 -6 W 0.00282917821310596 -0.0132720175157153 -6 X 0.00616249902274598 -0.0295653304095948 -6 P -0.0151176661385177 0.0635380307218723 -6 Ct -0.0332362471694817 0.126871240649617 -6 B 0.0853437450703708 0 -6 H 0.0184516214958325 -0.0968402609563878 -6 D -0.0118184470690743 0.0506231703962375 -6 I 0.0138750181207925 -0.0703267734771773 -6 R -0.0245971841699276 0.098149568952218 -6 G -0.00290995754241101 0.0131546928606713 -6 Nt 0 0 -7 S 0.00688957312924048 -0.0332190722669007 -7 F 0.00468781345674047 -0.0222660916680952 -7 T 0.00208777500908572 -0.00974617373848127 -7 N 0.00644852823507257 -0.0309983090244586 -7 K -0.0267866580116544 0.105665409640322 -7 x 0 0 -7 Y 0.00498714111480968 -0.0237357867488708 -7 E 0.00181031130741747 -0.00843551965998847 -7 V 0.00479136512294075 -0.0227738520402987 -7 Z 0 0 -7 Q 0.0109962160318145 -0.0545754266914563 -7 M -0.013142656172641 0.0558648649150308 -7 C 0.0058884097224481 -0.0281974726429136 -7 L 0.00219706314393281 -0.0102637359244067 -7 A 3.53002332739628e-05 -0.000162599309729288 -7 W 0.00730387808155344 -0.0353176592986856 -7 X -0.0395949915379296 0.146525928646086 -7 P 0.000582621641907323 -0.00269318400929317 -7 Ct -0.00965307329340537 0.0418777246061289 -7 H 0.0133219958800885 -0.0672480561621474 -7 D 0.00654705296026112 -0.0314932243949499 -7 I 0.00102285937033262 -0.00474174668456256 -7 R -0.0427821442802085 0.15594940772927 -7 G 0.000209352903511755 -0.000965402581785676 -7 Nt 0 0 -8 S -0.00101967408837821 0.00466508103872825 -8 F 0.00297659657226406 -0.0139772319849951 -8 T 3.77150826628033e-06 -1.73687197929421e-05 -8 N 0.0143452805729061 -0.0729651571272533 -8 K -0.043014650796067 0.156626255550412 -8 x 0 0 -8 Y 0.00476543997301542 -0.0226466622914581 -8 E 0.00716014784841427 -0.0345882434083597 -8 V 0.00825865300614361 -0.0402005991445456 -8 Q 0.00779255049091823 -0.0378086424322195 -8 M -0.00273285530984907 0.0123678582184007 -8 C 0.00192544607949062 -0.00897879962781697 -8 L 0.00457080341133138 -0.0216931977051885 -8 A 0.00133092924208546 -0.00618230263814537 -8 W 0.0120257729838156 -0.0601313220751986 -8 X -0.0395949915379296 0.146525928646086 -8 P 0.00559968095391454 -0.0267621290007437 -8 Ct 0.0276120364797184 -0.156330115182119 -8 B 0.0853437450703708 0 -8 H 0.00914181836068942 -0.0447764411487796 -8 D 0.0067050281150376 -0.0322881887450678 -8 I 0.00455976059407499 -0.0216391778358078 -8 R -0.0566332092070675 0.193963194795178 -8 G 0.00371362222983421 -0.0175238898661841 -8 Nt 0 0 diff --git a/share/OpenMS/IDPool/IDPool.txt b/share/OpenMS/IDPool/IDPool.txt deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/share/OpenMS/IDPool/README b/share/OpenMS/IDPool/README deleted file mode 100644 index 7c6fa32d437..00000000000 --- a/share/OpenMS/IDPool/README +++ /dev/null @@ -1,29 +0,0 @@ -This is the text file based OpenMS DocumentID pool. - -*** General Information *** - -By default the file IDPool.txt in this directory is used as ID pool by the TOPP tools capable of -assigning DocumentID's. -The file format is very simple: one line equals one unique ID. -e.g. ->>> IDPool.txt: -ABC123 -ABC124 -ABC125 -<<< END IDPool.txt - -However the default ID pool file is *empty*. - -OpenMS will issue a warning once the ID pool file reaches a critical low level of five(5) remaining IDs. - - -*** Using other ID Pool files *** - -If you wish to use another file as IDPool set the -environment variable OPENMS_IDPOOL_FILE to the appropriate file path before calling the TOPP tool. - - -*** Anticipated problems *** - -On Linux, some older kernels do not support file locking on remote network drives. If you happen to have OpenMS installed -on a network drive and experience problems, try using a local file as ID pool (just set OPENMS_IDPOOL_FILE environment variable). diff --git a/share/OpenMS/PIP/codebooks.data b/share/OpenMS/PIP/codebooks.data deleted file mode 100644 index c9d6bc6fe50..00000000000 --- a/share/OpenMS/PIP/codebooks.data +++ /dev/null @@ -1,2 +0,0 @@ --0.06281751 0.9460272 0.4025027 0.4880457 0.9919258 -0.03183994 0.5621677 0.8417465 -0.05342454 1.0037620 0.5252572 0.5285234 -0.3321272 0.1280260 0.05873620 0.9564934 0.7644325 0.3478902 -0.03852812 -0.4956029 -0.1931086 -0.1171558 -0.5306178 0.04386387 -0.1106922 -0.3973344 -0.07045261 -0.5286018 -0.2689353 -0.3425447 0.1401820 -0.1548884 0.00007827423 -0.4789998 -0.3460245 -0.1460901 diff --git a/share/OpenMS/PIP/linearMapping.data b/share/OpenMS/PIP/linearMapping.data deleted file mode 100644 index 326d8391e11..00000000000 --- a/share/OpenMS/PIP/linearMapping.data +++ /dev/null @@ -1,2 +0,0 @@ -3.746677 -0.005066359 -0.0251465 -0.01245485 0.2539532 0.02880482 0.3631371 -0.2974055 -0.07166449 -0.31187901 -0.3180542 -0.3233033 -0.1198186 0.3553529 -0.08802591 0.005150768 0.2982793 0.03541927 -0.3692879 -3.395571 -0.221425369 -0.2565968 0.33423051 0.2038867 0.05318058 0.6589589 0.2393542 0.02266699 -0.04941754 0.2082846 -0.2783252 0.0654730 -0.0779243 0.27839485 0.025802497 0.6219708 0.51757175 0.3665653 diff --git a/src/openms/include/OpenMS/ANALYSIS/PIP/LocalLinearMap.h b/src/openms/include/OpenMS/ANALYSIS/PIP/LocalLinearMap.h deleted file mode 100644 index cc8aca0ed04..00000000000 --- a/src/openms/include/OpenMS/ANALYSIS/PIP/LocalLinearMap.h +++ /dev/null @@ -1,116 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- - -#pragma once - -#include - -namespace OpenMS -{ - - /** - @brief Trained Local Linear %Map (LLM) model for peak intensity prediction - - This class offers a model for predictions of peptide peak heights - (referred to as intensities) by a Local Linear %Map (LLM) model and - is the basis of PeakIntensityPredictor. - - A general introduction to the Peak Intensity Predictor (PIP) - can be found in the PIP Tutorial. - - The model trained needs two files for storing the position of the - codebook vectors and the linear mappings (codebooks.data, linearMapping.data) - This is the default model used by PeakIntensityPredictor. -*/ - class OPENMS_DLLAPI LocalLinearMap - { - -public: - - /** - @brief Define parameters needed by the Local Linear %Map (LLM) model - - Parameters xdim and ydim define the size of the two dimensional - grid structure. Parameter radius gives the width of the Gaussian - neighborhood function. -*/ - struct OPENMS_DLLAPI LLMParam - { - UInt xdim; /**< size of first coordinate */ - UInt ydim; /**< size of second coordinate */ - double radius; /**< width of Gaussian neighborhood function */ - }; - - /// default constructor - LocalLinearMap(); - /// destructor - virtual ~LocalLinearMap(); - - ///return parameters of the LocalLinearMap model - const LLMParam & getLLMParam() const; - ///return position of the codebook vectors (18-dim) - const Matrix & getCodebooks() const; - ///return linear mappings of the codebooks - const Matrix & getMatrixA() const; - ///return linear bias - const std::vector & getVectorWout() const; - ///return coordinates of codebook vectors on the 2-d grid - const Matrix & getCord() const; - ///calculate and return normalized amino acid index variables from string representation of peptide - void normalizeVector(std::vector & aaIndexVariables); - ///calculate neighborhood function based on distance of prototypes to winner prototype on two-dimensional grid structure and neighborhood width. - std::vector neigh(const Matrix & cord, Size win, double radius); - -private: - - LLMParam param_; /// code_; /// A_; /// wout_; /// cord_; /// genCord_(Size xdim, Size ydim); - ///calculate distance between two prototypes - double dist_(const Matrix & u, const Matrix & v, Size a, Size b); - - ///Copy constructor not implemented => private - LocalLinearMap(LocalLinearMap & rhs); - ///Assignment operator not implemented => private - LocalLinearMap & operator=(const LocalLinearMap & llm); - - }; - - -} diff --git a/src/openms/include/OpenMS/ANALYSIS/PIP/PeakIntensityPredictor.h b/src/openms/include/OpenMS/ANALYSIS/PIP/PeakIntensityPredictor.h deleted file mode 100644 index 2818252a75c..00000000000 --- a/src/openms/include/OpenMS/ANALYSIS/PIP/PeakIntensityPredictor.h +++ /dev/null @@ -1,151 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- -// - -#pragma once - -#include -#include - -namespace OpenMS -{ - - /** - @brief Predict peak heights of peptides based on Local Linear %Map model - - This class can be used for predictions of peptide peak heights - (referred to as intensities) from a peptide sequence - by a Local Linear %Map (LLM) model. - A general introduction to the Peak Intensity Predictor (PIP) - can be found in the PIP Tutorial. - - The predictor performs only on the peptides sequences as an AASequence representation. Every sequence is - transformed to an 18 dimensional data vector representing certain - chemical characteristics and is loaded into the trained LocalLinearMap model to - find the predicted peptides peak intensity. - - Every predictor object calls the appropriate %LocalLinearMap model, transforms - the given sequences and creates a vector space in which the %LocalLinearMap - performs. - - @ingroup Analysis -*/ - class OPENMS_DLLAPI PeakIntensityPredictor - { - -public: - - ///Constructors and Destructors - //@{ - /// default constructor - PeakIntensityPredictor(); - /// destructor - virtual ~PeakIntensityPredictor(); - //@} - - ///Returns predicted peak heights (intensities) of a single peptide - double predict(const AASequence & sequence); - - /** - @brief Returns predicted peak heights (intensities) of a single peptide - - Some additional information is returned in @p add_info : - - 0: x coordinates of associated cluster (first column) - - 1: y coordinates of associated cluster (2nd column) - - 2: error (RMSE) of the peptide to the associated next prototype (cluster center) - */ - double predict(const AASequence & sequence, std::vector & add_info); - - ///Returns predicted peak heights (intensities) of several peptides - std::vector predict(const std::vector & sequences); - - /** - @brief Returns predicted peak heights (intensities) of several peptides - - Some additional information for each peptide is returned in @p add_info . - For each peptide a row with the following components is returned: - - 0: x coordinates of associated cluster (first column) - - 1: y coordinates of associated cluster (2nd column) - - 2: error (RMSE) of the peptide to the associated next prototype (cluster center) - */ - std::vector predict(const std::vector & sequences, std::vector > & add_info); - -private: - - /// calculate and return predicted value based on given LocalLinearMap model for corresponding aaindex variables - double map_(const std::vector & data); - /// find winning prototype - Size findWinner_(const std::vector & data); - /// calculate assignments of peptides to cluster and the corresponding error - std::vector calculateAddInfo_(const std::vector & data); - - /** - @brief Calculates an array of properties for an amino acid sequence - - The array contains the following properties: - - 0: Number of 'R' residues - - 1: Signal sequence helical potential - - 2: Number of 'F' residues - - 3: Positive charge - - 4: Helix-coil equilibrium constant - - 5: Estimated gas-phase basicity at 500 K - - 6: Number of 'H' residues - - 7: Kerr-constant increments - - 8: Number of 'M' residues - - 9: Average amino acid weight - - 10: Hydropathy scale (36% accessibility) - - 11: Hydropathy scale (50% accessibility) - - 12: Optimized average non-bonded energy per atom - - 13: Number of 'Q' residues - - 14: Information measure for extended without H-bond - - 15: Relative population of conformational state E - - 16: Hydrophobicity coefficient in RP-HPLC, C8 with 0.1%TFA/MeCN/H2 O, - - 17: Number of 'Y' residues - - @exception InvalidValue is thrown if an undefined one-letter-code is used - */ - std::vector getPropertyVector_(const AASequence & sequence); - - /// Local Linear %Map model - LocalLinearMap llm_; - - /// copy constructor not implemented => private - PeakIntensityPredictor(const PeakIntensityPredictor & llmModel); - /// assignment operator not implemented => private - PeakIntensityPredictor & operator=(const PeakIntensityPredictor & peakIntensityPredictor); - - }; - -} // namespace OpenMS - diff --git a/src/openms/include/OpenMS/ANALYSIS/PIP/sources.cmake b/src/openms/include/OpenMS/ANALYSIS/PIP/sources.cmake deleted file mode 100644 index 91a4d17de61..00000000000 --- a/src/openms/include/OpenMS/ANALYSIS/PIP/sources.cmake +++ /dev/null @@ -1,20 +0,0 @@ -### the directory name -set(directory include/OpenMS/ANALYSIS/PIP) - -### list all header files of the directory here -set(sources_list_h -LocalLinearMap.h -PeakIntensityPredictor.h -) - -### add path to the filenames -set(sources_h) -foreach(i ${sources_list_h}) - list(APPEND sources_h ${directory}/${i}) -endforeach(i) - -### source group definition -source_group("Header Files\\OpenMS\\ANALYSIS\\PIP" FILES ${sources_h}) - -set(OpenMS_sources_h ${OpenMS_sources_h} ${sources_h}) - diff --git a/src/openms/include/OpenMS/CHEMISTRY/EnzymaticDigestionLogModel.h b/src/openms/include/OpenMS/CHEMISTRY/EnzymaticDigestionLogModel.h deleted file mode 100644 index db8d37f7717..00000000000 --- a/src/openms/include/OpenMS/CHEMISTRY/EnzymaticDigestionLogModel.h +++ /dev/null @@ -1,142 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow, Xiao Liang $ -// $Authors: Marc Sturm, Chris Bielow, Xiao Liang $ -// -------------------------------------------------------------------------- - -#pragma once - -#include -#include -#include - -#include -#include -#include - -namespace OpenMS -{ - /** - @brief Class for the Log L model of enzymatic digestion of proteins - - An alternative model for tryptic digestion. where the protein is cleaved only at positions where a cleavage model - trained on real data, exceeds a certain threshold. The model is published in - Siepen et al. (2007), "Prediction of missed cleavage sites in tryptic peptides aids protein identification in proteomics.", doi: 10.1021/pr060507u - The model is only available for trypsin and ignores the missed cleavage setting. You should however use setLogThreshold() - to adjust FP vs FN rates. A higher threshold increases the number of cleavages predicted. - - @ingroup Chemistry - */ - class OPENMS_DLLAPI EnzymaticDigestionLogModel - { -public: - /// Default constructor - EnzymaticDigestionLogModel(); - - /// Copy constructor - EnzymaticDigestionLogModel(const EnzymaticDigestionLogModel& rhs); - - /// Assignment operator - EnzymaticDigestionLogModel& operator=(const EnzymaticDigestionLogModel& rhs); - - /// Returns the enzyme for the digestion - String getEnzymeName() const; - - /// Sets the enzyme for the digestion - void setEnzyme(const String& name); - - /// Performs the enzymatic digestion of a protein. - void digest(const AASequence& protein, std::vector& output) const; - - /// Returns the number of peptides a digestion of @p protein would yield under the current enzyme and missed cleavage settings. - Size peptideCount(const AASequence& protein); - - /// Returns the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data) - double getLogThreshold() const; - - /// Sets the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data) - /// Default is 0.25 - void setLogThreshold(double threshold); - -protected: - // define a binding site by position and AA - struct BindingSite_ - { - Size position; - String AAname; - - BindingSite_() : - position(), AAname() {} - - BindingSite_(const Size& p, const String& name) : - position(p), AAname(name) {} - - bool operator<(const BindingSite_& rhs) const - { - return (position < rhs.position) || ((position == rhs.position) && (AAname < rhs.AAname)); - } - - bool operator==(const BindingSite_& rhs) const - { - return position == rhs.position && AAname == rhs.AAname; - } - - }; - - // define the log likelihood for missed and cleavage model - struct CleavageModel_ - { - double p_cleave; - double p_miss; - - CleavageModel_() : - p_cleave(0), p_miss(0) {} - CleavageModel_(const double& p_c, const double& p_m) : - p_cleave(p_c), p_miss(p_m) {} - }; - - /// Moves the iterator @p p behind (i.e., C-term) the next cleavage site of the @p sequence - void nextCleavageSite_(const AASequence& sequence, AASequence::ConstIterator& p) const; - - /// Tests if position pointed to by @p p (N-term side) is a valid cleavage site - bool isCleavageSite_(const AASequence& sequence, const AASequence::ConstIterator& p) const; - - /// Used enzyme - const DigestionEnzyme* enzyme_; - - /// Threshold to decide if position is cleaved or missed (only for the model) - double log_model_threshold_; - /// Holds the cleavage model - std::map model_data_; - }; - -} // namespace OpenMS - diff --git a/src/openms/include/OpenMS/CHEMISTRY/ProteaseDigestion.h b/src/openms/include/OpenMS/CHEMISTRY/ProteaseDigestion.h index 6ee41603daf..38fc22e218f 100644 --- a/src/openms/include/OpenMS/CHEMISTRY/ProteaseDigestion.h +++ b/src/openms/include/OpenMS/CHEMISTRY/ProteaseDigestion.h @@ -52,8 +52,6 @@ namespace OpenMS peptides (cleaved and uncleaved) with up to @em n missed cleavages are returned. Thus @b no random selection of just @em n specific missed cleavage sites is performed. - An alternative model is also available in EnzymaticDigestionLogModel. - @ingroup Chemistry */ class OPENMS_DLLAPI ProteaseDigestion: public EnzymaticDigestion diff --git a/src/openms/include/OpenMS/CHEMISTRY/sources.cmake b/src/openms/include/OpenMS/CHEMISTRY/sources.cmake index bc2b80ced89..11a948d42d5 100644 --- a/src/openms/include/OpenMS/CHEMISTRY/sources.cmake +++ b/src/openms/include/OpenMS/CHEMISTRY/sources.cmake @@ -11,7 +11,6 @@ DecoyGenerator.h Element.h ElementDB.h EmpiricalFormula.h -EnzymaticDigestionLogModel.h EnzymaticDigestion.h DigestionEnzyme.h DigestionEnzymeProtein.h diff --git a/src/openms/include/OpenMS/METADATA/DocumentIDTagger.h b/src/openms/include/OpenMS/METADATA/DocumentIDTagger.h deleted file mode 100644 index 58dcb487d77..00000000000 --- a/src/openms/include/OpenMS/METADATA/DocumentIDTagger.h +++ /dev/null @@ -1,132 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow $ -// $Authors: $ -// -------------------------------------------------------------------------- - -#pragma once - -#include -#include -#include - -#include - -namespace OpenMS -{ - /** - @brief Tags OpenMS file containers with a DocumentID - - Intended usage is from within a TOPP tool. An instance of this class - is present in TOPPBase and can be used by all derived TOPP tools - to assign a unique ID which is fetched from an ID pool in ./share/OpenMS/IDPool/. - - @ingroup Metadata - */ - class OPENMS_DLLAPI DocumentIDTagger - { -private: - /// Constructor (declared away) - DocumentIDTagger(); - - /** - @brief retrieve an ID from the pool - - Uses boost file locks to safely retrieve an ID from an ID pool. - - @param id Unique identifier returned from ID pool - @param free Number of available identifiers in ID pool (before this query) - @param idcount_only Only count available identifiers, do NOT retrieve one - (the id string will nevertheless be filled) - - Return true if all file operations could be executed successfully (this does not imply there was an ID left over - check free>0) - */ - bool getID_(String & id, Int & free, bool idcount_only) const; - -public: - /// Constructor - DocumentIDTagger(String toolname); - /// Copy constructor - DocumentIDTagger(const DocumentIDTagger & source) = default; - /// Destructor - ~DocumentIDTagger(); - - /// Assignment operator - DocumentIDTagger & operator=(const DocumentIDTagger & source) = default; - - /// Equality operator - bool operator==(const DocumentIDTagger & source) const; - /// Equality operator - bool operator!=(const DocumentIDTagger & source) const; - - - /** - @brief Return the file used as ID pool - - The default ID pool file is in /share/OpenMS/IDPool/IDPool.txt - A custom file can be set by setIDPoolFile() - */ - String getPoolFile() const; - - /// Set the file used as ID pool - void setPoolFile(const String & file); - - /** - @brief Tags any structure which is derived from DocumentIdentifier with a unique tag - - Tags any structure which is derived from DocumentIdentifier with a unique tag - Returns true if ID could be assigned, otherwise an Exception::DepletedIDPool is thrown - - @param map Some class (derived from a DocumentIdentifier class) which needs a unique id - @exception Exception::DepletedIDPool when no identifier (for whatever reason) could be acquired - */ - bool tag(DocumentIdentifier & map) const; - - /** - @brief return the number of available IDs in the pool. - - Retrieve the number of available IDs in the pool. - Returns true of count was successful, false otherwise (locking error, file creation error ...) - - @param free Number of available identifiers. You should worry if it's 0! - */ - bool countFreeIDs(Int & free) const; - -protected: - /// name of the calling TOPP tool - String toolname_; - - /// location of the ID pool - String pool_file_; - }; - -} // namespace OpenMS - diff --git a/src/openms/include/OpenMS/METADATA/sources.cmake b/src/openms/include/OpenMS/METADATA/sources.cmake index 2cf1b51658b..a6042429aee 100644 --- a/src/openms/include/OpenMS/METADATA/sources.cmake +++ b/src/openms/include/OpenMS/METADATA/sources.cmake @@ -14,7 +14,6 @@ ContactPerson.h DataArrays.h DataProcessing.h Digestion.h -DocumentIDTagger.h DocumentIdentifier.h ExperimentalDesign.h ExperimentalSettings.h diff --git a/src/openms/includes.cmake b/src/openms/includes.cmake index ac024a43963..77b756a6fcc 100644 --- a/src/openms/includes.cmake +++ b/src/openms/includes.cmake @@ -27,7 +27,6 @@ include(source/ANALYSIS/SVM/sources.cmake) include(source/ANALYSIS/MAPMATCHING/sources.cmake) include(source/ANALYSIS/DECHARGING/sources.cmake) include(source/ANALYSIS/ID/sources.cmake) -include(source/ANALYSIS/PIP/sources.cmake) include(source/ANALYSIS/MRM/sources.cmake) include(source/ANALYSIS/TARGETED/sources.cmake) include(source/ANALYSIS/TOPDOWN/sources.cmake) @@ -82,7 +81,6 @@ include(include/OpenMS/ANALYSIS/MAPMATCHING/sources.cmake) include(include/OpenMS/ANALYSIS/QUANTITATION/sources.cmake) include(include/OpenMS/ANALYSIS/SEQUENCE/sources.cmake) include(include/OpenMS/ANALYSIS/SVM/sources.cmake) -include(include/OpenMS/ANALYSIS/PIP/sources.cmake) include(include/OpenMS/ANALYSIS/MRM/sources.cmake) include(include/OpenMS/ANALYSIS/TARGETED/sources.cmake) include(include/OpenMS/ANALYSIS/TOPDOWN/sources.cmake) diff --git a/src/openms/source/ANALYSIS/PIP/LocalLinearMap.cpp b/src/openms/source/ANALYSIS/PIP/LocalLinearMap.cpp deleted file mode 100644 index 383aab56e78..00000000000 --- a/src/openms/source/ANALYSIS/PIP/LocalLinearMap.cpp +++ /dev/null @@ -1,232 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- -// - -#include -#include - -#include -#include - -using namespace std; - - -namespace OpenMS -{ - - LocalLinearMap::LocalLinearMap() - { - String codefile = "/PIP/codebooks.data"; - String a_file = "/PIP/linearMapping.data"; - - param_.xdim = 1; - param_.ydim = 2; - param_.radius = 0.4; - - code_ = Matrix(param_.xdim * param_.ydim, 18); - A_ = Matrix(param_.xdim * param_.ydim, 18); - wout_ = vector(param_.xdim * param_.ydim); - - // path to codefile + a_file - codefile = File::find(codefile); - a_file = File::find(a_file); - - // read in file containing codebook vectors - ifstream inputstream_c(codefile.c_str()); - std::string line; - UInt i = 0, j = 0, k = 0; - // open stream - if (inputstream_c.good()) - { - double pos = 0.0; - while (getline(inputstream_c, line, '\n')) - { - istringstream linestream(line); - std::string proto; - while (getline(linestream, proto, ' ')) - { - stringstream(proto) >> pos; - i = (UInt)k / 18; - j = (UInt)k % 18; - code_.setValue(i, j, pos); - k++; - } - } - inputstream_c.close(); - // reading codefile is done with success - } - else - { - //Throw Exception when file not found for codebooks.data - throw Exception::FileNotFound(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, String("LocalLinearMap could not open 'codebooks.data' at: ") + codefile); - } - - // read in file containing Matrix< double > A - ifstream inputstream_a(a_file.c_str()); - //string line; - i = 0; - k = 0; - //open stream - if (inputstream_a.good()) - { - double pos = 0.0; - while (getline(inputstream_a, line, '\n')) - { - istringstream linestream(line); - std::string map; - while (getline(linestream, map, ' ')) - { - stringstream(map) >> pos; - i = (UInt)k / (19); - j = (UInt)k % (19); - if (j > 0) //<18) - { - A_.setValue((UInt)(k - 1) / (19), (UInt)(k - 1) % (19), pos); - } - else if (j == 0) - { - wout_[i] = pos; - } - k++; - } - } - inputstream_a.close(); - //reading a_file is done with success - } - else - { - //Throw Exception when file not found for codebooks.data - throw Exception::FileNotFound(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, String("LocalLinearMap could not open 'linearMapping.data' at: ") + a_file); - } - //init 2 dimensional grid of size xdim x ydim and store in coordinates - cord_ = genCord_(param_.xdim, param_.ydim); - - } - - LocalLinearMap::~LocalLinearMap() = default; - - Matrix LocalLinearMap::genCord_(Size xdim, Size ydim) - { - //store 2 dim coordinates - Matrix foo(xdim * ydim, 2); - for (Size i = 0; i < xdim * ydim; i++) - { - foo.setValue(i, 0, UInt(i / ydim)); - foo.setValue(i, 1, UInt(i % ydim)); - } - return foo; - } - - vector LocalLinearMap::neigh(const Matrix & cord, Size win, double radius) - { - vector neighborhood(cord.rows()); - - for (Size i = 0; i < cord.rows(); ++i) - { - // get dist for code i to winner code on grid structure - double dd = dist_(cord, cord, i, win); - //Gaussian neighborhood function - dd = exp(-dd / 2.0 / radius / radius); - neighborhood[i] = dd; - } - - return neighborhood; - } - - double LocalLinearMap::dist_(const Matrix & u, const Matrix & v, Size a, Size b) - { - double dd = 0.0; - //get euclidean distance of instances a of u and b of v - for (Size i = 0; i < u.cols(); ++i) - { - dd += (u.getValue(a, i) - v.getValue(b, i)) * (u.getValue(a, i) - v.getValue(b, i)); - } - return dd; - } - - const float normMeanFactors[18] = // hint: remove 'f' IFF this should ever be double - { - 0.5967742f, 11.5440323f, 0.4193548f, 1.2177419f, 11.9581452f, - 1399.2211022f, 0.1935484f, 412.0838710f, 0.1209677f, 1358.0966317f, - 160.5080645f, 475.8736559f, -14.4842204f, 0.4892473f, 1.6975806f, - 3.0309624f, 14.0243817f, 0.3118280f - }; - - - const float normStdFactors[18] = // hint: remove 'f' IFF this should ever be double - { - 0.5179165f, 5.7367444f, 0.6780753f, 0.4962471f, 5.1953755f, - 51.6311526f, 0.4527976f, 205.0635677f, 0.3727817f, 571.4667323f, - 208.2837647f, 389.9339603f, 18.0231208f, 0.7647155f, 10.0989402f, - 1.4787198f, 10.3548547f, 0.5635562f - }; - - //center and scale by variance - void LocalLinearMap::normalizeVector(vector & aaIndexVariables) - { - for (Size i = 0; i < aaIndexVariables.size(); ++i) - { - //subtract precalculated mean of instances the model was trained on - aaIndexVariables[i] = aaIndexVariables[i] - normMeanFactors[i]; - //and divide by sd - aaIndexVariables[i] = aaIndexVariables[i] / normStdFactors[i]; - } - } - - const LocalLinearMap::LLMParam & LocalLinearMap::getLLMParam() const - { - return param_; - } - - const Matrix & LocalLinearMap::getCodebooks() const - { - return code_; - } - - const Matrix & LocalLinearMap::getMatrixA() const - { - return A_; - } - - const vector & LocalLinearMap::getVectorWout() const - { - return wout_; - } - - const Matrix & LocalLinearMap::getCord() const - { - return cord_; - } - -} //namespace OpenMS diff --git a/src/openms/source/ANALYSIS/PIP/PeakIntensityPredictor.cpp b/src/openms/source/ANALYSIS/PIP/PeakIntensityPredictor.cpp deleted file mode 100644 index c14803e2ab9..00000000000 --- a/src/openms/source/ANALYSIS/PIP/PeakIntensityPredictor.cpp +++ /dev/null @@ -1,247 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- -// - -#include -#include -#include -#include - -using namespace std; - - -namespace OpenMS -{ - - PeakIntensityPredictor::PeakIntensityPredictor() : - llm_() - { - } - - PeakIntensityPredictor::~PeakIntensityPredictor() = default; - - double PeakIntensityPredictor::predict(const AASequence & sequence) - { - //get corresponding attribute values - vector aafeat = getPropertyVector_(sequence); - //normalize vector (center and scale by variance) - llm_.normalizeVector(aafeat); - //pass data_ to llm model and return predicted value - return map_(aafeat); - } - - double PeakIntensityPredictor::predict(const AASequence & sequence, vector & add_info) - { - //get corresponding attribute values - vector aafeat = getPropertyVector_(sequence); - //normalize vector (center and scale by variance) - llm_.normalizeVector(aafeat); - //pass data_ to llm model and return predicted value - double tmp = map_(aafeat); - - //Determine corresponding winning prototype and number of cluster - //peptide is assigned to. Additionally, the error is given. - add_info = calculateAddInfo_(aafeat); - - return tmp; - } - - vector PeakIntensityPredictor::predict(const vector & sequences) - { - vector out(sequences.size()); - - for (Size i = 0; i < sequences.size(); i++) - { - out[i] = predict(sequences[i]); - } - - return out; - } - - vector PeakIntensityPredictor::predict(const vector & sequences, vector > & add_info) - { - vector out(sequences.size()); - add_info.resize(sequences.size()); - - //for each element in sequences - for (Size i = 0; i < sequences.size(); i++) - { - out[i] = predict(sequences[i], add_info[i]); - } - - return out; - } - - double PeakIntensityPredictor::map_(const vector & data) - { - double sum_g_i, g_i; - Matrix code = llm_.getCodebooks(); - vector wout = llm_.getVectorWout(); - Matrix A = llm_.getMatrixA(); - - //determine best matching unit - Size winner = findWinner_(data); - //calculate Gaussian neighborhood function - vector nei = llm_.neigh(llm_.getCord(), winner, llm_.getLLMParam().radius); - - sum_g_i = 0.0; - //for each prototype - for (Size c = 0; c < code.rows(); c++) - { - //sum up total sum of nei - sum_g_i += nei[c]; - } - g_i = 0.0; - - //map data to best matching unit of prototypes and get - //linear mapping - for (Size i = 0; i < code.rows(); i++) - { - double c_x = 0.0; - for (Size c = 0; c < code.cols(); c++) - { - c_x += (A.getValue(i, c) * (data[c] - code.getValue(i, c))); - } - //add linear bias to mapped value - g_i += (c_x + wout[i]) * nei[i]; - } - //divide by total neighborhood values - g_i = g_i / sum_g_i; - - //normalize predicted values to distribution of training data - g_i -= 3.364288; //mean(targets) - g_i /= 1.332298; //sd(targets) - - return g_i; - } - - Size PeakIntensityPredictor::findWinner_(const vector & data) - { - Size winner = 0; - double min_dist = 0.0; - Matrix code = llm_.getCodebooks(); - - //calculate euclidean distance of vector data to prototype no 0. - for (Size c = 0; c < data.size(); c++) - { - min_dist += (data[c] - code.getValue(0, c)) * (data[c] - code.getValue(0, c)); - } - - //calculate euclidean distance of vector data to the remaining prototypes - for (Size i = 1; i < code.rows(); i++) - { - double dd = 0.0; - for (Size c = 0; c < data.size(); c++) - { - dd += (data[c] - code.getValue(i, c)) * (data[c] - code.getValue(i, c)); - } - //which is min? - if (dd < min_dist) - { - winner = i; - min_dist = dd; - } - } - - //return number of winning prototype with minimum distance to data - return winner; - } - - vector PeakIntensityPredictor::calculateAddInfo_(const vector & data) - { - vector foo(3); - Size winner = findWinner_(data); - Matrix code = llm_.getCodebooks(); - Matrix cord = llm_.getCord(); - - foo[0] = cord.getValue(winner, 0); - foo[1] = cord.getValue(winner, 1); - - double dd = 0.0; - //get distance of data to best matching unit (winner). - for (Size c = 0; c < data.size(); c++) - { - dd += (data[c] - code.getValue(winner, c)) * (data[c] - code.getValue(winner, c)); - } - //store the minimum distance in third column - foo[2] = sqrt(dd); - - return foo; - } - - std::vector PeakIntensityPredictor::getPropertyVector_(const AASequence & sequence) - { - std::vector out(18); - - //for each element in sequence = residue - for (Size pos = 0; pos < sequence.size(); pos++) - { - char amino = sequence[pos].getOneLetterCode()[0]; - - // numResidues of R - out[0] += (amino == 'R' ? 1.0 : 0.0); - //The Kerr-constant increments - out[7] += AAIndex::getKHAG800101(amino); - //Relative population of conformational state E - out[15] += AAIndex::getVASM830103(amino); - //Hydropathy scale (36% accessibility) - out[10] += AAIndex::getNADH010106(amino); - //Hydropathy scale (50% accessibility) - out[11] += AAIndex::getNADH010107(amino); - //Hydrophobicity coefficient in RP-HPLC, C8 with 0.1%TFA/MeCN/H2 O, - out[16] += AAIndex::getWILM950102(amino); - //Information measure for extended without H-bond, - out[14] += AAIndex::getROBB760107(amino); - //Optimized average non-bonded energy per atom, - out[12] += AAIndex::getOOBM850104(amino); - //Positive charge - out[3] += AAIndex::getFAUJ880111(amino); - //Helix-coil equilibrium constant - out[4] += AAIndex::getFINA770101(amino); - //Signal sequence helical potential - out[1] += AAIndex::getARGP820102(amino); - out[8] += (amino == 'M' ? 1.0 : 0.0); // numResidues of M - out[2] += (amino == 'F' ? 1.0 : 0.0); // numResidues of F - out[6] += (amino == 'H' ? 1.0 : 0.0); // numResidues of H - out[13] += (amino == 'Q' ? 1.0 : 0.0); // numResidues of Q - out[17] += (amino == 'Y' ? 1.0 : 0.0); // numResiduesof Y - } - - out[5] = AAIndex::calculateGB(sequence, 500.0); //Estimated gas-phase basicity at 500 K - out[9] = sequence.getAverageWeight(); - - return out; - } - -} diff --git a/src/openms/source/ANALYSIS/PIP/sources.cmake b/src/openms/source/ANALYSIS/PIP/sources.cmake deleted file mode 100644 index 3d80df3d993..00000000000 --- a/src/openms/source/ANALYSIS/PIP/sources.cmake +++ /dev/null @@ -1,21 +0,0 @@ -### the directory name -set(directory source/ANALYSIS/PIP) - -### list all filenames of the directory here -set(sources_list -LocalLinearMap.cpp -PeakIntensityPredictor.cpp -) - -### add path to the filenames -set(sources) -foreach(i ${sources_list}) - list(APPEND sources ${directory}/${i}) -endforeach(i) - -### pass source file list to the upper instance -set(OpenMS_sources ${OpenMS_sources} ${sources}) - -### source group definition -source_group("Source Files\\ANALYSIS\\PIP" FILES ${sources}) - diff --git a/src/openms/source/ANALYSIS/TOPDOWN/FLASHDeconvAlgorithm.cpp b/src/openms/source/ANALYSIS/TOPDOWN/FLASHDeconvAlgorithm.cpp index aa8d732baf4..3c7ff0af113 100644 --- a/src/openms/source/ANALYSIS/TOPDOWN/FLASHDeconvAlgorithm.cpp +++ b/src/openms/source/ANALYSIS/TOPDOWN/FLASHDeconvAlgorithm.cpp @@ -1046,7 +1046,7 @@ namespace OpenMS } Size j = getBinNumber_(log(m), mass_bin_min_value_, bin_mul_factors_[ms_level_ - 1]); int bin_offset = (int)round(tol_div_factor); - if (j >= bin_offset && j < previously_deconved_mass_bins_for_dummy_.size() - bin_offset - 1) + if (j >= bin_offset && j < (int)previously_deconved_mass_bins_for_dummy_.size() - bin_offset - 1) { for (int k = -bin_offset; k <= bin_offset; k++) previously_deconved_mass_bins_for_dummy_[j + k] = true; @@ -1251,7 +1251,7 @@ namespace OpenMS int iso_int_shift, int window_width, int allowed_iso_error_for_second_best_cos, PeakGroup::TargetDummyType target_dummy_type) { offset = 0; - if (per_isotope_intensities.size() < min_iso_size_ + iso_int_shift) + if ((int)per_isotope_intensities.size() < min_iso_size_ + iso_int_shift) { return .0; } diff --git a/src/openms/source/CHEMISTRY/EnzymaticDigestionLogModel.cpp b/src/openms/source/CHEMISTRY/EnzymaticDigestionLogModel.cpp deleted file mode 100644 index ca6f71f3763..00000000000 --- a/src/openms/source/CHEMISTRY/EnzymaticDigestionLogModel.cpp +++ /dev/null @@ -1,176 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow, Xiao Liang$ -// $Authors: Marc Sturm, Chris Bielow, Xiao Liang $ -// -------------------------------------------------------------------------- - -#include -#include -#include -#include - -#include - -using namespace std; - -namespace OpenMS -{ - - EnzymaticDigestionLogModel::EnzymaticDigestionLogModel() : - enzyme_(ProteaseDB::getInstance()->getEnzyme("Trypsin")), - log_model_threshold_(0.25), - model_data_() - { - // load the cleavage model from disk (might throw exceptions) - TextFile tf; - tf.load(File::find("./CHEMISTRY/MissedCleavage.model"), true); - for (TextFile::ConstIterator it = tf.begin(); it != tf.end(); ++it) - { - String tmp = *it; - if (tmp.trim().hasPrefix("#")) - { - continue; // skip comments - } - StringList components; - tmp.split(' ', components); - if (components.size() != 4) - { - throw Exception::ParseError(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, String("split(' ',") + tmp + ")", String("Got ") + components.size() + " columns, expected 4!"); - } - BindingSite_ bs(components[0].toInt(), components[1].trim()); - CleavageModel_ cl(components[2].toDouble(), components[3].toDouble()); - model_data_[bs] = cl; - } - } - - EnzymaticDigestionLogModel::EnzymaticDigestionLogModel(const EnzymaticDigestionLogModel& rhs) = default; - - /// Assignment operator - EnzymaticDigestionLogModel& EnzymaticDigestionLogModel::operator=(const EnzymaticDigestionLogModel& rhs) - { - if (this != &rhs) - { - enzyme_ = rhs.enzyme_; - log_model_threshold_ = rhs.log_model_threshold_; - model_data_ = rhs.model_data_; - } - return *this; - } - - void EnzymaticDigestionLogModel::setEnzyme(const String& enzyme_name) - { - enzyme_ = ProteaseDB::getInstance()->getEnzyme(enzyme_name); - } - - String EnzymaticDigestionLogModel::getEnzymeName() const - { - return enzyme_->getName(); - } - - double EnzymaticDigestionLogModel::getLogThreshold() const - { - return log_model_threshold_; - } - - void EnzymaticDigestionLogModel::setLogThreshold(double threshold) - { - log_model_threshold_ = threshold; - } - - bool EnzymaticDigestionLogModel::isCleavageSite_( - const AASequence& protein, const AASequence::ConstIterator& iterator) const - { - if (enzyme_->getName() != "Trypsin") // no cleavage - { - throw Exception::InvalidParameter(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, String("EnzymaticDigestionLogModel: enzyme '") + enzyme_->getName() + " does not support logModel!"); - } - if ((!enzyme_->getRegEx().hasSubstring(iterator->getOneLetterCode())) || *iterator == 'P') // wait for R or K - { - return false; - } - const SignedSize pos = distance(AASequence::ConstIterator(protein.begin()), - iterator) - 4; // start position in sequence - double score_cleave = 0, score_missed = 0; - for (SignedSize i = 0; i < 9; ++i) - { - if ((pos + i >= 0) && (pos + i < (SignedSize) protein.size())) - { - BindingSite_ bs(i, protein[pos + i].getOneLetterCode()); - std::map::const_iterator pos_it = - model_data_.find(bs); - if (pos_it != model_data_.end()) // no data for non-std. amino acids - { - score_cleave += pos_it->second.p_cleave; - score_missed += pos_it->second.p_miss; - } - } - } - return score_missed - score_cleave > log_model_threshold_; - } - - void EnzymaticDigestionLogModel::nextCleavageSite_(const AASequence& protein, AASequence::ConstIterator& iterator) const - { - for (; iterator != protein.end(); ++iterator) - { - if (isCleavageSite_(protein, iterator)) - { - ++iterator; - return; - } - } - } - - Size EnzymaticDigestionLogModel::peptideCount(const AASequence& protein) - { - Size count = 0; - for (AASequence::ConstIterator iterator = protein.begin(); - iterator != protein.end(); nextCleavageSite_(protein, iterator)) - { - ++count; - } - return count; - } - - void EnzymaticDigestionLogModel::digest(const AASequence& protein, vector& output) const - { - // initialization - output.clear(); - AASequence::ConstIterator begin = protein.begin(); - AASequence::ConstIterator end = protein.begin(); - for (nextCleavageSite_(protein, end); - begin != protein.end(); - begin = end, nextCleavageSite_(protein, end)) - { - output.push_back(protein.getSubsequence(begin - protein.begin(), end - begin)); - } - } -} //namespace - diff --git a/src/openms/source/CHEMISTRY/sources.cmake b/src/openms/source/CHEMISTRY/sources.cmake index 3c0bc74cd52..e76c3f7490d 100644 --- a/src/openms/source/CHEMISTRY/sources.cmake +++ b/src/openms/source/CHEMISTRY/sources.cmake @@ -10,7 +10,6 @@ DecoyGenerator.cpp Element.cpp ElementDB.cpp EmpiricalFormula.cpp -EnzymaticDigestionLogModel.cpp EnzymaticDigestion.cpp DigestionEnzyme.cpp DigestionEnzymeProtein.cpp diff --git a/src/openms/source/METADATA/DocumentIDTagger.cpp b/src/openms/source/METADATA/DocumentIDTagger.cpp deleted file mode 100644 index 1b862830037..00000000000 --- a/src/openms/source/METADATA/DocumentIDTagger.cpp +++ /dev/null @@ -1,252 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow $ -// $Authors: Chris Bielow $ -// -------------------------------------------------------------------------- - -#include - -#include -#include - -#ifdef _MSC_VER // disable some boost warnings that distract from ours -# pragma warning( push ) // save warning state -# pragma warning( disable : 4018 ) -#endif -#include -#ifdef _MSC_VER -# pragma warning( pop ) // restore old warning state -#endif - - -#include -#include -#include - -using namespace std; - -namespace OpenMS -{ - DocumentIDTagger::DocumentIDTagger(String toolname) : - toolname_(std::move(toolname)), - pool_file_() - { - pool_file_ = File::getOpenMSDataPath() + ("/IDPool/IDPool.txt"); - } - - DocumentIDTagger::~DocumentIDTagger() = default; - - bool DocumentIDTagger::operator==(const DocumentIDTagger & rhs) const - { - return (toolname_ == rhs.toolname_) - && (pool_file_ == rhs.pool_file_); - } - - bool DocumentIDTagger::operator!=(const DocumentIDTagger & rhs) const - { - return !(operator==(rhs)); - } - - String DocumentIDTagger::getPoolFile() const - { - return pool_file_; - } - - void DocumentIDTagger::setPoolFile(const String & file) - { - pool_file_ = file; - } - - bool DocumentIDTagger::getID_(String & id, Int & free, bool idcount_only) const - { - free = 0; - - String IDPool_file = getPoolFile(); - String IDPool_file_tmp = String(IDPool_file) + String(".tmp"); - // create PoolFile if non-existent - if (!File::exists(IDPool_file)) - { - ofstream out(IDPool_file.c_str()); - out.close(); - } - - // open input file - ifstream in(IDPool_file.c_str()); - if (!in.is_open()) - { - std::cerr << "IDTagger::getID_() " << IDPool_file << " file failed to open.\n"; - return false; - } - - // CREATE lock file! - // Hint: we create an independent lock file, because to remove one ID the pool is copied to another file - // which overwrites the original pool file. Additionally we want to atomically write to a log file. - // So locking the pool file itself is a really bad idea! - String tmp_lock_file = String(IDPool_file + String(".lck")); - if (!File::exists(tmp_lock_file)) - { - ofstream out(tmp_lock_file.c_str()); - out.close(); - } - boost::interprocess::file_lock flock(tmp_lock_file.c_str()); - - // this might throw an exception! - try - { - flock.lock(); - } - catch (exception& /*e*/) - { - return false; - } - // we have the lock! - - // now open temp output file - ofstream out; - if (!idcount_only) - { - out.open(IDPool_file_tmp.c_str(), ios::out | ios::trunc); - if (!out.is_open()) - { - std::cerr << "IDTagger::getID_() " << IDPool_file_tmp << " file failed to open for writing.\n"; - flock.unlock(); - in.close(); - return false; - } - } - - // copy the ID pool, but excise the first ID - string line; - while (!in.eof()) - { - getline(in, line); - if (line.length() == 0) - { - continue; - } - ++free; - if (free == 1) - { - id = line; // pull out first ID - } - if (!idcount_only) - { - if (free != 1) // delete first line - { - out << line << "\n"; - } - } - } - in.close(); - if (!idcount_only) - { - out.close(); - // delete the original file - remove(IDPool_file.c_str()); - // rename old to new - rename(IDPool_file_tmp.c_str(), IDPool_file.c_str()); - - // write ID to log file - String logging_file = String(IDPool_file + String(".log")); - ofstream outfile; - outfile.open(logging_file.c_str(), ofstream::out | ofstream::app); - time_t rawtime; - char time_buffer[80]; - time(&rawtime); - strftime(time_buffer, 80, "%x %X", localtime(&rawtime)); - if (free == 0) - { - outfile << time_buffer << " :: " << toolname_ << " unsuccessfully requested ID (pool is empty!)\n"; - } - else - { - outfile << time_buffer << " :: " << toolname_ << " requested ID '" << id << "'\n"; - } - outfile.close(); - } - - // release lock file - flock.unlock(); - - return true; - } - - bool DocumentIDTagger::tag(DocumentIdentifier & map) const - { - String id = ""; Int free(0); - try - { - if (getID_(id, free, false)) - { - if (free > 0) - { - map.setIdentifier(id); - return true; - } - } - } - catch (...) - { - } - - map.setIdentifier("InvalidID"); - - String msg; - if (free == 0) - { - msg = String("Tool ") + toolname_ + String(" requested identifier from depleted ID pool '") + getPoolFile() + String("'"); - } - else - { - msg = String("Tool ") + toolname_ + String(" requested identifier from unaccessible ID pool '") + getPoolFile() + String("'. There should be ") + String(free) + String(" identifiers available!"); - } - throw Exception::DepletedIDPool(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION, "IDTagger", msg); - } - - bool DocumentIDTagger::countFreeIDs(Int & free) const - { - String id = ""; - try - { - if (getID_(id, free, true)) - { - return true; - } - } - catch (...) - { - } - - return false; - } - -} // namespace OpenMS - diff --git a/src/openms/source/METADATA/sources.cmake b/src/openms/source/METADATA/sources.cmake index 8d89365eeef..56e5cc1fc99 100644 --- a/src/openms/source/METADATA/sources.cmake +++ b/src/openms/source/METADATA/sources.cmake @@ -14,7 +14,6 @@ ContactPerson.cpp DataArrays.cpp DataProcessing.cpp Digestion.cpp -DocumentIDTagger.cpp DocumentIdentifier.cpp ExperimentalDesign.cpp ExperimentalSettings.cpp diff --git a/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPAS.cpp b/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPAS.cpp index 1e23f95f29c..544037eb1a1 100644 --- a/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPAS.cpp +++ b/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPAS.cpp @@ -51,9 +51,6 @@ @image html TOPPAS_simple_example.png - More information about TOPPAS can be found on the OpenMS ReadTheDocs - page: https://openms.readthedocs.io/en/latest/docs/tutorials/TOPPAS/TOPPAS-tutorial.html - The command line parameters of this tool are: @verbinclude TOPP_TOPPAS.cli diff --git a/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPView.cpp b/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPView.cpp index abfca97b048..8e0a0422a66 100644 --- a/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPView.cpp +++ b/src/openms_gui/source/VISUAL/APPLICATIONS/GUITOOLS/TOPPView.cpp @@ -42,7 +42,7 @@ @image html TOPPView.png More information about TOPPView can be found on the OpenMS ReadTheDocs - page: https://openms.readthedocs.io/en/latest/docs/tutorials/TOPP/toppview-introduction.html + page: https://openms.readthedocs.io/en/latest/openms-applications-and-tools/visualize-with-openms.html The command line parameters of this tool are: @verbinclude TOPP_TOPPView.cli diff --git a/src/openms_gui/source/VISUAL/APPLICATIONS/TOPPASBase.cpp b/src/openms_gui/source/VISUAL/APPLICATIONS/TOPPASBase.cpp index 1612c180e23..ef540c9adc9 100644 --- a/src/openms_gui/source/VISUAL/APPLICATIONS/TOPPASBase.cpp +++ b/src/openms_gui/source/VISUAL/APPLICATIONS/TOPPASBase.cpp @@ -1076,7 +1076,6 @@ namespace OpenMS ParamXMLFile paramFile; // TODO: if closing multiple TOPPAS instances simultaneously, we might write to this file concurrently // thus destroying its integrity. Think about using boost filelocks - // see OpenMS/METADATA/DocumentIDTagger.h for example // and also implement in TOPPView (and other GUI's which write to user directory) paramFile.store(string(param_.getValue("PreferencesFile")), save_param); } diff --git a/src/pyOpenMS/pxds/EnzymaticDigestionLogModel.pxd b/src/pyOpenMS/pxds/EnzymaticDigestionLogModel.pxd deleted file mode 100644 index 9f4925ba0db..00000000000 --- a/src/pyOpenMS/pxds/EnzymaticDigestionLogModel.pxd +++ /dev/null @@ -1,46 +0,0 @@ -from Types cimport * -from String cimport * -from AASequence cimport * - -cdef extern from "" namespace "OpenMS": - - - cdef cppclass EnzymaticDigestionLogModel: - # wrap-doc: - # Class for the Log L model of enzymatic digestion of proteins - - EnzymaticDigestionLogModel() except + nogil - EnzymaticDigestionLogModel(EnzymaticDigestionLogModel &) except + nogil - - # not wrapped due to name clash with Enzyme.h - # Enzyme getEnzyme() except + nogil - # void setEnzyme(Enzyme enzyme) except + nogil - # Enzyme getEnzymeByName(String name) except + nogil - - String getEnzymeName() except + nogil # wrap-doc:Returns the enzyme for the digestion - void setEnzyme(String name) except + nogil # wrap-doc:Sets the enzyme for the digestion - - double getLogThreshold() except + nogil # wrap-doc:Returns the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data) - void setLogThreshold(double threshold) except + nogil # wrap-doc:Sets the threshold which needs to be exceeded to call a cleavage (only for the trained cleavage model on real data). Default is 0.25 - - void digest(AASequence & protein, libcpp_vector[AASequence] & output) except + nogil # wrap-doc:Performs the enzymatic digestion of a protein - Size peptideCount(AASequence & protein) except + nogil - # wrap-doc: - # Returns the number of peptides a digestion of `protein` would yield under the current enzyme and missed cleavage settings - # - # - # :param protein: Name of protein - -# cdef extern from "" namespace "OpenMS::EnzymaticDigestionLogModel": -# -# # protected -# # cdef cppclass BindingSite: -# # BindingSite() -# # Size position -# # String AAname -# -# # cdef cppclass CleavageModel: -# # CleavageModel() -# # double p_cleave -# # double p_miss -# diff --git a/src/pyOpenMS/pxds/LocalLinearMap.pxd b/src/pyOpenMS/pxds/LocalLinearMap.pxd deleted file mode 100644 index b2b2aa98663..00000000000 --- a/src/pyOpenMS/pxds/LocalLinearMap.pxd +++ /dev/null @@ -1,43 +0,0 @@ -from Types cimport * -from libcpp.vector cimport vector as libcpp_vector -from Matrix cimport * - -cdef extern from "" namespace "OpenMS": - - cdef cppclass LocalLinearMap "OpenMS::LocalLinearMap": - # wrap-doc: - # Trained Local Linear Map (LLM) model for peak intensity prediction - # - # This class offers a model for predictions of peptide peak heights - # (referred to as intensities) by a Local Linear Map (LLM) model and - # is the basis of PeakIntensityPredictor - # - # A general introduction to the Peak Intensity Predictor (PIP) - # can be found in the PIP Tutorial - # - # The model trained needs two files for storing the position of the - # codebook vectors and the linear mappings (codebooks.data, linearMapping.data) - # This is the default model used by PeakIntensityPredictor - - LocalLinearMap() except + nogil - # private - LocalLinearMap(LocalLinearMap &) except + nogil # wrap-ignore - LLMParam getLLMParam() except + nogil # wrap-doc:Returns parameters of the LocalLinearMap model - Matrix[ double ] getCodebooks() except + nogil # wrap-doc:Returns position of the codebook vectors (18-dim) - Matrix[ double ] getMatrixA() except + nogil # wrap-doc:Returns linear mappings of the codebooks - libcpp_vector[ double ] getVectorWout() except + nogil # wrap-doc:Returns linear bias - - # TODO STL attributes unsigned int - # Matrix[ UInt ] getCord() except + nogil - void normalizeVector(libcpp_vector[ double ] & aaIndexVariables) except + nogil # wrap-doc:Calculates and returns the normalized amino acid index variables from string representation of peptide - # libcpp_vector[ double ] neigh(Matrix[ unsigned int ] & cord, Size win, double radius) except + nogil - - -cdef extern from "" namespace "OpenMS::LocalLinearMap": - - cdef cppclass LLMParam "OpenMS::LocalLinearMap::LLMParam": - LLMParam() except + nogil - LLMParam(LLMParam) except + nogil #wrap-ignore - UInt xdim - UInt ydim - double radius diff --git a/src/pyOpenMS/pxds/PeakIntensityPredictor.pxd b/src/pyOpenMS/pxds/PeakIntensityPredictor.pxd deleted file mode 100644 index 2adad0491ee..00000000000 --- a/src/pyOpenMS/pxds/PeakIntensityPredictor.pxd +++ /dev/null @@ -1,43 +0,0 @@ -from Types cimport * -from libcpp.vector cimport vector as libcpp_vector -from AASequence cimport * -from LocalLinearMap cimport * - -cdef extern from "" namespace "OpenMS": - - cdef cppclass PeakIntensityPredictor "OpenMS::PeakIntensityPredictor": - # wrap-doc: - # Predict peak heights of peptides based on Local Linear Map model - # - # This class can be used for predictions of peptide peak heights - # (referred to as intensities) from a peptide sequence - # by a Local Linear Map (LLM) model - # A general introduction to the Peak Intensity Predictor (PIP) - # can be found in the PIP Tutorial - # - # The predictor performs only on the peptides sequences as an AASequence representation. Every sequence is - # transformed to an 18 dimensional data vector representing certain - # chemical characteristics and is loaded into the trained LocalLinearMap model to - # find the predicted peptides peak intensity - # - # Every predictor object calls the appropriate LocalLinearMap model, transforms - # the given sequences and creates a vector space in which the LocalLinearMap - # performs - - PeakIntensityPredictor() except + nogil - # private - PeakIntensityPredictor(PeakIntensityPredictor) except + nogil #wrap-ignore - double predict(AASequence & sequence) except + nogil # wrap-doc:Returns predicted peak heights (intensities) of a single peptide - double predict(AASequence & sequence, libcpp_vector[ double ] & add_info) except + nogil - # wrap-doc: - # Returns predicted peak heights (intensities) of a single peptide - # - # Some additional information for each peptide is returned in `add_info` - # For each peptide a row with the following components is returned: - # - 0: x coordinates of associated cluster (first column) - # - 1: y coordinates of associated cluster (2nd column) - # - 2: error (RMSE) of the peptide to the associated next prototype (cluster center) - - libcpp_vector[ double ] predict(libcpp_vector[ AASequence ] & sequences) except + nogil - libcpp_vector[ double ] predict(libcpp_vector[ AASequence ] & sequences, libcpp_vector[ libcpp_vector[ double ] ] & add_info) except + nogil - diff --git a/src/pyOpenMS/tests/unittests/test000.py b/src/pyOpenMS/tests/unittests/test000.py index 28800714315..3f0572b21b5 100644 --- a/src/pyOpenMS/tests/unittests/test000.py +++ b/src/pyOpenMS/tests/unittests/test000.py @@ -1877,16 +1877,6 @@ def testProteaseDigestion(): #ff.setEnzyme(enz.TRYPSIN) #assert ff.getEnzyme() == enz.TRYPSIN -@report -def testEnzymaticDigestionLogModel(): - ff = pyopenms.EnzymaticDigestionLogModel() - assert pyopenms.EnzymaticDigestionLogModel().getLogThreshold is not None - assert pyopenms.EnzymaticDigestionLogModel().setLogThreshold is not None - assert pyopenms.EnzymaticDigestionLogModel().digest is not None - assert pyopenms.EnzymaticDigestionLogModel().peptideCount is not None - ff.setLogThreshold(0.25) - assert ff.getLogThreshold() == 0.25 - @report def testIDDecoyProbability(): """ diff --git a/src/tests/class_tests/openms/executables.cmake b/src/tests/class_tests/openms/executables.cmake index cae7a3748b1..2b18483718b 100644 --- a/src/tests/class_tests/openms/executables.cmake +++ b/src/tests/class_tests/openms/executables.cmake @@ -94,7 +94,6 @@ set(metadata_executables_list ExperimentalSettings_test Gradient_test HPLC_test - DocumentIDTagger_test Identification_test IdentificationData_test IdentificationDataConverter_test @@ -412,7 +411,6 @@ set(chemistry_executables_list ElementDB_test Element_test EmpiricalFormula_test - EnzymaticDigestionLogModel_test EnzymaticDigestion_test FineIsotopeDistribution_test IMSAlphabetParser_test @@ -513,7 +511,6 @@ set(analysis_executables_list KDTreeFeatureMaps_test KDTreeFeatureNode_test LabeledPairFinder_test - LocalLinearMap_test TargetedExperiment_test TargetedExperimentHelper_test MRMFeaturePicker_test @@ -540,7 +537,6 @@ set(analysis_executables_list PeptideAndProteinQuant_test PeptideProteinResolution_test PeakGroup_test - PeakIntensityPredictor_test PScore_test HyperScore_test MorpheusScore_test diff --git a/src/tests/class_tests/openms/source/DocumentIDTagger_test.cpp b/src/tests/class_tests/openms/source/DocumentIDTagger_test.cpp deleted file mode 100644 index 7f985c99f46..00000000000 --- a/src/tests/class_tests/openms/source/DocumentIDTagger_test.cpp +++ /dev/null @@ -1,175 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow $ -// $Authors: $ -// -------------------------------------------------------------------------- - -#include -#include - -#include -#include -#include - -/////////////////////////// -#include -/////////////////////////// - -using namespace OpenMS; -using namespace std; - -START_TEST(DocumentIDTagger, "$Id$") - -///////////////////////////////////////////////////////////// -///////////////////////////////////////////////////////////// - -DocumentIDTagger* ptr = nullptr; -DocumentIDTagger* nullPointer = nullptr; -START_SECTION(DocumentIDTagger()) -{ - ptr = new DocumentIDTagger("someTOPPTool"); - TEST_NOT_EQUAL(ptr, nullPointer) -} -END_SECTION - -START_SECTION(~DocumentIDTagger()) -{ - delete ptr; -} -END_SECTION - -START_SECTION((DocumentIDTagger(String toolname))) -{ - DocumentIDTagger tagme("SomeTOPPTool"); - NOT_TESTABLE -} -END_SECTION - -START_SECTION((DocumentIDTagger(const DocumentIDTagger &source))) -{ - DocumentIDTagger tagme("SomeTOPPTool"); - DocumentIDTagger tagme2(tagme); - - TEST_TRUE(tagme == tagme2) -} -END_SECTION - -START_SECTION((DocumentIDTagger& operator=(const DocumentIDTagger &source))) -{ - DocumentIDTagger tagme("SomeTOPPTool"); - DocumentIDTagger tagme2 = tagme; - TEST_EQUAL(tagme==tagme2,true) -} -END_SECTION - -START_SECTION((bool operator==(const DocumentIDTagger &source) const )) -{ - DocumentIDTagger tagme("SomeTOPPTool"); - DocumentIDTagger tagme2 = tagme; - TEST_TRUE(tagme == tagme2) - DocumentIDTagger tagme3(tagme); - TEST_TRUE(tagme == tagme3) -} -END_SECTION - -START_SECTION((bool operator!=(const DocumentIDTagger &source) const )) -{ - DocumentIDTagger tagme("SomeTOPPTool"); - DocumentIDTagger tagme2("SomeOtherTOPPTool"); - TEST_FALSE(tagme == tagme2) -} -END_SECTION - -START_SECTION((String getPoolFile() const)) -{ - NOT_TESTABLE; // tested below -} -END_SECTION - -START_SECTION((void setPoolFile(const String& file))) -{ - String tmp_pool; - NEW_TMP_FILE(tmp_pool); - DocumentIDTagger tagme("SomeTOPPTool"); - //use custom pool file - tagme.setPoolFile(tmp_pool); - TEST_EQUAL(tagme.getPoolFile(), tmp_pool) -} -END_SECTION - -String tmp_pool; -NEW_TMP_FILE(tmp_pool); -ofstream outfile; -outfile.open (tmp_pool.c_str(), ofstream::out); -outfile << "ID1\nIDNew\nIDsecondtoLast\nIDLast\n"; -outfile.close(); - -START_SECTION((bool tag(DocumentIdentifier &map) const )) -{ - DocumentIdentifier myD; - myD.setIdentifier(""); - DocumentIDTagger tagme("SomeTOPPTool"); - //use custom pool file - tagme.setPoolFile(tmp_pool); - Int cnt(0); - tagme.countFreeIDs(cnt); - TEST_EQUAL(cnt, 4); - tagme.tag(myD); - TEST_EQUAL(myD.getIdentifier(), "ID1"); - tagme.tag(myD); - TEST_EQUAL(myD.getIdentifier(), "IDNew"); - tagme.countFreeIDs(cnt); - TEST_EQUAL(cnt, 2); - // 2 left - TEST_EQUAL(tagme.tag(myD), true); - // 1 left - TEST_EQUAL(tagme.tag(myD), true); - //0 left, expect it to go wrong - TEST_EXCEPTION(Exception::DepletedIDPool, tagme.tag(myD)); - // confirm 0 left - TEST_EQUAL(tagme.countFreeIDs(cnt), true); - TEST_EQUAL(cnt, 0); -} -END_SECTION - -START_SECTION((bool countFreeIDs(Int &free) const )) -{ - NOT_TESTABLE //done above -} -END_SECTION - - -///////////////////////////////////////////////////////////// -///////////////////////////////////////////////////////////// -END_TEST - - - diff --git a/src/tests/class_tests/openms/source/EnzymaticDigestionLogModel_test.cpp b/src/tests/class_tests/openms/source/EnzymaticDigestionLogModel_test.cpp deleted file mode 100644 index a5efc9f6567..00000000000 --- a/src/tests/class_tests/openms/source/EnzymaticDigestionLogModel_test.cpp +++ /dev/null @@ -1,142 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Chris Bielow, Xiao Liang $ -// $Authors: Marc Sturm, Chris Bielow, Xiao Liang $ -// -------------------------------------------------------------------------- - -#include -#include - -/////////////////////////// - -#include - -using namespace OpenMS; -using namespace std; - -/////////////////////////// - -START_TEST(EnzymaticDigestionLogModel, "$Id$") - -///////////////////////////////////////////////////////////// - -EnzymaticDigestionLogModel * e_ptr = nullptr; -EnzymaticDigestionLogModel* e_nullPointer = nullptr; -START_SECTION((EnzymaticDigestionLogModel())) -e_ptr = new EnzymaticDigestionLogModel; -TEST_NOT_EQUAL(e_ptr, e_nullPointer) -delete e_ptr; -END_SECTION - -START_SECTION((EnzymaticDigestionLogModel(const EnzymaticDigestionLogModel &rhs))) -EnzymaticDigestionLogModel ed; -ed.setEnzyme("no cleavage"); -ed.setLogThreshold(81231); - -EnzymaticDigestionLogModel ed2(ed); - -TEST_EQUAL(ed.getEnzymeName(), ed2.getEnzymeName()); -TEST_EQUAL(ed.getLogThreshold(), ed2.getLogThreshold()); - -END_SECTION - -START_SECTION((EnzymaticDigestionLogModel & operator=(const EnzymaticDigestionLogModel &rhs))) -EnzymaticDigestionLogModel ed; -ed.setEnzyme("no cleavage"); -ed.setLogThreshold(81231); - -EnzymaticDigestionLogModel ed2 = ed; - -TEST_EQUAL(ed.getEnzymeName(), ed2.getEnzymeName()); -TEST_EQUAL(ed.getLogThreshold(), ed2.getLogThreshold()); - -END_SECTION - -START_SECTION((Enzyme getEnzymeName() const)) -TEST_EQUAL(EnzymaticDigestionLogModel().getEnzymeName(), "Trypsin") -END_SECTION - -START_SECTION((void setEnzyme(const String enzyme_name))) -EnzymaticDigestionLogModel ed; -ed.setEnzyme("Trypsin"); -TEST_EQUAL(ed.getEnzymeName(), "Trypsin"); -END_SECTION - -START_SECTION((double getLogThreshold() const)) -EnzymaticDigestionLogModel ed; -ed.setLogThreshold(1.234); -TEST_EQUAL(ed.getLogThreshold(), 1.234); -END_SECTION - -START_SECTION((void setLogThreshold(double threshold))) -// TESTED ABOVE -NOT_TESTABLE -END_SECTION - -START_SECTION((Size peptideCount(const AASequence &protein))) -EnzymaticDigestionLogModel ed; -// with log L model: -ed.setEnzyme("Trypsin"); -TEST_EQUAL(ed.peptideCount(AASequence::fromString("MKWVTFISLLLLFSSAYSRGVFRRDTHKSEIAHRFKDLGEEHFKGLVLIAFSQYLQQCPFDEHVKLVNELTEFAKTCVADESHAGCEKSLHTLFGDELCKVASLRETYGDMADCCEKQEPERNECFLSHKDDSPDLPKLKPDPNTLCDEFKADEKKFWGKYLYEIARRHPYFYAPELLYYANKYNGVFQECQAEDKGACLLPKIETMREKVLASSARQRLRCASIQKFGERALKAWSVARLSQKFPKAEFVEVTKLVTDLTKVHKECCHGDLLECADDRADLAKYICDNQDTISSKLKECCDKPLLEKSHCIAEVEKDAIPENLPPLTADFAEDKDVCKNYQEAKDAFLGSFLYEYSRRHPEYAVSVLLRLAKEYEATLEECCKDDPHACYSTVFDKLKHLVDEPQNLIKQNCDQFEKLGEYGFQNALIVRYTRKVPQVSTPTLVEVSRSLGKVGTRCCTKPESERMPCTEDYLSLILNRLCVLHEKTPVSEKVTKCCTESLVNRRPCFSALTPDETYVPKAFDEKLFTFHADICTLPDTEKQIKKQTALVELLKHKPKATEEQLKTVMENFVAFDKCCAADDKEACFAVEGPKLVVSTQTALA")), 9 + 1 + 1) // K R + 1 -// with non-standard amino-acids "O" and "U": -TEST_EQUAL(ed.peptideCount(AASequence::fromString("IITAQVUDRPONAIYMTY")), 2); -END_SECTION - -START_SECTION((void digest(const AASequence &protein, std::vector&output) const)) -EnzymaticDigestionLogModel ed; -vector out; -// with log L model: -ed.digest(AASequence::fromString("MKWVTFISLLLLFSSAYSRGVFRRDTHKSEIAHRFKDLGEEHFKGLVLIAFSQYLQQCPFDEHVKLVNELTEFAKTCVADESHAGCEKSLHTLFGDELCKVASLRETYGDMADCCEKQEPERNECFLSHKDDSPDLPKLKPDPNTLCDEFKADEKKFWGKYLYEIARRHPYFYAPELLYYANKYNGVFQECQAEDKGACLLPKIETMREKVLASSARQRLRCASIQKFGERALKAWSVARLSQKFPKAEFVEVTKLVTDLTKVHKECCHGDLLECADDRADLAKYICDNQDTISSKLKECCDKPLLEKSHCIAEVEKDAIPENLPPLTADFAEDKDVCKNYQEAKDAFLGSFLYEYSRRHPEYAVSVLLRLAKEYEATLEECCKDDPHACYSTVFDKLKHLVDEPQNLIKQNCDQFEKLGEYGFQNALIVRYTRKVPQVSTPTLVEVSRSLGKVGTRCCTKPESERMPCTEDYLSLILNRLCVLHEKTPVSEKVTKCCTESLVNRRPCFSALTPDETYVPKAFDEKLFTFHADICTLPDTEKQIKKQTALVELLKHKPKATEEQLKTVMENFVAFDKCCAADDKEACFAVEGPKLVVSTQTALA"), out); -TEST_EQUAL(out.size(), 11) -TEST_EQUAL(out[0].toString(), "MKWVTFISLLLLFSSAYSRGVFRRDTHK") -TEST_EQUAL(out[1].toString(), "SEIAHRFKDLGEEHFKGLVLIAFSQYLQQCPFDEHVKLVNELTEFAKTCVADESHAGCEKSLHTLFGDELCKVASLRETYGDMADCCEKQEPERNECFLSHKDDSPDLPKLK") -TEST_EQUAL(out[2].toString(), "PDPNTLCDEFKADEKK") -TEST_EQUAL(out[3].toString(), "FWGKYLYEIARRHPYFYAPELLYYANKYNGVFQECQAEDKGACLLPKIETMREKVLASSARQRLRCASIQKFGERALKAWSVARLSQK") -TEST_EQUAL(out[4].toString(), "FPKAEFVEVTKLVTDLTKVHKECCHGDLLECADDRADLAKYICDNQDTISSKLKECCDK") -TEST_EQUAL(out[5].toString(), "PLLEKSHCIAEVEKDAIPENLPPLTADFAEDKDVCKNYQEAKDAFLGSFLYEYSRRHPEYAVSVLLRLAKEYEATLEECCKDDPHACYSTVFDKLKHLVDEPQNLIKQNCDQFEKLGEYGFQNALIVRYTRK") -TEST_EQUAL(out[6].toString(), "VPQVSTPTLVEVSRSLGK") -TEST_EQUAL(out[7].toString(), "VGTRCCTK") -TEST_EQUAL(out[8].toString(), "PESERMPCTEDYLSLILNRLCVLHEKTPVSEKVTKCCTESLVNRR") -TEST_EQUAL(out[9].toString(), "PCFSALTPDETYVPKAFDEKLFTFHADICTLPDTEKQIKKQTALVELLKHK") -TEST_EQUAL(out[10].toString(), "PKATEEQLKTVMENFVAFDKCCAADDKEACFAVEGPKLVVSTQTALA") - -// ------------------------ -// Trypsin/P -// ------------------------ -ed.setEnzyme("Trypsin/P"); -// .. log-model only for restrictive Trypsin (with P constraint) -TEST_EXCEPTION(Exception::InvalidParameter, ed.digest(AASequence::fromString("ANGER"), out)); - -END_SECTION - -///////////////////////////////////////////////////////////// -///////////////////////////////////////////////////////////// -END_TEST diff --git a/src/tests/class_tests/openms/source/LocalLinearMap_test.cpp b/src/tests/class_tests/openms/source/LocalLinearMap_test.cpp deleted file mode 100644 index 94a637543af..00000000000 --- a/src/tests/class_tests/openms/source/LocalLinearMap_test.cpp +++ /dev/null @@ -1,137 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- -// - -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - - -using namespace OpenMS; -using namespace std; - -/////////////////////////// - -START_TEST(LocalLinearMap, "$Id$") - -///////////////////////////////////////////////////////////// -///////////////////////////////////////////////////////////// - -LocalLinearMap* ptr = nullptr; -LocalLinearMap* nullPointer = nullptr; -LocalLinearMap llm; - - -START_SECTION(LocalLinearMap()) - ptr = new LocalLinearMap(); - TEST_NOT_EQUAL(ptr, nullPointer) - TEST_EQUAL(ptr->getLLMParam().xdim, llm.getLLMParam().xdim) - TEST_EQUAL(ptr->getLLMParam().ydim, llm.getLLMParam().ydim) - TEST_EQUAL(ptr->getLLMParam().radius, llm.getLLMParam().radius) -END_SECTION - -START_SECTION((virtual ~LocalLinearMap())) - delete ptr; -END_SECTION - -START_SECTION((const LLMParam& getLLMParam() const)) - TEST_EQUAL(llm.getLLMParam().xdim, 1) - TEST_EQUAL(llm.getLLMParam().ydim, 2) - TEST_EQUAL(llm.getLLMParam().radius, 0.4) -END_SECTION - -START_SECTION((const Matrix& getCodebooks() const)) - TEST_EQUAL(llm.getCodebooks().rows(), 2) - TEST_EQUAL(llm.getCodebooks().cols(), 18) - //-0.06281751 0.9460272 - //0.03852812 -0.4956029 - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(0,0), -0.06281751) - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(0,1), 0.9460272) - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(1,0), 0.03852812) - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(1,1), -0.4956029) - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(0,17), 0.3478902) - TEST_REAL_SIMILAR(llm.getCodebooks().getValue(1,17), -0.1460901) -END_SECTION - -START_SECTION((const Matrix& getMatrixA() const)) - TEST_EQUAL(llm.getMatrixA().rows(), 2) - TEST_EQUAL(llm.getMatrixA().cols(), 18) - //-0.005066359 -0.0251465 - //-0.221425369 -0.2565968 - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(0,0), -0.005066359) - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(0,1), -0.0251465) - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(1,0), -0.221425369) - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(1,1), -0.2565968) - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(0,17), -0.3692879) - TEST_REAL_SIMILAR(llm.getMatrixA().getValue(1,17), 0.3665653) -END_SECTION - -START_SECTION((const vector& getVectorWout() const)) - TEST_EQUAL(llm.getVectorWout().size(), 2) - //3.746677 - //3.395571 - TEST_REAL_SIMILAR(llm.getVectorWout()[0], 3.746677) - TEST_REAL_SIMILAR(llm.getVectorWout()[1], 3.395571) -END_SECTION - -START_SECTION((const Matrix& getCord() const)) - TEST_EQUAL(llm.getCord().rows(), 2) - TEST_EQUAL(llm.getCord().cols(), 2) - TEST_EQUAL(llm.getCord().getValue(0,0), 0) - TEST_EQUAL(llm.getCord().getValue(0,1), 0) - TEST_EQUAL(llm.getCord().getValue(1,0), 0) - TEST_EQUAL(llm.getCord().getValue(1,1), 1) -END_SECTION - -START_SECTION((std::vector neigh(const Matrix< UInt > &cord, Size win, double radius))) - vector nei1 = llm.neigh(llm.getCord(), 0, llm.getLLMParam().radius); - TEST_EQUAL(nei1[0], 1) - TEST_REAL_SIMILAR(nei1[1], 0.04393693) -END_SECTION - -START_SECTION((void normalizeVector(std::vector< double > &aaIndexVariables))) - NOT_TESTABLE -END_SECTION - - -END_TEST diff --git a/src/tests/class_tests/openms/source/PeakIntensityPredictor_test.cpp b/src/tests/class_tests/openms/source/PeakIntensityPredictor_test.cpp deleted file mode 100644 index 9e3bb4db57b..00000000000 --- a/src/tests/class_tests/openms/source/PeakIntensityPredictor_test.cpp +++ /dev/null @@ -1,121 +0,0 @@ -// -------------------------------------------------------------------------- -// OpenMS -- Open-Source Mass Spectrometry -// -------------------------------------------------------------------------- -// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen, -// ETH Zurich, and Freie Universitaet Berlin 2002-2023. -// -// This software is released under a three-clause BSD license: -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// * Neither the name of any author or any participating institution -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// For a full list of authors, refer to the file AUTHORS. -// -------------------------------------------------------------------------- -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING -// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; -// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR -// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF -// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// -------------------------------------------------------------------------- -// $Maintainer: Timo Sachsenberg $ -// $Authors: $ -// -------------------------------------------------------------------------- -// - -#include -#include -#include - -using namespace OpenMS; -using namespace std; - -/////////////////////////// - -START_TEST(PeakIntensityPredictor, "$Id$") - -///////////////////////////////////////////////////////////// -///////////////////////////////////////////////////////////// - -TOLERANCE_ABSOLUTE(0.001) - -AASequence seq1 = AASequence::fromString("LTSEAR"); -AASequence seq2 = AASequence::fromString("AEAQIR"); -AASequence seq3 = AASequence::fromString("TLEDAR"); - -vector vec; -vec.push_back(seq1); -vec.push_back(seq2); -vec.push_back(seq3); - -PeakIntensityPredictor* ptr; -PeakIntensityPredictor* nullPointer = nullptr; - -START_SECTION(PeakIntensityPredictor()) - ptr = new PeakIntensityPredictor(); - TEST_NOT_EQUAL(ptr, nullPointer) -END_SECTION - -START_SECTION((virtual ~PeakIntensityPredictor())) - delete ptr; -END_SECTION - -START_SECTION(double predict(const AASequence& sequence)) - PeakIntensityPredictor pip; - TEST_REAL_SIMILAR(pip.predict(seq1), -0.531675) - TEST_REAL_SIMILAR(pip.predict(seq2), 0.0171194) - TEST_REAL_SIMILAR(pip.predict(seq3), -0.595362) -END_SECTION - - -START_SECTION(double predict(const AASequence& sequence, std::vector& add_info)) - PeakIntensityPredictor pip; - std::vector add_info; - pip.predict(seq1,add_info); - TEST_EQUAL(add_info.size(),3) - TEST_REAL_SIMILAR(add_info[0],0.0) - TEST_REAL_SIMILAR(add_info[1],1.0) - TEST_REAL_SIMILAR(add_info[2],2.04653) -END_SECTION - -START_SECTION(std::vector predict(const std::vector& sequences)) - PeakIntensityPredictor pip; - vector ref = pip.predict(vec); - TEST_REAL_SIMILAR(ref[0], -0.531675) - TEST_REAL_SIMILAR(ref[1], 0.0171194) - TEST_REAL_SIMILAR(ref[2], -0.595362) -END_SECTION - -START_SECTION(std::vector predict(const std::vector& sequences, std::vector >& add_info)) - PeakIntensityPredictor pip; - vector > add_info; - pip.predict(vec,add_info); - TEST_EQUAL(add_info.size(),3) - TEST_EQUAL(add_info[0].size(),3) - TEST_EQUAL(add_info[1].size(),3) - TEST_EQUAL(add_info[2].size(),3) - TEST_REAL_SIMILAR(add_info[0][0],0.0) - TEST_REAL_SIMILAR(add_info[0][1],1.0) - TEST_REAL_SIMILAR(add_info[0][2],2.04653) - TEST_REAL_SIMILAR(add_info[1][0],0.0) - TEST_REAL_SIMILAR(add_info[1][1],1.0) - TEST_REAL_SIMILAR(add_info[1][2],2.30648) - TEST_REAL_SIMILAR(add_info[2][0],0.0) - TEST_REAL_SIMILAR(add_info[2][1],1.0) - TEST_REAL_SIMILAR(add_info[2][2],2.24984) -END_SECTION - - -END_TEST - - diff --git a/tools/pychecker_ignore.yaml b/tools/pychecker_ignore.yaml index 1174e48a61c..709cfdbbee3 100644 --- a/tools/pychecker_ignore.yaml +++ b/tools/pychecker_ignore.yaml @@ -165,9 +165,6 @@ PyOpenMSChecker: - evaluate - getParameters - invert - OpenMS::LocalLinearMap: - - getCord - - neigh OpenMS::DocumentIdentifier: - swap OpenMS::ModifiedPeptideGenerator: