Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Науменко Петр Анатольевич

Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT
<
Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Науменко Петр Анатольевич. Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT : Дис. ... канд. физ.-мат. наук : 05.13.18 СПб., 2006 110 с. РГБ ОД, 61:06-1/692

Содержание к диссертации

Введение

Глава 1. Применение программного комплекса BARSIC для анализа рентгенофлуоресцентных спектров 15

1.1. Программное обеспечение для рентгенофлуоресцентного анализа. 15

1.2. Программный комплекс BARSIC 18

1.3. Параметры РФ спектрометра и спектров 20

1.4. Расшифровка РФ спектров 23

1.4.1. Выбор аппроксимирующей кривой для линий спектра 25

1.4.2. Проблема ложных пиков 27

1.4.3. Метод условного порога 28

1.5. Программа «SpectraRF» 30

1.6. Метод огибающей 37

Выводы по главе 1 47

Глава 2. Применение программного комплекса ROOT для вычисления дальномерных корреляций в РЬРЬ-столкновениях при Js = 17 ГэВ 48

2.1. Дальномерные корреляции 50

2.2. Методика измерения дальномерных корреляций 52

2.3. Экспериментальная установка 53

2.4. Экспериментальные данные 54

2.5. Предварительная обработка данных 57

2.5.1. Отбор событий 57

2.5.2. Отбор треков 59

2.6. Выбор областей в пространстве быстроты 61

2.7. Общий анализ данных по всем классам центральности 63

2.8. Анализ данных по отдельным классам центральности 64

2.9. Анализ корреляции смешанных событий 65

2.10. Анализ систематической погрешности 66

2.11. Обсуждение результатов 67

Выводы по главе 2 70

Глава 3. Развитие программного комплекса BARSIC 72

3.1. Основные особенности программного комплекса BARSIC 75

3.2. Специальные функции 78

3.2.1. Специальные функции в языках FORTRAN, C++, Java, .NET 78

3.2.2. Специальные функции в математических программах 80

3.2.3. Специальные функции в BARSIC 84

3.3. Методы линейной алгебры 86

3.4. Компонент трехмерной графики на основе OpenGL 88

Выводы по главе 3 93

Заключение 95

Приложения ...96

Приложение 1. Реализация NNLS 96

Литература

Введение к работе

Актуальность темы диссертации. На сегодняшний день практически ни один физический эксперимент не обходится без применения компьютеров и специализированных программных комплексов, которыми оснащены исследовательские установки. Такие программные комплексы позволяют управлять экспериментальными установками, собирать, обрабатывать экспериментальную информацию и представлять результаты эксперимента в удобной и наглядной форме. Как правило, эти программные комплексы включают в себя специализированные библиотеки для решения широкого круга задач. Однако для решения некоторых задач методы и алгоритмы, реализованные в стандартных библиотеках, не подходят. Поэтому ведется постоянный поиск новых методов, либо модернизация и улучшение старых. В диссертации рассмотрены специализированные программные комплексы BARSIC и ROOT, предназначенные для использования в области физики.

Программный комплекс BARSIC создавался и использовался как среда разработки программного обеспечения для небольших экспериментальных установок. В настоящее время BARSIC применяется для автоматизации учебного и научного физического эксперимента в Санкт-Петербургском государственном университете, Уппсальском университете (Швеция), Копенгагенском университете (Дания). На нем создается программное обеспечение для промышленных оптических приборов фирмы ОКБ "Спектр" (Санкт-Петербург). Однако, в ходе разработки программного обеспечения для решения задач в области рентгенофлуоресцентной спектроскопии, акустики и ряде других областей в программном комплексе BARSIC был выявлен ряд существенных недостатков: отсутствовала поддержка работы с функциями Бесселя; не было устойчивого метода решения плохо обусловленных систем линейных алгебраических уравнений (СЛАУ); отсутствовала возможность построения трехмерных графиков с помощью

современных графических библиотек.

В связи с этим возникла необходимость добавления в программный комплекс BARSIC имеющихся в языках научного программирования и математических комплексах специальных функций, ряда более современных методов решения СЛАУ и средств трехмерной графики на основе OpenGL.

