LINUX.ORG.RU
ФорумTalks

[специалистам по всему]Обработка спектра

 


0

0

http://slil.ru/25497226 Необходимо написать небольшую программу для обработки подобных спектров. 1)Показать фоновую линию(на данном спектре она присутствует, но не совсем удачная местами) 2)программа должна определить пики и подписать их. какие алгоритмы(можно ссылки на литературу) можете посоветовать

Ответ на: комментарий от Sancho_s_rancho

Сдается мне чувак, что линия спектра в общем виде является сверткой истинного спектра и аппаратной функции системы регистрации. Задача сводится к интегральному уравнению Фредгольма первого рода?

Sun-ch
()
Ответ на: комментарий от Sun-ch

не советую возлагать на компьютер задачу нахождения пиков. это не тривиальная задача, в которой должен присутствовать некий субъективизм и учитываться опыт экспериментатора. так что проще тыкнуть мышкой, указывая программе пики, а аппроксимацию и т.д. можно доверить машине.

greenzu
()

>>определить пики и подписать их

В каком смысле подписать? Найти их положение по оси Х?

anonymous
()
Ответ на: комментарий от Sun-ch

Саныч, а вы там в чикаге как делаете? Х*ём по тачпаду?

anonymous
()
Ответ на: комментарий от Sun-ch

>>является сверткой истинного спектра и аппаратной функции системы регистрации

А фон тогда откуда берётся?

anonymous
()
Ответ на: комментарий от greenzu

пользователь все-равно будет смотреть. задача - уменьшение рутинных операций

Sancho_s_rancho
() автор топика
Ответ на: комментарий от anonymous

рентгеновский флуоресцентный анализ. фон от рассеяния и проч. бяки

Sancho_s_rancho
() автор топика
Ответ на: комментарий от anonymous

>В каком смысле подписать? Найти их положение по оси Х?

программа находит пик, а дальше все просто. Лезет в базу, где указано какой элемент таблички менделеева имеет пик на этой длине волны.

Sancho_s_rancho
() автор топика
Ответ на: комментарий от Sun-ch

>Естественно в алгоритмы заложено использование априорной информации.

Можешь ссылку на какие-либо примеры кинуть. надо что-то более разжеванное.

Sancho_s_rancho
() автор топика
Ответ на: комментарий от Sancho_s_rancho

Ну сходи по ссылке, там же тексты программ на С и фортране + список литературы.

Sun-ch
()
Ответ на: комментарий от DNA_Seq

> Дык подобного софта - жёпой жуй. Нафиг лисапед?

Хорошо. дайте ссылку на опенсорс софт, который вычертит фон и обозначит пики.

Sancho_s_rancho
() автор топика
Ответ на: комментарий от greenzu

>>не советую возлагать на компьютер задачу нахождения пиков. это не тривиальная задача, в которой должен присутствовать некий субъективизм и учитываться опыт экспериментатора. так что проще тыкнуть мышкой, указывая программе пики, а аппроксимацию и т.д. можно доверить машине.

таки не вижу никаких проблем с определением пиковых значений числовой последовательности

Ex ★★
()
Ответ на: комментарий от Sancho_s_rancho

>Хорошо. дайте ссылку на опенсорс софт, который вычертит фон и обозначит пики.

Для Ws: New_Profile v3.4 (1.8 Mb) (Freeware) http://remax22.chat.ru/program_remax_1.htm

На сайте сказано, что есть краткое описание, документация, исходный код. При большом желании можно переделать под Linux.

quickquest ★★★★★
()
Ответ на: комментарий от Sancho_s_rancho

> И каждому, кто приобретет спектрометр в нагрузку давать ковыряние в octave?

Да нет, зачем же? Можно просто любоваться на спектрометр, даже и не включать... Пыль только стирать регулярно...

Uncle_Theodore ★★
()
Ответ на: комментарий от Sancho_s_rancho

Поиск по репозитоию Дебиана дал следующее -

polyxmass

