Использование гауссовых пиков для моделирования

физико-химические методы исследования, методики и другие вопросы аналитической химии
analytical chemistry, analysis and techniques for professionals
redfermi2012
Сообщения: 18
Зарегистрирован: Вт июл 03, 2012 2:38 pm

Использование гауссовых пиков для моделирования

Сообщение redfermi2012 » Вс сен 16, 2012 1:01 am

Здравствуйте!
Слышал об использовании перекрывающихся гауссовых пиков для моделирования, например, профилей элюции веществ (вычисленные для времен удерживание) или для рассчета чистых спектров веществ (используются сложное наложение нескольких гауссовых пиков). Не могли бы Вы подсказать как это делается (как ведутся расчеты) или подсказать литературу по данной теме?
Заранее благодарен за ответ.

Polychemist
Сообщения: 9726
Зарегистрирован: Вт дек 21, 2004 11:42 am

Re: Использование гауссовых пиков для моделирования

Сообщение Polychemist » Ср сен 19, 2012 8:26 am

Origin, там несложно. Ну очевидно всякие там мат. монстры. Иксятники подтянутся - раскажут о бесплатных. И часто Лоренц лучше фиттит.

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Пн сен 24, 2012 10:58 pm

Литература: A.Felinger "Data Analysis and Signal Processing in Chromatography", Elsevier Science, 1998
Кроме Origin есть еще PeakFit и IgorPro. Что-то умеют и другие пакеты (Fityk, DataFit, etc.), но у меня не возникало необходимости пользоваться чем-либо, кроме Origin и PeakFit для решения подобных задач. Есть, конечно, реализации для "монстров" - как минимум, видел оную для Matlab-а. Насчет наличия бесплатных альтернатив со сравнимой функциональностью я не уверен.
И далеко не всегда пики можно хорошо описать "канонической" гауссианой. Впрочем, в книге у Фелингера вопрос рассмотрен весьма подробно.
Последний раз редактировалось bf109xxl Пн сен 24, 2012 11:24 pm, всего редактировалось 1 раз.

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Пн сен 24, 2012 11:23 pm

Polychemist писал(а):И часто Лоренц лучше фиттит.
"Армяне лучше, чем грузины!" © Анекдотическое :wink:
Вообще-то, выбор функции, описывающей хроматографический пик, должен определяться механизмом уширения, а не потому, что "лучше фиттит". Функций, описывающих хроматографические пики, довольно много - несколько десятков, пожалуй.
Вот ссылка на обзор: "Mathematical functions for the representation of chromatographic peaks"

Аватара пользователя
C10H16
Сообщения: 723
Зарегистрирован: Ср мар 14, 2007 3:12 pm

Re: Использование гауссовых пиков для моделирования

Сообщение C10H16 » Ср сен 26, 2012 2:28 pm

Эволюционный факторный анализ (EFA) и его модификации (FSMW-EFA, E-EFA). Про EFA в хроматографии эти два небольших обзора. Программная реализация легко осуществима самостоятельно (если матричную алгебру мало-мальски знаете) в MatLab или его бесплатном линуксовом аналоге Octave. Есть уже написанная MCR-ALS (Рома Таулер):

Код: Выделить всё

http://www.mcrals.info/
Есть ли там обработка хроматограмм - не помню, но скорее всего есть, программа грамотная.
Но всё это только при условии спектральной регистрации процесса хроматографии.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Бог даёт лучшее тому, кто оставляет выбор за Ним

Аватара пользователя
C10H16
Сообщения: 723
Зарегистрирован: Ср мар 14, 2007 3:12 pm

Re: Использование гауссовых пиков для моделирования

Сообщение C10H16 » Ср сен 26, 2012 2:31 pm

Один нюанс - EFA не требует применения Гауссовых или Лоренцовых функций. Там нужен набор спектров. В этом есть большой плюс, но из-за этого иногда при расчётах могут возникать некоторые минусы...
Бог даёт лучшее тому, кто оставляет выбор за Ним

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Чт сен 27, 2012 12:58 am

C10H16 писал(а):Но всё это только при условии спектральной регистрации процесса хроматографии.
...что делает данный метод куда менее привлекательным, т.к. его применимость будет весьма ограниченной. Эта вся хемометрика хорошо известна и давно описана в книжках - например, у Бреретона. Впрочем, в некоторых случаях может оказаться полезным. А вообще, в хроматографии форма пика бывает плохо воспроизводимой - я столкнулся с этим при попытке использовать разные модели для решения обратной задачи нахождения концентрационного профиля при ГПХ-разделении белков.

redfermi2012
Сообщения: 18
Зарегистрирован: Вт июл 03, 2012 2:38 pm

Re: Использование гауссовых пиков для моделирования

Сообщение redfermi2012 » Пн окт 01, 2012 12:18 pm