Важной частью работы было применение разрабатываемого в CERN программного комплекса ROOT. Область применения этого программного комплекса - обработка и визуализация экспериментальных данных в физике высоких энергий. Первоначальный вариант ROOT был создан для эксперимента NA49 (CERN). ROOT принят как базовая программная среда на одном из планируемых в CERN экспериментов ALICE (A Large Ion Collider Experiment), рядом физических экспериментов в США (STAR, CDF, ВаВаг), экспериментом HERA-B (Германия), международным исследовательским центром по физике ионов GSI (Германия), экспериментом FINUDA (INFN, Италия).

В диссертации ROOT использовался для измерения дальномерных

корреляций в столкновениях ядер свинца при Vs = 17 ГэВ. Для этого было разработано программное обеспечение, которое также будет применяться для анализа данных эксперимента ALICE.

Цель диссертации. Целью работы являлось развитие программного комплекса BARSIC и использование программного комплекса ROOT, направленные на получение с их помощью новых физических результатов. В диссертации решались следующие основные задачи:

разработка методов для расшифровки рентгенофлуоресцентных спектров и создание на основе этих методов программного обеспечения с открытым исходным кодом;

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

корреляций в столкновениях ядер свинца при Vs = 17 ГэВ; встраивание в программный комплекс BARSIC средств, направленных на расширение области его применения в физике.

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

  1. Разработана методика измерения интенсивностей линий рентгенофлуоресцентных спектров, основанная на комбинации методов «условного порога», сингулярного разложения матриц (SVD) и метода наименьших квадратов с неотрицательными решениями (NNLS).

  2. Разработан простой и не требующий дополнительной информации «метод огибающей» для устранения из рентгенофлуоресцентных спектров первого порядка непрерывного тормозного фона. Исследована его точность и область применимости. В отличие от имеющихся методов он позволяет вычитать фон из рентгенофлуоресцентных спектров без дополнительной информации о параметрах прибора и условиях измерения.

  3. Показано, что дальномерные корреляции в столкновениях ядер свинца при л/s = 17 ГэВ согласуются с целлюлярной моделью, основанной на теории взаимодействия кварк-глюонных струн, и моделью HIJING, учитывающей эффект Кронина.

Практическая ценность полученных результатов заключается в следующем: 1. Разработаны новые методы анализа данных, позволяющие

усовершенствовать расшифровку рентгенофлуоресцентных спектров.

Выяснена область применимости этих методов. Разработанные методы

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

  1. С помощью программного комплекса BARSIC разработана программа для расшифровки рентгенофлуоресцентных спектров. С ее помощью проверена работоспособность предложенных методов на реальных спектрах, полученных на приборах НПО «Спектрон». Исходные коды программы выложены в открытый доступ в WWW.

  2. На основе программного комплекса ROOT создано программное обеспечение для исследования дальномерных корреляций в столкновениях ядер свинца, протонов и др. С помощью этого программного обеспечения проведено исследование дальномерных

корреляций в столкновениях ядер свинца при Vs = 17 ГэВ (эксперимент NA49). В дальнейшем это программное обеспечение будет использовано при исследовании дальномерных корреляций в столкновениях ядер свинца (при других энергиях), протонов и др. (эксперименты NA49, ALICE).

4. В программный комплекс BARSIC были добавлены функции Бесселя,
методы решения СЛАУ, компонент для построения трехмерной графики,
основанный на современной графической библиотеке OpenGL. Это
позволило существенно расширить область применения программного
комплекса BARSIC в физике.

Апробация работы. Основные результаты докладывались на следующих конференциях, семинарах:

  1. VII международная конференция «Физика в системе современного образования» (ФССО-2001) (Санкт-Петербург 2001 г.),

  2. Телематика - 2002 (Санкт-Петербург 2002 г.),

  3. VIII международная конференция "Современные технологии обучения (СТО-2002)" (Санкт-Петербург, 2002 г.),

  1. NA49 Collaboration Meeting (GSI-Germany, November 2002 г.),

  2. Workshop on Computational Physics Dedicated to the Memory of Stanislav Merkuriev (Сакнт-Петербург, 2003 г.),

  3. NA49 collaboration meeting (CERN, March 2003 г.),

  4. NA49 collaboration meeting (CERN, October 2003 г.),

  5. XVII International Baldin Seminar on High energy Physics Problems (ISHEPP XVII), (Dubna, Russia, 2004 г.),

9. NA49 Collaboration Meeting (CERN, November 2004 г.),
10.PWG2 Meeting (CERN, October 2005 г.).