Mass spectrometry software framework
GNU polyxmas is an official package of the GNU project. It is a fully
integrated software suite to perform a wide variety of mass
spectrometric and (bio-)polymer chemistry simulations. This software
program is also useful to help analysing mass spectrometric data,
such as data obtained on polymer sequences fragmented in the gas
phase... This software program gives the user the ability to make
brand new polymer chemistry definitions, use them in a molecular mass
calculator, and edit polymer sequence files. Each action performed by
the user automatically triggers recalculation of all the masses
according to the mass calculation engine's configurations that were
previously set by the user.

Chemical simulations encompass polymer sequence cleavage (either
chemical or enzymatic), gas-phase fragmentations, chemical
modification of any monomer in the polymer sequence...

This package is a dependency package. This package depends on the
following three packages: polyxmass-bin (the GUI program),
polyxmass-common (the fundamental chemical data required to run GNU
polyxmass usefully) and polyxmass-data (supplementary chemical data).

Homepage: http://www.polyxmass.org

Задача даже более сложная чем сабж. Думаю поиск по саурсфорджу даст неплохие результаты

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от quickquest

Что-то исходников я не вижу. Используется там метод наимееньших квадратов.

Sancho_s_rancho
() автор топика

>Необходимо написать небольшую программу для обработки подобных спектров.

Как я понимаю нулевая линия описывается например параболой или экспонентой. В таком случае можно построить подобную линию методом наименьших квадратов (конечно в этом процессе желательно не учитывать большие пики). А потом начинается самое интересное:

1. тупо найти пики и полуширины (локальный максимум, алгоритмов дофига и простых)

2. попытаться вытащить больше, используя априорную информацию. В этом случае начинается уже более серьёзная математика, начиная от фурье-, стат-, и вейвлет анализа заканчивая моделированием свёртки модельных спектров с модельными аппаратными функциями.

P.S. Для простоты, после определения нулевой линии лучше всего отмасштабировать оси, чтобы нулевая линия стала прямой.

ArtSh ★★★
()
Ответ на: комментарий от ArtSh

P.P.S. на счёт литературы. Лучше всего найти книги (можно через лабораторки для студентов) характерные именно для этой отрасли физики. Например можно поискать методички к лабораторкам по рентгено-флуоресцентному анализу на ближайщей кафедре Физики твёрдого тела или аналогичных.

ArtSh ★★★
()
Ответ на: комментарий от ArtSh

Fityk is a flexible and portable program for nonlinear fitting of analytical functions (especially peak-shaped) to data (usually experimental data). In other words, for nonlinear peak separation and analysis.
.
It was developed for analyzing diffraction patterns, but can be also used in other fields, since concepts and operations specific for crystallography are separated from the rest of the program.
.
Fityk offers various nonlinear fitting methods, subtracting background, calibrating data, easy placement of peaks and changing peak parameters, automation of common tasks with scripts, and much more. The main advantage of the program is flexibility - parameters of peaks can be arbitrarily bound to each other, eg. the width of a peak can be an independent variable, can be the same as the width of another peak or can be given by a complicated - common to all peaks - formula.

greenzu
()

Спасибо всем ответившим!

теперь ,может быть, ПО для РФС отечественного производства станет лучше.

Sancho_s_rancho
() автор топика
Ответ на: комментарий от ArtSh

>>Как я понимаю нулевая линия описывается например параболой или экспонентой.

"базис" может зависит и от АЧХ прибора, может перед замером или же по требованию пользователя проводить калибровку прибора для расчета корректирующих коэффициентов. либо тупо прогонять через фнч а потом смотреть разность оригинального сигнала и сигнала пропущенного через фнч

Ex ★★
()
Ответ на: комментарий от Evgueni

Интересная либа. Один из авторов, кстати, как-то связан с дубнинским институтом.

http://www.fu.sav.sk/nph/projects/ProcFunc/Default.htm

Вот только саму библиотеку (за исключением класса TSpectrum из ROOT) в свободном доступе так найти и не удалось.

Morgendorffer
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.