Спасибо за помощь! Просто прочитал две статьи:
http://rcs.chph.ras.ru/Tutorials/grey.htm
http://rcs.chph.ras.ru/Tutorials/mcr.htm
Особенно заинтересовала первая статья. Но весь вопрос возник из одной фразы:
Для моделирования спектров использовались перекрывающиеся гауссовы пики, вычисленные для 53 условных длин волн
. В прилагающемся к статье файле, данные готовые есть, а откуда взяты и как просчитаны-ВОПРОС :issue: . И где прочитать про это тоже не знаю :dontknow: .
Последний раз редактировалось redfermi2012 Ср окт 03, 2012 12:12 pm, всего редактировалось 3 раза.

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Пн окт 01, 2012 3:13 pm

Там же все сказано: нужен "Chemometrics Add-In". Обратитесь к авторам, они обещают полную версию по запросу. Это как раз случай "хемометрический", когда доступны спектральные данные.
Правильно заданный вопрос - это большая экономия времени, однако.

redfermi2012
Сообщения: 18
Зарегистрирован: Вт июл 03, 2012 2:38 pm

Re: Использование гауссовых пиков для моделирования

Сообщение redfermi2012 » Вт окт 02, 2012 12:42 am

Там же все сказано: нужен "Chemometrics Add-In". Обратитесь к авторам, они обещают полную версию по запросу. Это как раз случай "хемометрический", когда доступны спектральные данные. Правильно заданный вопрос - это большая экономия времени, однако.
Это настройка не помогает для решения моего вопроса. Она нужна непосредственно для решения задач, которые описаны в статьях. А смоделированные спектральные данные относятся к исходным данным, как они берутся в этом и вопрос весь. Читал диссертацию автора статей, там тоже ничего такого не сказано и указанной настройки он в ней (в диссертации) при моделировании не использует.

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Вт окт 02, 2012 8:30 am

redfermi2012 писал(а):как они берутся в этом и вопрос весь
1. Можно задать вопрос автору по е-мейлу.
2. Скорее всего, берется некая более-менее "правдоподобная" сумма гауссиан методом "от балды" - вручную или с использованием генератора псевдослуч.чисел "генерится" набор параметров пиков так, чтобы спектр был похож на настоящий. Важно лишь, чтобы количество пиков, их уширения и степени перекрытия были близки к реальным. Конкретные же цифири не столь важны. Ну, это мое такое личное мнение - скажем, я именно таким макаром делал тестовые данные для решения схожих задач (обратных некорректных), но без "хемометрики". Пиков в спектре немного, чистых компонентов тоже, посему соорудить таблицу с параметрами пиков и потом генерить спектр по ней элементарно. Единственное, я никогда не пользовался Екселем для этих целей. :)

redfermi2012
Сообщения: 18
Зарегистрирован: Вт июл 03, 2012 2:38 pm

Re: Использование гауссовых пиков для моделирования

Сообщение redfermi2012 » Ср окт 03, 2012 12:50 am

2. Скорее всего, берется некая более-менее "правдоподобная" сумма гауссиан методом "от балды" - вручную или с использованием генератора псевдослуч.чисел "генерится" набор параметров пиков так, чтобы спектр был похож на настоящий
Я тоже думал и думаю, что так делалось :D ...
Ну, это мое такое личное мнение - скажем, я именно таким макаром делал тестовые данные для решения схожих задач (обратных некорректных), но без "хемометрики". Пиков в спектре немного, чистых компонентов тоже, посему соорудить таблицу с параметрами пиков и потом генерить спектр по ней элементарно. Единственное, я никогда не пользовался Екселем для этих целей.
А почитать где-нибудь подробнее про это можно? :235:

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Ср окт 03, 2012 9:43 am

redfermi2012 писал(а): А почитать где-нибудь подробнее про это можно? :235:
"Про это" - про что именно?

redfermi2012
Сообщения: 18
Зарегистрирован: Вт июл 03, 2012 2:38 pm

Re: Использование гауссовых пиков для моделирования

Сообщение redfermi2012 » Ср окт 03, 2012 10:58 am

"Про это" - про что именно?
Про это-это про то как именно, например, Вы делали:
тестовые данные для решения схожих задач (обратных некорректных), но без "хемометрики".
Причем и без использования Екселя?
Литературный источник подскажите, если не сложно :shuffle: .

Cherep
Сообщения: 23485
Зарегистрирован: Чт окт 30, 2003 9:22 am

Re: Использование гауссовых пиков для моделирования

Сообщение Cherep » Ср окт 03, 2012 11:57 am

<offtopic>
redfermi2012 писал(а): В прилагающемся экселевском файле.
:facepalm: :facepalm: :facepalm: :facepalm:
попса гложит мозги учёных
</offtopic>

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Ср окт 03, 2012 6:35 pm