Публикации. По материалам диссертации опубликовано 9 работ, в том числе 4 статьи в реферируемых журналах (две из них были переведены на английский язык и опубликованы в иностранных научных журналах), 1 статья в трудах международной конференции и 4 тезисов докладов на научно-технических и научно-методических конференциях.

Структура и объем диссертации. Диссертация состоит из титульного листа, оглавления, введения, трех глав, заключения и списка литературы. Объем диссертации - 110 страниц, рисунков - 29, таблиц - 3, наименований в списке литературы - 112.

Благодарности. Автор выражает глубокую благодарность за сотрудничество и помощь при работе над диссертацией научному руководителю В.В. Монахову, а также А.В. Кожедубу, Л.А. Евстигнееву, О.А. Гурьевой, Г.А. Феофилову и В.В. Вечернину.

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ

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

В первой главе рассмотрены вопросы, связанные с проблемами

обработки рентгенофлуоресцентных спектров.

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

Одной из основных проблем расшифровки рентгенофлуоресцентных спектров является нахождение интенсивности линий, соответствующих интересуемым элементам. В процессе исследования был выбран набор базисных функций в виде линий от известных элементов. Из экспериментального рентгенофлуоресцентного спектра сначала устранялся фон. Затем была использована аппроксимация методом наименьших квадратов (МНК) с разложением спектра по выбранным базисным функциям. Для получения устойчивого решения использовался алгоритм SVD (Singular Value Decomposition - Сингулярное разложение матриц). В результате решения системы уравнений МНК методом SVD для интенсивностей некоторых линий в ряде случаев были получены отрицательные величины. Чтобы исключить появление таких нефизичных значений, был применен алгоритм решения задачи наименьших квадратов с ограничением - NNLS (Non Negative Least Squares), включающий SVD как основную часть.

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

МНК. Для устранения ложных пиков первого рода был применен известный в рентгенофлуоресцентном анализе метод «условного порога». Данный метод также позволяет уменьшить влияние шума, оптимизирует систему уравнений МНК за счёт уменьшения числа анализируемых линий, выделяет устойчивую часть решения и, таким образом, позволяет ускорить процесс обработки данных.

Для исследовательских целей была разработана программа «SpectraRF»
для анализа рентгенофлуоресцентных спектров. Программа написана на
языке BARSIC и позволяет обрабатывать файлы, полученные с
рентгенофлуоресцентных спектрометров, расшифровывать

экспериментальные рентгенофлуоресцентные спектры.

Особенностью РФ спектров является наличие непрерывного тормозного фона, который имеет строго определенную форму. В работе предложен метод «огибающей» - простой, надежный и не требующий никакой дополнительной информации, кроме самого спектра, метод устранения тормозного фона для рентгенофлуоресцентных спектров первого порядка. Его суть заключается в следующем: для точек спектра строится огибающая снизу. Поскольку линии рентгенофлуоресцентного спектра являются относительно узкими по сравнению с типичными расстояниями между ними, значения в точках касания огибающей можно считать равными величине фона (без учета шума). Фон в рентгенофлуоресцентных спектрах первого порядка имеет форму строго вогнутой кривой, поэтому огибающая всегда проходит близко к кривой фона.

На модельных спектрах исследована погрешность, вносимая устранением фона методом «огибающей». Показано, что метод «огибающей» чувствителен к шуму, имеющему отрицательные компоненты. Сделан вывод, что при небольшой величине шума метод «огибающей» является эффективным методом устранения непрерывного тормозного фона из рентгенофлуоресцентных спектров первого порядка, и позволяет находить

интенсивности линий с точностью от сотых до десятых долей процента.

Во второй главе рассмотрены особенности применения программного комплекса ROOT для исследования дальномерных корреляций в

столкновениях ядер свинца при Vs = 17 ГэВ (эксперимент NA49).

В данной части работы были исследованы следующие корреляции:

  1. <п>(п) - корреляции множественности заряженных частиц в разных быстротных диапазонах.

  2. (n) - корреляций между средним поперечным импульсом и множественностью заряженных частиц в разных быстротных диапазонах.

  3. () - корреляций между средними поперечными импульсами заряженных частиц в разных быстротных диапазонах.

Множественность - количество зарегистрированных заряженных частиц. Быстрота - безразмерная релятивистски ковариантная характеристика, описывающая скорость частицы. В ньютоновской механике выполняется аддитивный закон сложения скоростей, в релятивистской -аддитивный закон сложения быстрот. Термин "дальномерные" означает, что быстротные диапазоны, в которых проводились измерения множественности и среднего поперечного импульса заряженных частиц, удалены друг от Друга.

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

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

Данная часть работы связана с одним из экспериментов проекта NA49 (столкновения ускоренных частиц с фиксированной мишенью), который работает в Европейском Центре Ядерных Исследований (CERN, Швейцария) на ускорителе SPS (Super Proton Synchrotron) с 1996 года. Приведена схема экспериментальной установки, кратко описана функциональность основных детекторов, обсуждается структура экспериментальных данных, прошедших первичную и вторичную обработку. Рассмотрены библиотеки и классы программного комплекса ROOT для обработки экспериментальных данных. Приведен программный код типового сценария.

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

Исследование дальномерных корреляций проведено по двум направлениям. Во-первых, проанализированы данные по всем классам центральности. Построены двумерные гистограммы исследуемых величин и соответствующие им профили. Во-вторых, проанализированы данные по отдельным классам центральности. Построен график зависимости коэффициентов корреляции от класса центральности.

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

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

Корреляционные коэффициенты зависят от параметров отбора треков. Поэтому проводился анализ коэффициентов корреляции для различных значений параметров отбора треков. Такой анализ позволил сделать выводы о систематической погрешности полученных результатов.

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

В третей главе более детально описан программный комплекс BARSIC и работа, проведенная автором по его модернизации. Приведен краткий обзор основных направлений в области средств разработки программного обеспечения для физиков. Сформулированы требования, которым должен удовлетворять современный программный комплекс для физиков, предназначенный для использования на персональном компьютере. Показано, что программный комплекс BARSIC может быть полезен для решения достаточно важного класса физических задач.

В работе приведены основные особенности программного комплекса BARSIC: язык программирования, средства визуального проектирования оконного интерфейса, специфика интерпретатора псевдокомпилированного кода и его быстродействие. Рассмотрены основные области применения программного комплекса BARSIC.

Рассмотрены специальные функции в языках программирования FORTRAN, C++, Java, .NET и математических программах Maple, Mathematica, MatLab. Обсуждаются встроенные автором функции Бесселя, рассмотрены основные особенности работы с функциями Бесселя в

программном комплексе BARSIC. Приведен пример программы приложения для исследования колебаний тонкой пленки.

Обсуждаются встроенные автором методы линейной алгебры: SVD, NNLS и LDP (Least Distance Programming - вычисление наименьшего расстояния).

Рассмотрен разработанный автором компонент трехмерной графики на основе графической библиотеки OpenGL (Open Graphics Library - открытая графическая библиотека). Приведена архитектура OpenGL, описана функциональность библиотек GL (Graphic Library), GLU (Graphic Library Utilities), GLUT (Graphic Library Utilities Toolkit). Обосновано использование OpenGL для создания графического компонента. Приведена программа-приложение для построения трехмерных графиков функций.

Параметры РФ спектрометра и спектров

Спектры, использованные в данной работе, были получены на рентгеновском кристалл-дифракционном спектрометре «СПЕКТРОСКАН MAKC-GV» [1] (рис. 1). Данный спектрометр предназначен для определения содержания химических элементов в различных веществах, находящихся в твердом, порошкообразном или растворенном состояниях, а также нанесенных на поверхности и осажденных на фильтры.

Аналитические характеристики спектрометра: Диапазон определяемых элементов: от uNa до 94Р11; Типы образцов: жидкие, твердые, порошки, фильтры, пленки; Способ выделения линий спектра: дифракция на кристалле; Время количественного анализа пробы: от 3 минут; Время одного элементоопределения: от 10 до 100 секунд; Рентгенооптическая схема: по Иоганссону (Рис. 2); Энергетическое разрешение: от 9 эВ (Si К„) до 60 эВ (Fe К«); Собственная аппаратная погрешность: 0,5 %.

Технические характеристики: Напряжение на аноде рентгеновской трубки - (max): 50 кВ; Пробозагрузочное устройство: автоматическое на 16 образцов, из них 14 - диаметром до 20 мм и 2 образца (с вращением) диаметром до 40 мм; Интерфейс с ЭВМ: RS-232.

Рентгенооптическая схема спектрометра приведена на рис. 2 [23]. Линии характеристического спектра выделяются путем дифракции на монокристалле (LiF-200, С, PET, КАР, ML-44E и др.) излучения с определенной длиной волны X. Условием отражения излучения является уравнение Вульфа-Брэгга: 2dsmQ = nX где: d - постоянная кристаллической решетки; 0 - угол отражения от кристалла; п= 1,2,... - порядок дифракции. Спектры, полученные при п= 1, далее называются спектрами первого порядка, а при л = 2 - спектрами второго порядка.

Меняя угол падения 0 флуоресцентного излучения образца на кристалл (например, путем поворота кристалла), можно последовательно отразить и зарегистрировать детектором излучения все характеристические линии флуоресценции, т.е. измерить спектр излучения образца.

Характеристики спектров

Экспериментальные спектры содержали К и L - серии аналитических линий в диапазоне длин волн от 0,02 нм до 0,3 нм. Во всех спектрах присутствовала фоновая составляющая. Большинство спектров содержало группы из нескольких линий, спектры с одним ярко выраженным пиком встречались достаточно редко. Некоторые из групп линий перекрывали друг друга, что существенно затрудняло анализ и идентификацию этих линий.

Спектры, полученные со спектрометра, хранились в файлах формата .spc, содержали параметры измерений и данные об относительной интенсивности. В качестве примера ниже приведен начальный фрагмент данных из файла с одним из экспериментальных спектров (Sp_lCu.spc):

Первая строчка содержит информацию о режиме измерения спектра: 800 - начальная длина волны, миллиангстрем; 4 01 - число точек спектра; 5 - шаг, миллиангстрем; 1 - порядок спектра (1 или 2); 2 - экспозиция, секунд; 4 0 - напряжение на трубке, киловольт; После чего идут данные: 8682, 8175, 7452,...-относительная интенсивность для точек спектра (в числе событий детектора).

Метод условного порога

Методы удаления фона оставляют в спектре шумовую составляющую, что, как уже говорилось, может привести к возникновению ложных пиков, и тем самым исказить результаты расшифровки спектра. Поэтому нами был использован дополнительный метод устранения шума, который мы назвали методом «условного порога». Хочется отметить, что этот метод известен специалистам по РФА, однако ссылки на его описание в литературе нам найти не удалось. Суть метода заключается в следующем. Вводится понятие условной высоты максимума спектральных линий как минимальное значение / = min(/z,,/j2) из разностей интенсивностей, соответствующих максимуму и двум соседним минимумам (рис. 5).

Значение условного порога hnop вводится пользователем. Пики с условной высотой максимума меньше пороговой рассматриваются как шум и не учитываются при анализе. В результате при расшифровке спектра учитываются только линии, интенсивность которых больше порога. Введение условного порога позволяет значительно сократить число анализируемых линий и сильно ускорить математическую обработку спектров. Мы предложили объединить метод условного порога с использованием МНК. При этом сначала с помощью метода условного порога выделяются основные пики спектра, после чего в наборе базисных функций зануляются коэффициенты перед всеми линиями элементов, удаленных от пиков более чем на ширину РФ линий.

Особый интерес представляет сочетание SVD, NNLS и метода условного порога. Метод условного порога позволяет оптимизировать систему уравнений путем обнуления соответствующих коэффициентов перед базисными функциями. SVD обеспечивает нахождение устойчивого подмножества решений системы уравнений МНК. A NNLS гарантирует выполнение условия положительности интенсивностей. Такое сочетание до сих пор не использовалось в спектроскопии и, в частности, в РФА.

Программа «SpectraRF»

Для анализа РФ спектров нами была разработана предназначенная для исследовательских целей программа «SpectraRF». Программа написана на языке Barsic. Она позволяет обрабатывать файлы « .spc», полученные с РФА спектрометров фирмы «Спектрон», расшифоровывать экспериментальные и модельные рентгенофлуоресцентные спектры. Программа выложена в открытый доступ в WWW по адресу http://www.niif.spbu.ru/ monakhov/WWW/applicat_r.html. При необходимости она может быть легко модифицирована для анализа РФ спектров, полученных на приборах других фирм.

Программа состоит из следующих блоков: описание переменных; задание базисных функций; загрузка данных из файла; задание графической области; задание границ и размерности осей; реализация сдвига спектра вдоль оси X (длин волн); реализация метода огибающей (см. параграф 1.6); редактирование спектра и сохранение спектра с удаленным фоном или выделенной области спектра в отдельном файле; вычисление длины волны и полуширины отдельной линии; построение аппроксимирующей кривой интенсивности отдельно стоящей линии; задание табличных значений, и в случае отсутствия справочных данных — вычисление значений длины волны и полуширины линий различных элементов; задание матрицы плана, элементами которой являются значения базисных функций в каждом узле Xf, решение системы Ах = Ъ методом SVD; вызов алгоритма NNLS в случае некорректности задачи (отрицательных значений интенсивности какой-либо линии); введение «условного порога» для устранения шума; определение интенсивностей линий спектра для образцов многокомпонентного состава; составление таблицы для обозначения линий различных элементов соответствующим цветом; построение аппроксимирующих кривых для найденных элементов в соответствии с таблицей цветов; вывод вычисленных значений интенсивностей, соответствующих им длин волн и названий элементов в таблицу экранной формы; моделирование РФ спектров с различными возможностями задания параметров фона и линий элементов.

На рис. 6 изображена рабочая область программы SpectraRF, состоящая из графического окна и области с кнопками вспомогательных функций. В нижней левой части экрана отображаются исходные данные, например: напряжение на рентгеновской трубке Vo = 19587 В, порядок отражения n = 1, минимальная (Lmin = 0.0814 нм) и максимальная (Lmax = 0.285 нм) длина волны исследуемого спектра.

В правой верхней части экрана выводятся значения LI = 0.0814 нм и L2 = 0.285 нм - начальная и конечная длины волн анализируемого участка спектра, а также lmin = 0 и lmax =19195 - минимальная и максимальная относительные интенсивности линий данного участка спектра. Значения L1, L2 могут быть изменены по желанию пользователя для выделения отдельного участка спектра и записи его в файл с другим именем.

Методика измерения дальномерных корреляций

Отбор треков нужен для отсеивания сомнительных треков - тех, которые имеют характеристики, не позволяющие надежно установить параметры частицы или не соответствующие нужным частицам. Для отбора треков использовался класс T49CutTrack библиотеки T49ANA. Критерии отбора задавались командами, представленными в листинге 3.

Все значения параметров отбора треков взяты из работы [74]. При первичной обработке треки экстраполируются в некоторую начальную область. В классе T49CutTrack она задается параметрами Вх, By и ZFirst. Если начальная точка трека выходила за пределы этой области, такой трек не анализировался. Параметр NmaxPoint определял диапазон значений для количества точек, по которым реконструировался трек. Трек анализировался, если количество точек больше 30 и меньше 500. Параметр 3 метода SetNMaxPoint задавал разрешенные времяпролетные детекторы экспериментальной установки, в которых анализируемый трек мог быть обнаружен (0 - VTPC1, 1 - VTPC2, 2 - MTPS-R&L, 3 - все детекторы - см. рис. 16). Параметр Pt определял диапазон значений поперечного импульса частицы (трека). Трек отбрасывался, если значение поперечного импульса лежало вне диапазона. Отношение NFitPoint/NmaxPoint - это отношение числа точек, по которым трек был реконструирован, к максимальному количество точек, по которым трек мог быть реконструирован при идеальном измерении. Трек анализировался только при условии, что количество точек реконструкции составляло по крайней мере 50% от потенциально возможного количества точек. И, наконец, метод Accept Те st (проверка условий параметризации) [74] производил проверку трека на попадание значений поперечного импульса и азимутального угла частицы в пространство, ограниченное кривой: где: р - поперечный импульс частицы; Ф- азимутальный угол;

Такая проверка нужна для того, чтобы отсеять треки, попадающие в части детектора с плохим разрешением (углы ТРС). Параметры А, В, С и D определялись в зависимости от значения быстроты частицы, соответствующей треку [74].

В табл. 2 представлены полученные автором данные о количестве треков, среднем поперечном импульсе и средней множественности до проверки параметризации (верхняя цифра) и после проверки параметризации (нижняя). Данные разбиты по классам центральности. Буковой F обозначены события в передней (Forward) быстротной области, буквой В - в задней (Backward) быстротной области.

После проверки параметризации количество анализируемых частиц уменьшается на 70% в передней быстротной области (см. п. 2.4), и на 20% - в задней. Уменьшается также средний поперечный импульс: на 3% в передней и на 8% в задней быстротной области. Средняя множественность уменьшается на 14% в передней и на 25% в задней быстротной области.

Для вычисления быстроты (Rapidity) применялся метод GetRap класса T49ParticleRoot (листинг 3.3.). Входным параметром метода GetRap является масса частицы. В NA49 в результате PbPb-столкновений рождается 80% гс-мезонов, поэтому для вычисления быстроты бралась масса л-мезона 0,139 ГэВ. В результате получалась быстрота в лабораторной системе отсчета. Для приведения ее в систему центра масс необходимо вычесть из результата быстроту системы центра масс YclfM= 2,99.

Специальные функции в языках FORTRAN, C++, Java, .NET

При решении вычислительных задач с использованием Fortran, основным преимуществом является большое количество написанных на этом языке библиотек для математических расчетов. Наличие свободного доступа ко многим из этих библиотек делает их мощным инструментом для решения вычислительных задач и обработки данных. Наиболее известным хранилищем таких библиотек является сетевой репозитарий Netlib [103], включающий в себя библиотеки LINPACK, FTTPACK, NAPACK и многие другие. Наиболее известные коммерческие версии компиляторов языка Fortran (MS Fortran PowerStation 4.0 фирмы Microsoft и Compaq Visual Fortran) содержат библиотеку IMSL, включающую около тысячи математических и статистических процедур [83]. В частности, IMSL содержит следующие специальные функции: экспоненциальные интегралы и связанные с ними функции; гамма-функция и связанные с ней функции; функция ошибок и связанные с ней функции; функции Бесселя, Кельвина, Эйри, Матье; эллиптические интегралы; эллиптические и связанные с ними функции; и другие.

Из коммерческих библиотек, среди физиков также весьма популярна библиотека NAG [82]. В ней имеется тот же набор специальных функций.

Язык программирования C++ является стандартом в области системного программирования. Обычно он лидирует там, где требуется полный доступ к системным ресурсам, максимальное быстродействие и функциональность, а стоимость и время разработки не являются критическими факторами.

В коммерческом продукте Microsoft Visual C++.NET добавлено вычисление функций Бесселя первого и второго рода целого порядка вещественного аргумента. Также есть библиотека IMSL-C которая является аналогом библиотеки IMSL-FORTRAN [104].

Язык C++ (в коммерческих версиях компиляторов) превосходит Fortran в относительной простоте создания, развития и использования межпрограммных библиотек, в том числе dll. Надёжность программ, написанных на C++, выше, чем у Fortran, но её нельзя считать достаточной. В этом аспекте C++ проигрывает таким языкам как Java и Object Pascal.

Язык C++ заметно уступает Fortran по количеству имеющихся математических библиотек, как с открытыми исходными кодами, так и коммерческих. Однако большинство новых библиотек пишется на C++. Кроме того, на C++ с Fortran переводятся уже существующие библиотеки, и их количество постоянно растёт.

Язык Java, появившийся в 1995 году, несет в себе многие черты языка С и создавался как альтернатива C++. Разработчики Java ставили перед собой цель улучшить продуктивность разработки прикладного программного обеспечения [105]. В Java используется строгая типизация данных, упрощено использование библиотек, встроена современная система обработки исключительных ситуаций, большое внимание уделено проблемам безопасности. Преимуществами языка являются его высокая межплатформенная переносимость и достаточно удобная объектная модель.

Специальные функции реализованы в коммерческой библиотеке JMSL [86], являющейся аналогом библиотеки IMSL-FORTRAN.

Основным языком платформы .NET является созданный одновременно с ней (примерно в 2000 году) язык программирования С#. На С# написана коммерческая библиотека для научных вычисления IMSL-C# [106]. Хочется отметить, что одной из особенностей платформы .NET является возможность использования в программе, написанной на одном из языков программирования .NET, классов, созданных с помощью других языков .NET. Таким образом, скомпилированная в IL (Intermediate Language) библиотека может быть использована для написания программ-приложений научного характера на других языках программирования платформы .NET.

Язык С#, фактически, является усовершенствованным вариантом Java. Но для .NET имеются компиляторы языков Visual BASIC и Object PASCAL (Delphi), не требующих столь высокой квалификации в области программирования, как Java или С#. Поэтому можно ожидать постепенного увеличения доли ПО, написанного на языках .NET.

Похожие диссертации на Обработка и визуализация физических данных с помощью программных комплексов BARSIC и ROOT