def create_mass_spectrum(): '''parse transient data from Bruker into a mass spectrum class object Parameters ---------- file_location: str The full path of the *.d data folder Returns ------- MassSpecfromFreq() class (See MassSpecfromFreq class for more details) ''' file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d/" bruker_reader = ReadBrukerSolarix(file_location) bruker_transient = bruker_reader.get_transient() MSParameters.mass_spectrum.threshold_method = 'auto' MSParameters.mass_spectrum.noise_threshold_std = 3 MSParameters.ms_peak.peak_min_prominence_percent = 0.01 mass_spectrum = bruker_transient.get_mass_spectrum(plot_result=False, auto_noise=True, auto_process=True, keep_profile=True) return mass_spectrum
def get_mass_spectrum(file_location): bruker_reader = ReadBrukerSolarix(file_location) bruker_transient = bruker_reader.get_transient() return bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True)
def test_create_mass_spectrum(): file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d/" bruker_reader = ReadBrukerSolarix(file_location) TransientSetting.apodization_method = 'Hamming' bruker_transient = bruker_reader.get_transient() TransientSetting.apodization_method = 'Blackman' TransientSetting.number_of_truncations = 1 bruker_transient = bruker_reader.get_transient() mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) MassSpectrumSetting.threshold_method = 'signal_noise' mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) MassSpectrumSetting.threshold_method = 'relative_abundance' mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) mass_spectrum_obj.freq_exp mass_spectrum_obj.dir_location mass_spectrum_obj.resolving_power mass_spectrum_obj.signal_to_noise mass_spectrum_obj.max_abundance mass_spectrum_obj.filter_by_mz(200, 1000) mass_spectrum_obj.reset_indexes() mass_spectrum_obj.filter_by_abundance(0, 1000) mass_spectrum_obj.reset_indexes() mass_spectrum_obj.filter_by_max_resolving_power(12, 3) mass_spectrum_obj.reset_indexes() mass_spectrum_obj.filter_by_min_resolving_power(15, 3) mass_spectrum_obj.reset_indexes() mass_spectrum_obj.filter_by_noise_threshold() mass_spectrum_obj.reset_indexes() mass_spectrum_obj.get_mz_and_abundance_peaks_tuples() mass_spectrum_obj.get_masses_count_by_nominal_mass() mass_spectrum_obj.resolving_power_calc(12, 1) mass_spectrum_obj._f_to_mz() mass_spectrum_obj.number_average_molecular_weight(profile=True) mass_spectrum_obj.reset_cal_therms(mass_spectrum_obj.Aterm, mass_spectrum_obj.Bterm, mass_spectrum_obj.Cterm) mass_spectrum_obj.reset_indexes() kendrick_group_index = mass_spectrum_obj.kendrick_groups_indexes() mass_spectrum_obj.reset_indexes() return mass_spectrum_obj, kendrick_group_index
def get_mass_spectrum(self, scan_number): bruker_reader = ReadBrukerSolarix(self.lcms.file_location) bruker_transient = bruker_reader.get_transient(scan_number) mass_spec = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=self.auto_process, keep_profile=self.keep_profile, auto_noise=self.auto_noise) return mass_spec
def test_import_transient(): # from corems.structure.input.MidasDatFile import ReadMidasDatFile file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d/" MSParameters.transient.apodization_method = "Hanning" MSParameters.transient.number_of_truncations = 0 MSParameters.transient.number_of_zero_fills = 1 with ReadBrukerSolarix(file_location) as bruker_transient: MSParameters.mass_spectrum.threshold_method = 'relative_abundance' MSParameters.mass_spectrum.relative_abundance_threshold = 10 MSParameters.ms_peak.peak_min_prominence_percent = 1 mass_spectrum_obj = bruker_transient.get_mass_spectrum( plot_result=False, auto_process=True) mass_spectrum_obj.plot_profile_and_noise_threshold() #pyplot.show() print(len(mass_spectrum_obj)) print(mass_spectrum_obj.mspeaks[0].mz_exp, mass_spectrum_obj.mspeaks[-1].mz_exp)
def test_mspeaks_fit(): from matplotlib import pyplot file_location = Path.cwd() / "tests/tests_data/ftms/ESI_NEG_SRFA.d/" bruker_reader = ReadBrukerSolarix(file_location) bruker_transient = bruker_reader.get_transient() mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) i = 0 mass_spectrum_obj[3].plot_simulation() mass_spectrum_obj[3].plot_simulation(sim_type="gaussian", oversample_multiplier=10) mass_spectrum_obj[3].plot_simulation()
def create_mass_spectrum(): file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d/" bruker_reader = ReadBrukerSolarix(file_location) bruker_transient = bruker_reader.get_transient() mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) # polariy need to be set if reading a text file #polariy = -1 # load any type of mass list file, change the delimeter to read another type of file, i.e : "," for csv, "\t" for tabulated mass list, etc #mass_list_reader = Read_MassList(file_location, ) #mass_spectrum_obj = mass_list_reader.get_mass_spectrum(polarity, auto_process=True) return mass_spectrum_obj
def run_bruker_transient(file_location, corems_params_path): with ReadBrukerSolarix(file_location) as transient: transient.set_parameter_from_json(corems_params_path) mass_spectrum = transient.get_mass_spectrum(plot_result=False, auto_process=True) return mass_spectrum
def run_bruker(file_location): with ReadBrukerSolarix(file_location) as transient: MSParameters.mass_spectrum.threshold_method = 'auto' MSParameters.mass_spectrum.s2n_threshold = 6 mass_spectrum = transient.get_mass_spectrum(plot_result=False, auto_process=True) # mass_spectrum.plot_profile_and_noise_threshold() # plt.show() return mass_spectrum, transient.transient_time
def run_bruker(file_location): with ReadBrukerSolarix(file_location) as transient: mass_spectrum = transient.get_mass_spectrum(plot_result=False, auto_process=True) # find_formula_thread = FindOxygenPeaks(mass_spectrum) # find_formula_thread.run() # mspeaks_results = find_formula_thread.get_list_found_peaks() # calibrate = FreqDomain_Calibration(mass_spectrum, mspeaks_results) # calibrate.ledford_calibration() # mass_spectrum.clear_molecular_formulas() return mass_spectrum
def run_bruker(file_location): with ReadBrukerSolarix(file_location) as transient: MSParameters.mass_spectrum.threshold_method = 'auto' MSParameters.mass_spectrum.s2n_threshold = 6 mass_spectrum = transient.get_mass_spectrum(plot_result=False, auto_process=True) # mass_spectrum.plot_profile_and_noise_threshold() # plt.show() # find_formula_thread = FindOxygenPeaks(mass_spectrum) # find_formula_thread.run() # mspeaks_results = find_formula_thread.get_list_found_peaks() # calibrate = FreqDomain_Calibration(mass_spectrum, mspeaks_results) # calibrate.ledford_calibration() # mass_spectrum.clear_molecular_formulas() return mass_spectrum, transient.transient_time
def test_import_transient(): # from corems.structure.input.MidasDatFile import ReadMidasDatFile # file_location = Path.cwd() / "tests/tests_data/SRFAII_20ppm_14Jul2020_IATp08_After_WebEx_1_01_54136.d/" file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d" MSParameters.transient.apodization_method = "Hanning" MSParameters.transient.number_of_truncations = 0 MSParameters.transient.number_of_zero_fills = 1 with ReadBrukerSolarix(file_location) as bruker_transient: #MSParameters.mass_spectrum.threshold_method = 'relative_abundance' #MSParameters.mass_spectrum.relative_abundance_threshold = 1 #MSParameters.mass_spectrum.threshold_method = 'signal_noise' #MSParameters.mass_spectrum.s2n_threshold = 50 MSParameters.mass_spectrum.threshold_method = 'auto' MSParameters.mass_spectrum.noise_threshold_std = 3 MSParameters.ms_peak.peak_min_prominence_percent = 1 mass_spectrum_obj = bruker_transient.get_mass_spectrum( plot_result=False, auto_process=True) #from corems.encapsulation.constant import Labels #from corems.mass_spectrum.input import numpyArray #mass_spectrum_test = numpyArray.ms_from_array_profile(mz=mass_spectrum_obj.mz_exp_profile, # abundance=mass_spectrum_obj.abundance_profile, # dataname='test', # polarity=-1, # data_type=Labels.booster_profile, # ) #mass_spectrum_test.plot_mz_domain_profile() mass_spectrum_obj.plot_profile_and_noise_threshold() pyplot.show()
from corems.transient.input.brukerSolarix import ReadBrukerSolarix from corems.molecular_id.search.molecularFormulaSearch import SearchMolecularFormulas from corems.mass_spectrum.output.export import HighResMassSpecExport from matplotlib import pyplot file_path= 'tests/tests_data/ftms/ESI_NEG_SRFA.d' #Bruker Solarix class reader bruker_reader = ReadBrukerSolarix(file_path) #access the transient object bruker_transient_obj = bruker_reader.get_transient() #calculates the transient duration time T = bruker_transient_obj.transient_time #access the mass spectrum object mass_spectrum_obj = bruker_transient_obj.get_mass_spectrum(plot_result=False, auto_process=True) # - search monoisotopic molecular formulas for all mass spectral peaks # - calculate fine isotopic structure based on monoisotopic molecular formulas found and current dynamic range # - search molecular formulas of correspondent calculated isotopologues, # - settings are stored at SearchConfig.json and can be changed directly on the file or inside the framework class SearchMolecularFormulas(mass_spectrum_obj, first_hit=False).run_worker_mass_spectrum() # iterate over mass spectral peaks objs for mspeak in mass_spectrum_obj.sort_by_abundance(): # returns true if there is at least one molecular formula associated # with the mass spectral peak
from matplotlib import pyplot import matplotlib from pathlib import Path #matplotlib.use('Agg') #file_name = "20190911_Kew_APPI_Elliot_DRY_IAT100ms_50ulmin_000001.d" #file_name = "20190912_Kew_LDI_Elliot_DRY_C4_0_C4_000001.d" #file_name= "20190912_kew_ldi_elliot_spe_f4_anchorchip_0_f4_000001.d" #file_name = "20190912_Kew_LDI_Elliot_DRY_C4_AnchorChip_0_C4_000001.d" #file_name = "20190911_Kew_ESI_Elliot_DRY_IAT100ms_000001.d" #file_name = "20190911_Kew_ESI_Elliot_SPE_IAT100ms_000002.d" #file_name = "20190912_Kew_LDI_Elliot_Whole_B15_1500um_0_B15_000001.d" file_location = Path.cwd() / "tests/tests_data/ESI_NEG_SRFA.d" bruker_reader = ReadBrukerSolarix(file_location) bruker_transient = bruker_reader.get_transient() T = bruker_transient.transient_time print(T, "T") B = 15 mass_spectrum_obj = bruker_transient.get_mass_spectrum(plot_result=False, auto_process=True) #mass_spectrum_obj.plot_profile_and_noise_threshold() MolecularFormulaSearchSettings = MolecularFormulaSearchSettings()