Ну так я описал уже подробно. Что еще можно тут сказать? Ну, берете в том же Origin создаете таблицы параметров пиков (сдвиг x0, уширение w, экстенсивный параметр или площадь A, а фон y0 - его для тестов лучше брать нулевой, ИМХО) для каждого чистого компонента, можно оформить в виде "листов" (sheets) в одной "книге" (book), хотя я не люблю так из-за недоработанности доступа к "многолистовым" таблицам, потом используя функцию gauss() генерите в цикле по количеству пиков сумму гауссиан y_0, потом накладываете случайные флуктуации с заданным соотношением сигнал/шум SN, используя либо нормально распределенные значения (функция rand() ), либо по Пуассону (poisson() ):
y_noisy=y_0*(1+rand()/SN)
В случае гауссова распределения ошибки нужно что-то делать с отрицательными значениями - либо обрезать, либо обращать. Фильтрация элементарна:
y_noisy_flt=y_noisy<0?X:y_noisy, где X==0 или -y_noisy по желанию.

В Matlabe то же самое (даже еще проще), только создаете либо трехмерный массив "компонент - пик - параметры пика", либо набор двумерных массивов для каждого чистого компонента. И опять же в цикле элементарно суммируете гауссианы, накладывая потом тем же методом случайную компоненту.
Потом можно отфильтровать: y_noisy(y_noisy<0)=0; или y_noisy(y_noisy<0)=-y_noisy;

Я искренне не понимаю, что тут еще нужно читать? Или Вас интересуют методы решения обратных некорректных задач?

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Ср окт 03, 2012 6:48 pm

Cherep писал(а):<offtopic>
попса гложит мозги учёных
</offtopic>
Я, хоть и не юзаю Ексель, но все же считаю его неплохим и мощным инстрУментом для многих задач. Другое дело, что визуализация в нем хреноватая, плюс, отсутствуют многие функции для обработки данных, но эти функции нужны ну ооооочень малому количеству пользователей. Я предпочитаю Origin и Matlab: первый - за лаконичность LabTalk-а (несмотря на его эзотеричность), второй - просто за лаконичность и элегантность записи операций с массивами и матрицами. Но только вот в том же Origin'е доступ к данным по сравнению с Екселем сложнее, причем, я не нахожу эту сложность оправданной. К значению в ячейке таблицы можно доступиться несколькими разными способами, причем не все способы разрешают изменение значения. Мое мнение - перемудрили. Вместо логичного развития LabTalk'а предложили OriginC, писать на котором удобно только разработчикам, а вот обрабатывать данные - куда менее удобно, чем c LabTalk-ом в Script window. Вот и получается, что Origin - это орудие для вченого с большими запросами, ради которых стоит разбираться со сложным и громоздким "инструментом". А для большинства аналитиков Екселя будет вполне достаточно. Только бы использовали его возможности ширее. Надеюсь, в Екселе уже поправили глюки с некоторыми статистическими функциями. А то их бережно хранили как минимум до версии 2003. :roll:

ЗЫ. Локализованность имен функций в Екселе меня отпугнула от него враз и навсегда. Я не по-аглицки в компьютерных вопросах непонимэ.

Cherep
Сообщения: 23485
Зарегистрирован: Чт окт 30, 2003 9:22 am

Re: Использование гауссовых пиков для моделирования

Сообщение Cherep » Сб окт 06, 2012 5:08 pm

<offtopic>
а лицензии есть?
на офис, на Origin и на Matlab:
</offtopic> :D

bf109xxl
Сообщения: 150
Зарегистрирован: Вт авг 16, 2005 10:27 pm

Re: Использование гауссовых пиков для моделирования

Сообщение bf109xxl » Вс окт 07, 2012 11:50 am

Cherep писал(а):<offtopic>
а лицензии есть?
</offtopic> :D
Есть. "Контора" платит. Ориджин 8.6 - корпоративка, с сервером лицензий, но на месяц можно "отдалживать" лицензию и работать без сервера. Матлаб 2012а - 10 или 12 лицензий на всю шарагу, поэтому ежели кто забывает завершить сеанс, ему товарищи строго указывают. Офис - 2010, корпоративный, еще лицензионная EndNote X5 (обещали вскорости апдейтнуть на X6, вроде). "Так чтааааа" &copy; Первый "Гарант" :mrgreen: у нас усё чыста. :shuffle: :wink:

Cherep
Сообщения: 23485
Зарегистрирован: Чт окт 30, 2003 9:22 am

Re: Использование гауссовых пиков для моделирования

Сообщение Cherep » Вс окт 07, 2012 5:06 pm

:deal:
:dontknow:

PS мое дело напомнить, что оно не свободное, чтобы юные деятели науки не обольщались

Ответить

Вернуться в «аналитическая химия / analytical chemistry»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей