CoreMS 2.0.3__tar.gz → 2.0.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {CoreMS-2.0.3 → CoreMS-2.0.8}/CoreMS.egg-info/PKG-INFO +4 -4
- {CoreMS-2.0.3 → CoreMS-2.0.8}/CoreMS.egg-info/SOURCES.txt +18 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/CoreMS.egg-info/requires.txt +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/MANIFEST.in +2 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/PKG-INFO +4 -4
- {CoreMS-2.0.3 → CoreMS-2.0.8}/README.md +3 -3
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/__init__.py +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/constant.py +2 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/factory/parameters.py +7 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/factory/processingSetting.py +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/brukerSolarix.py +0 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/rawFileReader.py +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/NoiseCalc.py +2 -2
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/PeakPicking.py +6 -5
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/factory/MassSpectrumClasses.py +7 -4
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/massList.py +9 -1
- CoreMS-2.0.8/corems/mass_spectrum/input/numpyArray.py +108 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/output/export.py +4 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/calc/MolecularFormulaCalc.py +40 -11
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/factory/MolecularFormulaFactory.py +85 -13
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/search/compoundSearch.py +0 -2
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/ms_peak/calc/MSPeakCalc.py +15 -8
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/calc/TransientCalc.py +25 -8
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/factory/TransientClasses.py +6 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/input/brukerSolarix.py +94 -6
- CoreMS-2.0.8/ext_lib/dotnet/OpenMcdf.Extensions.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/OpenMcdf.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/OpenMcdf.xml +1154 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.IO.FileSystem.AccessControl.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.IO.FileSystem.AccessControl.xml +506 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.Security.AccessControl.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.Security.AccessControl.xml +2043 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.Security.Principal.Windows.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/System.Security.Principal.Windows.xml +1011 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.xml +2307 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.Data.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.Data.xml +29148 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.xml +241 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- CoreMS-2.0.8/ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.xml +31492 -0
- CoreMS-2.0.8/ext_lib/dotnet/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/requirements.txt +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/setup.py +1 -1
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_input.py +2 -2
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_mass_spectrum.py +2 -2
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_molecularFormula.py +22 -4
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_molecularFormulaSearch.py +75 -34
- CoreMS-2.0.3/corems/mass_spectrum/input/numpyArray.py +0 -87
- {CoreMS-2.0.3 → CoreMS-2.0.8}/CoreMS.egg-info/dependency_links.txt +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/CoreMS.egg-info/top_level.txt +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/Dockerfile +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/LICENSE +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/chroma_peak/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/chroma_peak/calc/ChromaPeakCalc.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/chroma_peak/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/chroma_peak/factory/ChromaPeakClasses.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/chroma_peak/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/collection/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/collection/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/collection/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/collection/output/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/input/parameter_from_json.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/output/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/output/parameter_to_dict.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/encapsulation/output/parameter_to_json.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/GC_Calc.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/GC_Deconvolution.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/GC_RI_Calibration.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/LC_Calc.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/LF_Targeted.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/MZSearch.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/SignalProcessing.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/factory/GC_Class.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/factory/LC_Class.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/factory/LC_Temp.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/andiNetCDF.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/boosterHDF5.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/coremsHDF5.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/massList.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/win_only/BrukerCompassXtract.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/win_only/ThermoMSFileReader.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/input/win_only/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/output/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectra/output/export.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/AutoRecalibration.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/Calibration.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/CalibrationCalc.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/KendrickGroup.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/MassErrorPrediction.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/MassSpectrumCalc.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/MeanResolvingPowerFilter.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/NoiseCalc_Bayes.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/baseClass.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/boosterHDF5.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/coremsHDF5.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/input/win_only/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/mass_spectrum/output/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_formula/input/masslist_ref.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/ClusterFilter.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/KendrickGroup.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/MolecularFilter.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/SpectralSimilarity.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/calc/math_distance.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/factory/EI_SQL.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/factory/MolecularLookupTable.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/factory/classification.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/factory/molecularSQL.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/input/nistMSI.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/search/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/search/findOxygenPeaks.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/search/molecularFormulaSearch.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/molecular_id/search/priorityAssignment.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/ms_peak/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/ms_peak/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/ms_peak/factory/MSPeakClasses.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/ms_peak/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/calc/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/factory/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/input/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/corems/transient/input/midasDatFile.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/disclaimer.txt +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ChemstationMSFileReader.dll +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ChemstationMSFileReader.xml +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/RawFileReaderLicense.doc +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.xml +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.Data.dll +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.Data.xml +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/ThermoFisher.CommonCore.RawFileReader.xml +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/ext_lib/__init__.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/setup.cfg +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_LossFinder.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_assembly_identification.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_calibration.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_classification.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_gcms.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_massErrorPrediction.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_molecularFormulaDBFactory.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_mspeak.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_mz_search.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_output.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_searchMassListRef.py +0 -0
- {CoreMS-2.0.3 → CoreMS-2.0.8}/tests/test_setting_settings.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: CoreMS
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.8
|
|
4
4
|
Summary: Mass Spectrometry Framework for Small Molecules Analysis
|
|
5
5
|
Home-page: https://github.com/EMSL-Computing/CoreMS
|
|
6
6
|
Author: Corilo, Yuri
|
|
@@ -14,7 +14,7 @@ Classifier: Development Status :: 4 - Beta
|
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
15
15
|
License-File: LICENSE
|
|
16
16
|
|
|
17
|
-

|
|
18
18
|
|
|
19
19
|
<div align="left">
|
|
20
20
|
|
|
@@ -66,7 +66,7 @@ CoreMS aims to provide
|
|
|
66
66
|
|
|
67
67
|
## Current Version
|
|
68
68
|
|
|
69
|
-
`2.0.
|
|
69
|
+
`2.0.8`
|
|
70
70
|
|
|
71
71
|
***
|
|
72
72
|
|
|
@@ -339,7 +339,7 @@ UML (unified modeling language) diagrams for Direct Infusion FT-MS and GC-MS cla
|
|
|
339
339
|
|
|
340
340
|
If you use CoreMS in your work, please use the following citation:
|
|
341
341
|
|
|
342
|
-
Version [2.0.
|
|
342
|
+
Version [2.0.8 Release on GitHub](https://github.com/EMSL-Computing/CoreMS/releases/tag/v2.0.8), archived on Zenodo:
|
|
343
343
|
|
|
344
344
|
[](https://doi.org/10.5281/zenodo.4641552)
|
|
345
345
|
|
|
@@ -128,6 +128,24 @@ ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.dll
|
|
|
128
128
|
ext_lib/ThermoFisher.CommonCore.RawFileReader.dll
|
|
129
129
|
ext_lib/ThermoFisher.CommonCore.RawFileReader.xml
|
|
130
130
|
ext_lib/__init__.py
|
|
131
|
+
ext_lib/dotnet/OpenMcdf.Extensions.dll
|
|
132
|
+
ext_lib/dotnet/OpenMcdf.dll
|
|
133
|
+
ext_lib/dotnet/OpenMcdf.xml
|
|
134
|
+
ext_lib/dotnet/System.IO.FileSystem.AccessControl.dll
|
|
135
|
+
ext_lib/dotnet/System.IO.FileSystem.AccessControl.xml
|
|
136
|
+
ext_lib/dotnet/System.Security.AccessControl.dll
|
|
137
|
+
ext_lib/dotnet/System.Security.AccessControl.xml
|
|
138
|
+
ext_lib/dotnet/System.Security.Principal.Windows.dll
|
|
139
|
+
ext_lib/dotnet/System.Security.Principal.Windows.xml
|
|
140
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.dll
|
|
141
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.xml
|
|
142
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.Data.dll
|
|
143
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.Data.xml
|
|
144
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.dll
|
|
145
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.xml
|
|
146
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.dll
|
|
147
|
+
ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.xml
|
|
148
|
+
ext_lib/dotnet/__init__.py
|
|
131
149
|
tests/test.py
|
|
132
150
|
tests/test_LossFinder.py
|
|
133
151
|
tests/test_assembly_identification.py
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: CoreMS
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.8
|
|
4
4
|
Summary: Mass Spectrometry Framework for Small Molecules Analysis
|
|
5
5
|
Home-page: https://github.com/EMSL-Computing/CoreMS
|
|
6
6
|
Author: Corilo, Yuri
|
|
@@ -14,7 +14,7 @@ Classifier: Development Status :: 4 - Beta
|
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
15
15
|
License-File: LICENSE
|
|
16
16
|
|
|
17
|
-

|
|
18
18
|
|
|
19
19
|
<div align="left">
|
|
20
20
|
|
|
@@ -66,7 +66,7 @@ CoreMS aims to provide
|
|
|
66
66
|
|
|
67
67
|
## Current Version
|
|
68
68
|
|
|
69
|
-
`2.0.
|
|
69
|
+
`2.0.8`
|
|
70
70
|
|
|
71
71
|
***
|
|
72
72
|
|
|
@@ -339,7 +339,7 @@ UML (unified modeling language) diagrams for Direct Infusion FT-MS and GC-MS cla
|
|
|
339
339
|
|
|
340
340
|
If you use CoreMS in your work, please use the following citation:
|
|
341
341
|
|
|
342
|
-
Version [2.0.
|
|
342
|
+
Version [2.0.8 Release on GitHub](https://github.com/EMSL-Computing/CoreMS/releases/tag/v2.0.8), archived on Zenodo:
|
|
343
343
|
|
|
344
344
|
[](https://doi.org/10.5281/zenodo.4641552)
|
|
345
345
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-

|
|
2
2
|
|
|
3
3
|
<div align="left">
|
|
4
4
|
|
|
@@ -50,7 +50,7 @@ CoreMS aims to provide
|
|
|
50
50
|
|
|
51
51
|
## Current Version
|
|
52
52
|
|
|
53
|
-
`2.0.
|
|
53
|
+
`2.0.8`
|
|
54
54
|
|
|
55
55
|
***
|
|
56
56
|
|
|
@@ -323,7 +323,7 @@ UML (unified modeling language) diagrams for Direct Infusion FT-MS and GC-MS cla
|
|
|
323
323
|
|
|
324
324
|
If you use CoreMS in your work, please use the following citation:
|
|
325
325
|
|
|
326
|
-
Version [2.0.
|
|
326
|
+
Version [2.0.8 Release on GitHub](https://github.com/EMSL-Computing/CoreMS/releases/tag/v2.0.8), archived on Zenodo:
|
|
327
327
|
|
|
328
328
|
[](https://doi.org/10.5281/zenodo.4641552)
|
|
329
329
|
|
|
@@ -36,7 +36,8 @@ class Labels: #pragma: no cover
|
|
|
36
36
|
ion_type_translate = { 'protonated': 'DE_OR_PROTONATED',
|
|
37
37
|
'de-protonated': 'DE_OR_PROTONATED',
|
|
38
38
|
'radical': 'RADICAL',
|
|
39
|
-
'adduct': 'ADDUCT'
|
|
39
|
+
'adduct': 'ADDUCT',
|
|
40
|
+
'ADDUCT': 'ADDUCT'}
|
|
40
41
|
|
|
41
42
|
class Atoms: #pragma: no cover
|
|
42
43
|
""" Class for Atoms in CoreMS
|
|
@@ -100,11 +100,17 @@ def default_parameters(file_location): # pragma: no cover
|
|
|
100
100
|
|
|
101
101
|
parameters["exc_low_freq"] = 0
|
|
102
102
|
|
|
103
|
+
parameters["mw_low"] = 0
|
|
104
|
+
|
|
105
|
+
parameters["mw_high"] = 0
|
|
106
|
+
|
|
107
|
+
parameters["qpd_enabled"] = 0
|
|
108
|
+
|
|
103
109
|
parameters["bandwidth"] = 0
|
|
104
110
|
|
|
105
111
|
parameters['analyzer'] = 'Unknown'
|
|
106
112
|
|
|
107
|
-
parameters['
|
|
113
|
+
parameters['acquisition_time'] = None
|
|
108
114
|
|
|
109
115
|
parameters['instrument_label'] = 'Unknown'
|
|
110
116
|
|
|
@@ -252,7 +252,7 @@ class MassSpectrumSetting:
|
|
|
252
252
|
# How many data points (in each direction) to extrapolate the mz axis and 0 pad the abundance axis
|
|
253
253
|
# This will fix peak picking at spectrum limit issues
|
|
254
254
|
# 0 to keep normal behaviour, typical value 3 to fix
|
|
255
|
-
picking_point_extrapolate: int =
|
|
255
|
+
picking_point_extrapolate: int = 0
|
|
256
256
|
|
|
257
257
|
calib_minimize_method: str = 'Powell'
|
|
258
258
|
calib_pol_order: int = 2
|
|
@@ -759,7 +759,7 @@ class ThermoBaseClass:
|
|
|
759
759
|
|
|
760
760
|
d_params["analyzer"] = self.iRawDataPlus.GetInstrumentData().Model
|
|
761
761
|
|
|
762
|
-
d_params["
|
|
762
|
+
d_params["acquisition_time"] = self.get_creation_time()
|
|
763
763
|
|
|
764
764
|
d_params["instrument_label"] = self.iRawDataPlus.GetInstrumentData().Name
|
|
765
765
|
|
|
@@ -79,7 +79,7 @@ class NoiseThresholdCalc:
|
|
|
79
79
|
|
|
80
80
|
elif self.settings.noise_threshold_method == 'signal_noise':
|
|
81
81
|
|
|
82
|
-
normalized_threshold = (self.max_abundance * self.settings.
|
|
82
|
+
normalized_threshold = (self.max_abundance * self.settings.noise_threshold_min_s2n )/self.max_signal_to_noise
|
|
83
83
|
y = (normalized_threshold, normalized_threshold)
|
|
84
84
|
|
|
85
85
|
elif self.settings.noise_threshold_method == "relative_abundance":
|
|
@@ -115,7 +115,7 @@ class NoiseThresholdCalc:
|
|
|
115
115
|
|
|
116
116
|
max_sn = self.abundance_profile.max()/self.baseline_noise_std
|
|
117
117
|
|
|
118
|
-
normalized_threshold = (self.abundance_profile.max() * self.settings.
|
|
118
|
+
normalized_threshold = (self.abundance_profile.max() * self.settings.noise_threshold_min_s2n )/max_sn
|
|
119
119
|
y = (normalized_threshold, normalized_threshold)
|
|
120
120
|
|
|
121
121
|
elif self.settings.noise_threshold_method == "relative_abundance":
|
|
@@ -147,10 +147,11 @@ class PeakPicking:
|
|
|
147
147
|
self.abundance_profile = abundance
|
|
148
148
|
self.freq_exp_profile = freq
|
|
149
149
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
150
|
+
if self.settings.picking_point_extrapolate > 0:
|
|
151
|
+
mz, abundance, freq = self.extrapolate_axes_for_pp()
|
|
152
|
+
self.mz_exp_profile = mz
|
|
153
|
+
self.abundance_profile = abundance
|
|
154
|
+
self.freq_exp_profile = freq
|
|
154
155
|
|
|
155
156
|
if self.label == Labels.bruker_frequency or self.label == Labels.midas_frequency:
|
|
156
157
|
|
|
@@ -451,7 +452,7 @@ class PeakPicking:
|
|
|
451
452
|
|
|
452
453
|
elif noise_threshold_method == 'signal_noise':
|
|
453
454
|
|
|
454
|
-
abundance_threshold = self.settings.
|
|
455
|
+
abundance_threshold = self.settings.noise_threshold_min_s2n
|
|
455
456
|
factor = self.baseline_noise_std
|
|
456
457
|
|
|
457
458
|
elif noise_threshold_method == "relative_abundance":
|
|
@@ -3,7 +3,7 @@ from copy import deepcopy
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
#from matplotlib import rcParamsDefault, rcParams
|
|
6
|
-
from numpy import array, power, float64, where, histogram
|
|
6
|
+
from numpy import array, power, float64, where, histogram, trapz
|
|
7
7
|
|
|
8
8
|
from pandas import DataFrame
|
|
9
9
|
from lmfit.models import GaussianModel
|
|
@@ -217,7 +217,7 @@ class MassSpecBase(MassSpecCalc, KendrickGrouping):
|
|
|
217
217
|
- _calibration_terms
|
|
218
218
|
- label
|
|
219
219
|
- analyzer
|
|
220
|
-
-
|
|
220
|
+
- acquisition_time
|
|
221
221
|
- instrument_label
|
|
222
222
|
- polarity
|
|
223
223
|
- scan_number
|
|
@@ -240,7 +240,7 @@ class MassSpecBase(MassSpecCalc, KendrickGrouping):
|
|
|
240
240
|
|
|
241
241
|
self.analyzer = d_params.get('analyzer')
|
|
242
242
|
|
|
243
|
-
self.
|
|
243
|
+
self.acquisition_time = d_params.get('acquisition_time')
|
|
244
244
|
|
|
245
245
|
self.instrument_label = d_params.get('instrument_label')
|
|
246
246
|
|
|
@@ -612,7 +612,7 @@ class MassSpecBase(MassSpecCalc, KendrickGrouping):
|
|
|
612
612
|
@property
|
|
613
613
|
def tic(self):
|
|
614
614
|
"""Return the total ion current of the mass spectrum."""
|
|
615
|
-
return
|
|
615
|
+
return trapz(self.abundance_profile, self.mz_exp_profile)
|
|
616
616
|
|
|
617
617
|
def check_mspeaks_warning(self):
|
|
618
618
|
"""Check if the mass spectrum has MSpeaks objects.
|
|
@@ -1263,6 +1263,7 @@ class MassSpecfromFreq(MassSpecBase):
|
|
|
1263
1263
|
if self._mz_exp[0] > self._mz_exp[-1]:
|
|
1264
1264
|
self._mz_exp = self._mz_exp[::-1]
|
|
1265
1265
|
self._abundance = self._abundance[::-1]
|
|
1266
|
+
self._frequency_domain = self._frequency_domain[::-1]
|
|
1266
1267
|
|
|
1267
1268
|
def _set_mz_domain(self):
|
|
1268
1269
|
"""Set the m/z domain of the mass spectrum based on the settings of d_params."""
|
|
@@ -1375,6 +1376,8 @@ class MassSpecCentroid(MassSpecBase):
|
|
|
1375
1376
|
|
|
1376
1377
|
self.is_centroid = True
|
|
1377
1378
|
self.data_dict = data_dict
|
|
1379
|
+
self._mz_exp = data_dict[Labels.mz]
|
|
1380
|
+
self._abundance = data_dict[Labels.abundance]
|
|
1378
1381
|
|
|
1379
1382
|
if auto_process:
|
|
1380
1383
|
self.process_mass_spec()
|
|
@@ -83,6 +83,10 @@ class ReadCoremsMasslist(MassListBaseClass):
|
|
|
83
83
|
ion_type_df = dataframe["Ion Type"]
|
|
84
84
|
ion_charge_df = dataframe["Ion Charge"]
|
|
85
85
|
is_isotopologue_df = dataframe['Is Isotopologue']
|
|
86
|
+
if 'Adduct' in dataframe:
|
|
87
|
+
adduct_df = dataframe['Adduct']
|
|
88
|
+
else:
|
|
89
|
+
adduct_df = None
|
|
86
90
|
|
|
87
91
|
mass_spec_mz_exp_list = mass_spec_obj.mz_exp
|
|
88
92
|
|
|
@@ -102,7 +106,11 @@ class ReadCoremsMasslist(MassListBaseClass):
|
|
|
102
106
|
if sum(counts) > 0:
|
|
103
107
|
|
|
104
108
|
ion_type = str(Labels.ion_type_translate.get(ion_type_df[df_index]))
|
|
105
|
-
|
|
109
|
+
if adduct_df is not None:
|
|
110
|
+
adduct_atom = str(adduct_df[df_index])
|
|
111
|
+
else:
|
|
112
|
+
adduct_atom = None
|
|
113
|
+
mfobj = MolecularFormula(formula_list, int(ion_charge_df[df_index]), mspeak_parent=mass_spec_obj[ms_peak_index] , ion_type=ion_type, adduct_atom=adduct_atom)
|
|
106
114
|
mfobj.is_isotopologue = bool(is_isotopologue_df[df_index])
|
|
107
115
|
mass_spec_obj[ms_peak_index].add_molecular_formula(mfobj)
|
|
108
116
|
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
|
|
2
|
+
__author__ = "Yuri E. Corilo"
|
|
3
|
+
__date__ = "Oct 23, 2019"
|
|
4
|
+
|
|
5
|
+
from corems.mass_spectrum.factory.MassSpectrumClasses import MassSpecProfile, MassSpecCentroid
|
|
6
|
+
from corems.encapsulation.factory.parameters import default_parameters
|
|
7
|
+
from corems.encapsulation.constant import Labels
|
|
8
|
+
|
|
9
|
+
def ms_from_array_profile(mz, abundance, dataname:str, polarity:int = -1, auto_process:bool = True, data_type:str = Labels.simulated_profile):
|
|
10
|
+
"""Create a MassSpecProfile object from an array of m/z values and abundance values.
|
|
11
|
+
|
|
12
|
+
Parameters
|
|
13
|
+
----------
|
|
14
|
+
mz : numpy.ndarray
|
|
15
|
+
Array of m/z values.
|
|
16
|
+
abundance : numpy.ndarray
|
|
17
|
+
Array of abundance values.
|
|
18
|
+
dataname : str
|
|
19
|
+
Name of the data.
|
|
20
|
+
polarity : int, optional
|
|
21
|
+
Polarity of the data. The default is -1.
|
|
22
|
+
auto_process : bool, optional
|
|
23
|
+
Flag to automatically process the data. The default is True.
|
|
24
|
+
data_type : str, optional
|
|
25
|
+
Type of the data. The default is Labels.simulated_profile.
|
|
26
|
+
|
|
27
|
+
Returns
|
|
28
|
+
-------
|
|
29
|
+
MassSpecProfile
|
|
30
|
+
The created MassSpecProfile object.
|
|
31
|
+
"""
|
|
32
|
+
data_dict = {Labels.mz: mz, Labels.abundance: abundance}
|
|
33
|
+
|
|
34
|
+
output_parameters = get_output_parameters(polarity, dataname)
|
|
35
|
+
|
|
36
|
+
output_parameters[Labels.label] = data_type
|
|
37
|
+
|
|
38
|
+
ms = MassSpecProfile(data_dict, output_parameters, auto_process=auto_process)
|
|
39
|
+
|
|
40
|
+
return ms
|
|
41
|
+
|
|
42
|
+
def ms_from_array_centroid(mz, abundance, rp:list[float], s2n:list[float], dataname:str, polarity:int=-1, auto_process:bool=True):
|
|
43
|
+
"""Create a MassSpecCentroid object from an array of m/z values, abundance values, resolution power, and signal-to-noise ratio.
|
|
44
|
+
|
|
45
|
+
Parameters
|
|
46
|
+
----------
|
|
47
|
+
mz : numpy.ndarray
|
|
48
|
+
Array of m/z values.
|
|
49
|
+
abundance : numpy.ndarray
|
|
50
|
+
Array of abundance values.
|
|
51
|
+
rp : list(float)
|
|
52
|
+
List of resolving power values.
|
|
53
|
+
s2n : list(float)
|
|
54
|
+
List of signal-to-noise ratio values.
|
|
55
|
+
dataname : str
|
|
56
|
+
Name of the data.
|
|
57
|
+
polarity : int, optional
|
|
58
|
+
Polarity of the data. The default is -1.
|
|
59
|
+
auto_process : bool, optional
|
|
60
|
+
|
|
61
|
+
Returns
|
|
62
|
+
-------
|
|
63
|
+
MassSpecCentroid
|
|
64
|
+
The created MassSpecCentroid object.
|
|
65
|
+
"""
|
|
66
|
+
data_dict = {Labels.mz: mz, Labels.abundance: abundance, Labels.s2n : s2n, Labels.rp: rp}
|
|
67
|
+
|
|
68
|
+
output_parameters = get_output_parameters(polarity, dataname)
|
|
69
|
+
output_parameters[Labels.label] = Labels.corems_centroid
|
|
70
|
+
|
|
71
|
+
return MassSpecCentroid(data_dict, output_parameters, auto_process)
|
|
72
|
+
|
|
73
|
+
def get_output_parameters(polarity:int, file_location:str):
|
|
74
|
+
"""Generate the output parameters for creating a MassSpecProfile or MassSpecCentroid object.
|
|
75
|
+
|
|
76
|
+
Parameters
|
|
77
|
+
----------
|
|
78
|
+
polarity : int
|
|
79
|
+
Polarity of the data.
|
|
80
|
+
file_location : str
|
|
81
|
+
File location.
|
|
82
|
+
|
|
83
|
+
Returns
|
|
84
|
+
-------
|
|
85
|
+
dict
|
|
86
|
+
Output parameters.
|
|
87
|
+
"""
|
|
88
|
+
d_params = default_parameters(file_location)
|
|
89
|
+
|
|
90
|
+
d_params['analyzer'] = 'Generic Simulated'
|
|
91
|
+
|
|
92
|
+
d_params['instrument_label'] = 'Generic Simulated'
|
|
93
|
+
|
|
94
|
+
d_params["polarity"] = polarity
|
|
95
|
+
|
|
96
|
+
d_params["filename_path"] = file_location
|
|
97
|
+
|
|
98
|
+
d_params["mobility_scan"] = 0
|
|
99
|
+
|
|
100
|
+
d_params["mobility_rt"] = 0
|
|
101
|
+
|
|
102
|
+
d_params["scan_number"] = 0
|
|
103
|
+
|
|
104
|
+
d_params["rt"] = 0
|
|
105
|
+
|
|
106
|
+
d_params[Labels.label] = Labels.simulated_profile
|
|
107
|
+
|
|
108
|
+
return d_params
|
|
@@ -111,6 +111,7 @@ class HighResMassSpecExport(Thread):
|
|
|
111
111
|
'O/C',
|
|
112
112
|
'Heteroatom Class',
|
|
113
113
|
'Ion Type',
|
|
114
|
+
'Adduct',
|
|
114
115
|
'Is Isotopologue',
|
|
115
116
|
'Mono Isotopic Index',
|
|
116
117
|
'Molecular Formula'
|
|
@@ -160,7 +161,6 @@ class HighResMassSpecExport(Thread):
|
|
|
160
161
|
|
|
161
162
|
def get_pandas_df(self):
|
|
162
163
|
"""Returns the mass spectrum data as a pandas DataFrame."""
|
|
163
|
-
|
|
164
164
|
columns = self.columns_label + self.get_all_used_atoms_in_order(self.mass_spectrum)
|
|
165
165
|
dict_data_list = self.get_list_dict_data(self.mass_spectrum)
|
|
166
166
|
df = DataFrame(dict_data_list, columns=columns)
|
|
@@ -563,6 +563,9 @@ class HighResMassSpecExport(Thread):
|
|
|
563
563
|
'Is Isotopologue': int(mformula.is_isotopologue),
|
|
564
564
|
'Molecular Formula': eval("mformula.string{}".format(encode))
|
|
565
565
|
}
|
|
566
|
+
|
|
567
|
+
if mformula.adduct_atom:
|
|
568
|
+
dict_result['Adduct'] = eval("mformula.adduct_atom{}".format(encode))
|
|
566
569
|
|
|
567
570
|
if mformula.is_isotopologue:
|
|
568
571
|
dict_result['Mono Isotopic Index'] = mformula.mspeak_index_mono_isotopic
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
__author__ = "Yuri E. Corilo"
|
|
2
2
|
__date__ = "Jun 24, 2019"
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
from numpy import isnan, power, exp, nextafter
|
|
4
|
+
|
|
5
|
+
from numpy import isnan, power, exp, nextafter, array
|
|
6
6
|
from pandas import DataFrame
|
|
7
7
|
from scipy.stats import pearsonr, spearmanr, kendalltau
|
|
8
8
|
|
|
@@ -11,6 +11,19 @@ from corems.encapsulation.constant import Labels
|
|
|
11
11
|
from corems.encapsulation.factory.parameters import MSParameters
|
|
12
12
|
from corems.molecular_id.calc.SpectralSimilarity import SpectralSimilarity
|
|
13
13
|
|
|
14
|
+
# this is to handle both versions of IsoSpecPy, 2.0.2 and 2.2.2
|
|
15
|
+
# TODO in a future release remove support for legacy isospecpy
|
|
16
|
+
from packaging import version
|
|
17
|
+
import IsoSpecPy
|
|
18
|
+
isospec_version = IsoSpecPy.__version__
|
|
19
|
+
if version.parse(isospec_version) > version.parse('2.0.2'):
|
|
20
|
+
legacy_isospec = False
|
|
21
|
+
else: legacy_isospec = True
|
|
22
|
+
if legacy_isospec:
|
|
23
|
+
from IsoSpecPy import IsoSpecPy
|
|
24
|
+
print(f"IsoSpecPy version {isospec_version} is installed, and support is deprecated. Please update to 2.2.2")
|
|
25
|
+
|
|
26
|
+
|
|
14
27
|
class MolecularFormulaCalc:
|
|
15
28
|
"""Class of calculations related to molecular formula
|
|
16
29
|
|
|
@@ -645,15 +658,31 @@ class MolecularFormulaCalc:
|
|
|
645
658
|
atoms_count.append(formula_dict.get(atom_label))
|
|
646
659
|
masses_list_tuples.append(masses)
|
|
647
660
|
props_list_tuples.append(props)
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
661
|
+
if legacy_isospec:
|
|
662
|
+
iso = IsoSpecPy.IsoSpec(atoms_count,masses_list_tuples,props_list_tuples, cut_off_to_IsoSpeccPy)
|
|
663
|
+
conf = iso.getConfs()
|
|
664
|
+
masses = conf[0]
|
|
665
|
+
probs = exp(conf[1])
|
|
666
|
+
molecular_formulas = conf[2]
|
|
667
|
+
#print('conf', conf)
|
|
668
|
+
#print('probs', conf[1])
|
|
669
|
+
else:
|
|
670
|
+
# This syntax in IsoSpecPy 2.2.2 yields the same information as the legacy approach
|
|
671
|
+
iso = IsoSpecPy.IsoTotalProb(atomCounts = atoms_count, isotopeMasses = masses_list_tuples,
|
|
672
|
+
isotopeProbabilities = props_list_tuples, prob_to_cover =cut_off_to_IsoSpeccPy, get_confs=True)
|
|
673
|
+
masses = list(iso.masses)
|
|
674
|
+
probs = array(list(iso.probs))
|
|
675
|
+
confs = list(iso.confs)
|
|
676
|
+
|
|
677
|
+
molecular_formulas = []
|
|
678
|
+
for x in confs:
|
|
679
|
+
tmplist = []
|
|
680
|
+
for y in x:
|
|
681
|
+
tmplist.extend(list(y))
|
|
682
|
+
molecular_formulas.append(tmplist)
|
|
683
|
+
|
|
684
|
+
|
|
685
|
+
|
|
657
686
|
|
|
658
687
|
new_formulas = []
|
|
659
688
|
|