Документ взят из кэша поисковой машины. Адрес оригинального документа : http://sed.sao.ru/~vo/disser/ch2.html
Дата изменения: Wed Jul 15 12:41:36 2009
Дата индексирования: Mon Oct 1 20:35:00 2012
Кодировка: koi8-r

Поисковые слова: m 101
Methods and results of radio cosmology. Chapter 2. Выход на текущий сервер sed.sao.ru            

Методы и результаты наблюдательной радиокосмологии

Диссертация на соискание уч. степени доктора физ.-мат. наук

Глава 2. Создание системы обработки данных FADPS и ее применение для анализа наблюдательных данных на РАТАН-600

gzipped PostScript версия здесь, 2005 г.
Начало Введение Глава 2 Глава 3 Глава 4 Глава 5 Глава 6 Библиография Приложения

Верходанов О.В.

Специальная Астрофизическая обсерватория


Оглавление


Основные результаты этой главы изложены в статьях рецензируемых изданий Verkhodanov et al., 1993; Verkhodanov, 1997; Verkhodanov, Kononov, 2002; Верходанов и Верходанова, 1999; Верходанов и др., 2005b.

2.1. Введение

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

Любая система обработки, какой бы дружелюбной она не была, требует определенного уровня компьютерной грамотности или просто подготовленности пользователя. Причем, чем выше дружелюбность системы, тем больше об этой системе необходимо знать. Подобные системы обработки данных зачастую бывают довольно громоздкими. Этими недостатками обладают системы, рассчитанные на универсальность: MIDAS, AIPS и др. Процедуры запуска системы, команды редактирования данных и выполнения той или иной операции обязывают знать базовый уровень системы обработки. Если учесть, что всякая развитая система обработки астрономических данных (ADPS - astronomical data processing system) является ``системой в системе'', то необходимость знания команд операционной системы, под которой работает ADPS, уже подразумевается. У развитых ADPS может быть еще один недостаток, связанный с тем, что принципы программирования и обработки изображений в такой ADPS отличаются от принципов операционной среды, под управлением которой эта система обработки существует.

Здесь предлагается иной подход к созданию системы обработки данных, реализованный, в частности, уже при создании ADPS для первого облучателя РАТАН-600 (Ерухимов и др., 1990; Верходанов и др., 1992a,b; Verkhodanov et al., 1993), предполагающий создание конструктора систем обработки из малых модулей и обеспечивающий простую настройку под различные процессоры. Назовем такой подход модульным, а систему обработки - гибкой системой обработки астрономических данных (FADPS - flexible astronomical data processing).

Отметим, что на РАТАН-600 существовали и существуют другие программы обработки данных, использующие специфику систем регистрации и решаемых задач. Упомянем здесь систему PRF, созданную Витковским, Шергиным и Моносовым для данных радиометров сплошного спектра в операционных системах семейства RT-11 (Витковский, 1990) и действующую до 1993 г.; программу prad, созданную Т.Н.Соколовой и развитую С.А.Трушкиным как программу pradT в DOS; систему обработки данных наблюдений переменности квазаров АКЦ ФИАН (Kovalev, 1998; Ковалев, 2002); методы и программы обработки данных первого облучателя ГАИШ МГУ (Горшков и Хромов, 1981; Амирханян, 1989). Кроме того, для обработки данных спектральных наблюдений на 2-м облучателе и солнечных данных на 3-м облучателе РАТАН-600 имеются свои пакеты обработки данных (Алферова и др., 1986 и Гараимов, 1998 соответственно).

Предлагаемый нами подход используется в обработке данных первого облучателя РАТАН-600 уже свыше 15 лет: первые модули созданы для анализа данных в методе сечений в работе (Бурсов и др., 1989). В рамках выработанной нами идеологии уже разработано несколько пакетов, из которых четыре основные будут представлены ниже. На базе разработанных процедур проводятся исследования радиоисточников, одно из которых: исследование объектов обзора 1995г. на Северном секторе РАТАН-600, также приведено в данной главе.

В основе современных методик обработки данных наблюдений радиогалактик на РАТАН-600 лежит описываемая ниже система FADPS, а исследование микроволнового фонового излучения проведено в пакете GLESP, тоже являющемся частью FADPS. Алгоритмическая часть многих программ (обнаружение и подсчеты источников, аппроксимация табулированными аппаратными функциями, обнаружение и ``чистка'' помех) разработана в рамках описываемой системы (Горохов, Верходанов, 1993, 1994, 1995a,b; Verkhodanov, Gorokhov, 1995; Verkhodanov, 1996; Shergin et al., 1997; Verkhodanov, Pavlov, 2000; Верходанов, Павлов, 2001).

2.2. Общая идеология и принципы построения

В качестве операционной системы под ADPS была выбрана система UNIX, обладающая такими достоинствами как многопроцессовость, многооконный и многопользовательский режимы работы, а также поддержка всеми типами процессоров. Построенная с использованием этих свойств ADPS позволяет создавать развитую и разветвленную конвейерную обработку данных. Основные принципы работы с программами обработки при этом совпадают с правилами работы в операционной системе UNIX, командные языки которой shell и cshell является командными языками ADPS. В этих языках есть операторы цикла, условия и локального перехода. Сам процесс обработки представляет из себя последовательное применения тех или других операторов (команд) к данным пользователя, которые записаны в виде последовательности равноотстоящих измерений и хранятся в отдельных файлах. Каждому оператору соответствует определенная команда, которую мы называем ``кирпич'' или модуль. Имея набор таких ``кирпичей'', пользователь ADPS, знакомый с основами операционной системы UNIX, может сам построить свою систему обработки или, просто набрав последовательность из модулей, получить необходимый результат.

Пусть, например, исследуемым данным соответствует вектор, описывающий наблюдения некоторого радиоисточника. Нам нужно в качестве результата получить аппроксимационную кривую в виде Гауссианы, вписанной в запись прохождения этого источника, с тремя параметрами (координата, размер, амплитуда). Стандартная процедура получения этого результата представляет из себя последовательное применение двух операторов: оператора вычитания фона Fbgd (низкочастотной составляющей шума) и оператора аппроксимации гауссианой Fgauss, то есть задача состоит в том, чтобы получить в качестве результата вектор R, равный:
R = Fgauss ( Fbgd ( D ) ) (2.1)
В системе UNIX процедура применения этих двух операторов к файлу с данными D запишется следующей строчкой:
bgd -w 10 D | gauss -n 20 > R, (2.2)
в которой bgd есть программа вычитания фона, gauss - программа аппроксимации набором Гауссиан, ключ `-w' показывает, что следующий параметр - размер окна сглаживания, ключ `-n' задает минимальный уровень обнаружения (см. детали у Верходанова и др., 1992b). Знаки `<', `>' и '|' есть знаки командного языка shell операционной системы UNIX, означающие соответственно перенаправление ввода (ввод из файла D), перенаправление вывода (вывод в файл R) и признак конвейера или труба, означающая передачу результата выполнения одной программы на вход другой программе. Естественно, это справедливо, если программы-операторы обладают свойствами фильтров, т.е. имеют только один вход и один выход для векторных данных. Дополнительные входы для скалярных параметров могут быть в любом количестве и задаваться, как было показано выше, через ключевые слова (`-w 10'). Таким образом, комбинируя наборы различных программ-операторов и используя командный язык системы UNIX, пользователь составляет свои командные строки для получения нужного ему результата.

Еще один пример: операция осреднения нескольких векторов данных с предварительным вычитанием фона:
Average formula 2.3
Этому выражению соответствует команда
aver D* -r -o R, (2.4)
Здесь `D*' - список файлов, имена которых начинаются с буквы D (предположительно D1, D2, ...,Dn), ключ `-r' является признаком робастного осреднения, а ключ `-o' показывает, что следующий за ним параметр - имя файла с результатом работы программы.

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

  1. Если это возможно, модули должны работать как фильтры, т.е. уметь считывать данные со стандартного файла ввода и выдавать результат в стандартный файл вывода.
  2. Программы должны работать с данными, записанными в некотором стандартном формате. В качестве такого формата выбран F-формат (Верходанов и др., 1993) близкий по своим характеристикам к FITS формату (Wells et al., 1981).
  3. При написании программ, требующих ввода в режиме диалога, следует предусмотреть возможность ввода параметров с помощью ключей, то есть бездиалоговый режим работы, и, по возможности, с помощью переменных среды.
При наличии этих условий пользователь или разработчик FADPS может создавать и включать свои модули в систему обработки. Таким образом, например, были обработаны данные экспериментов околополярного обзора ``Холод-90'' (Parijskij et al., 1991b), обзора с коническим облучателем ``Зенит-88'' (Мингалиев и др., 1991a,b), а также проведено моделирование радиоизображений (Khaikin, Verkhodanov, 1992). Фактически, обработка и моделирование наблюдений в этих трех работах и послужили стимулом к созданию FADPS в ее современном виде (Верходанов, 1993a; Verkhodanov, 1995a, 1997).

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

Выделим несколько этапов разработки системы:

В качестве базового алгоритмического языка был выбран язык ``C'', существенно облегчающий работу по взаимодействию со строчными переменными по сравнению с ФОРТРАНом.
Реализация каждого модуля включала подключение процедур работы с командной строкой и стандартным набором ключей (например, для вызова подсказки, задания входных интервалов, имен файлов и прочее), несколько уровней взаимодействия с пользователем: через командную строку, переменную среды, диалог и файл с параметрами. Таким образом были разработаны процедуры вычисления трендов, вписывания диаграмм направленности, интерполяции и др. Полный список процедур FADPS приводится в Приложении 3.

Любое построение системы обработки начинается с принятия правил описания данных, а именно формата представления данных. В международной астрономической среде для этих целей принят FITS-формат, зарегистрированный Институтом Стандартов США (Wells et al., 1981). Это самодокументируемый формат, описывающий данные неограниченной длины и понимаемый международными системами обработки. Естественно, он должен включаться в систему ввода/вывода любой системы обработки. Однако, он не может отразить некоторые особенности локальных систем регистрации и управления телескопом, но в то же время это может быть сделано в локальных форматах записи данных. Рассмотрим эту проблему подробнее.

2.3. Формат представления данных

Введение единого стандарта записи данных естественный шаг для организации обмена результатами наблюдений, а также обработки одних и тех же данных различными пакетами программ, причем довольно часто реализованных в различных операционных системах. Разработанный и внедренный формат представления данных наблюдений на первом облучателе РАТАН-600 (F-формат) описан в ряде публикаций и отчетов (Верходанов и др., 1991, 1993, 1994, 1995a, 1995b, 1997a; Verkhodanov, Kononov, 2002) и используется в системе регистрации и обработки облучателя No1 радиотелескопа РАТАН-600, а также частично и в системе архивизации (Кононов и др., 1998, 1999; Kononov et al., 2002). Для работы с F-форматом была создана специальная библиотека функций на языке программирования ``C'' (EVp-библиотека) (Верходанов и др., 1991,1993). F-формат представляет из себя FITS-подобный формат, где все параметры, характеризующие наблюдения, описываются в символьном виде (ASCII коды), а данные представлены двоичными кодами. В нашем случае данные на выходе системы регистрации записаны в виде 16-битовых целых, так что их перекодировки не требуется.

Основные причины выбора F-формата были следующие:

  1. соответствие мировым стандартам;
  2. переносимость данных из одной системы в другую;
  3. хорошая возможность просмотра и редактирования параметров шапочки, используя стандартные программы-редакторы;
  4. фактическая неограниченность шапочки F-файла.

Кроме стандартных ключевых слов шапочки F-файлов, соответствующих стандарту FITS, мы ввели дополнительные слова для описания технических параметров системы `антенна - облучатель - приемник - система регистрации': RCV-MODE для описания режима использования приемника со значениями SH, BS, RH (соответственно приемник с пилот-сигналом, режим сканирования, рупор в небо); REGIMOBS - режим наблюдения источника D, S, C, V, 3 (соответственно наблюдения дискретного источника, обзор, наблюдения в режиме скольжения, режим скольжения быстро переменных процессов (мерцаний), трехзеркальная конфигурацию антенны: наблюдения на южном секторе РАТАН-600 с плоским отражателем). Кроме того, введены новые ключевые слова:
VELO-CAR скорость движения каретки облучателя в режиме сопровождения источника;
CARRIAGE положение рупора приемника данной длины волны на каретке облучателя;
CMPRS-CF коэффициент сжатия данных;
FOCUS значение фокуса антенны;
SIDTIME звездное время кульминации объекта;
DECTIME декретное время кульминации объекта.
При расчетах диаграммы направленности для вычисления временных интервалов относительно кульминации источника используется параметр FOC-XSH - вынос рупора из фокуса в метрах, рассчитываемый по формуле, полученной С.А.Трушкиным:
Trushkin formula 2.5
где DEC - склонение источника ELEVAT - высота его наблюдения.

Вслед за шапочкой в F-файле записываются двоичные данные, представляющие из себя последовательность равноудаленных измерений (или вычислений) с шагом CDELT1. Если массив данных двумерный, запись производится по строкам. Список стандартных ключевых слов приведен в Приложении 1. Таким образом, используя введенные ключевые слова, FADPS выбирает и контролирует стратегию обработки наблюдательных данных.

Начиная с 1994 года (Верходанов и др., 1994), система обработки радиоастрономических данных FADPS использует FITS Binary Table-подобный формат (Harten et al., 1985; 1988; Cotton et al., 1995; Hanisch et al., 2001), описывающий в виде одного файла многочастотные наблюдения в континууме. Позднее все архивные данные широкополосных радиометров были полностью переведены в данный формат (Кононов, Павлов, 1999; Кононов и др., 1999). Подчеркнем, что наряду с многочастотными файлами в повседневной обработке на радиотелескопе РАТАН-600 используется также и одночастотный формат, приближенный к классическому Basic FITS. Детальное описание формата уже приводилось в работах Верходанова и др. (1994, 1995a,b). Отметим здесь только некоторые ключевые слова заголовка расширения, которые приведены в Приложении 2. Обращаем внимание, что в приведенном примере практически все ключевые слова, кроме описателей полей TFORM#, TDIM#, TTYPE#, TUNIT#, TSCAL# и TZERO#, являются нестандартными и при перекодировке в канонический FITS могут быть закомментированы в строках COMMENT. Обратим внимание на использованные ключевые слова в примере системы обработки FADPS: SP-FORMU (формула спектра радиоисточника) и TARF# (формула площади антенны на соответствующей длине волны). От остальных параметров они отличаются тем, что содержат аналитические формулы. Аналогичным образом задаются и формулы аппроксимации спектров в системе анализа данных CATS (Глава 3). Для описания формы спектра используется ключевое слово SP-AP#, причем спектр может быть разбит на отдельные участки. Для анализа подобных аналитических записей разработана специальная библиотека на языке ``C'', которая позволяет разбирать члены формулы и подставлять функциональные значения для заданных аргументов.

Для описания современных данных мы предлагаем структуру, объединяющую результаты наблюдений (включая рассчитанные эффективные площади антенны, обеспечивающие быструю калибровку по аналитическим формулам), двумерные площадки неба в оптическом и радиодиапазонах, записанные в двоичных кодах, а также данные радио и оптических спектров, представленные в виде ASCII-таблиц. При этом разнородные данные должны оформляться как расширения, а соответствующие программы-распаковщики и визуализаторы должны их понимать. Вариант такой структуры, оформленный как единственный FITS или FITS-подобный файл, в общем виде представлен на Рис.2.1, где p-H - первичный FITS-заголовок, e-Hi и e-Di - соответственно заголовок и данные i-го расширения.
FITS Scheme Рис.2.1. Вариант представления разнородных астрономических данных в виде одного FITS или FITS-подобного файла. Рисунок опубликован в работе (Verkhodanov & Kononov, 2002).

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

По-видимому, эти направления и будут основными при формировании новых стандартов представления информации в развивающихся электронных системах доступа на радиотелескопе РАТАН-600.

2.4. Построение интерактивной графической системы обработки

Отдельный вопрос - визуализация результатов обработки. В основном удобство ADPS определяется возможностями визуализации данных и результатов обработки, а также возможностью работать с данными в интерактивном графическом режиме. В этом случае, конечно, не удается избежать создания ``системы в системе''. Удобство системы UNIX заключается в том, что создание подобных систем значительно облегчается при наличии FADPS. В этом случае нет смысла писать подпрограммы, выполняющие те или другие операции. Достаточно вызвать и передать управление программе FADPS, выводящей результат на графическую станцию. Это экономит как человеческие, так и машинные ресурсы.
FGR Рис.2.2. Рабочий экран программы fgr. Рисунок опубликован в работе (Верходанов, 1995a).
FGR Scheme Рис.2.2. Фрагмент модульной схемы программы fgr. Демонстрационный рисунок для данной диссертации.
Таким образом, например, была создана программа fgr (Рис. 2.2) интерактивной обработки в графическом режиме одномерных данных облучателя No1 РАТАН-600 (Верходанов, 1995a,b; Verkhodanov, 1997). За исключением отдельных операций программа использует различные команды FADPS, а на экран выводит только готовый результат.

Основные задачи программы следующие:

На Рис.2.3 приведена структура небольшого фрагмента программы fgr, связанная с вызовом программы-калькулятора для F-файлов fcalc. Построенная система меню призвана облегчить пользователю поиск требуемой операции. На рисунке отображен переход:

Math (математические операции) ----> Fcalc (скалярно-векторные операции) ----> Vector (векторные операции) ----> требуемая операция.

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

Построение программы ориентировано исключительно на описанный модульный принцип организации системы обработки данных. В обязанности такой программы, кроме вызова соответствующих ``кирпичей'', входит сервисное обслуживание (система меню разного уровня и соответствующие подсказки) и визуализация результата. Имеется возможность запуска программы-модуля, заранее не описанного как пункт меню, для выполнения дополнительных операций над данными: при входе в пункт Filt (filter) программа запрашивает имя программы (можно с ключами) и передает управление ей, а полученный результат выводит на экран. Программа имеет специальное меню для работы с курсором и графического редактирования данных. Имеется возможность ``ручного'' клиппирования источников и помех, а также ``ручного'' удаления фоновых нелинейных компонент.

При создании процедур визуализации мы исходно использовали библиотеку CGI системы XENIX, но таким образом, чтобы в дальнейшем произвести безболезненный переход в стандартную графическую оболочку X~Window системы UNIX. Причем реализация процедур произведена на самом низком уровне программирования X~Window таким образом, чтобы не было зависимости от коммерческих библиотек (Верходанов, 1991a; Верходанов, 1993b; Верходанов и др., 1995c). Практика показала, что выбранная идеология оказалась действенной, и новая версия программы fgr заработала в сетевой графической среде X Window без существенных осложнений. В настоящий момент графическая система fgr (Верходанов, 1995a) реализована и поддерживается в ОС Linux, Sun OS, OS Solaris, Silicon Graphics Irix.

В рамках обозначенной идеологии были также предложены и реализованы библиотеки функций для создания бумажных копий изображений, а именно: система описания графопостроителей - {\rm PLOTCAP}, позволяющая выводить данные на различные типы графопостроителей без изменения программ обработки, а лишь переименованием логических имен среды (Верходанов, Черепахин, 1993), а также библиотека функций для работы с языком PostScript (Верходанов, 1994a).

2.5. Интерактивная обработка континуальных радиоспектров источников

Первый пакет для работы с непрерывными радиоспектрами для работы на РАТАН-600 'rtnsp' был разработан под ОС XENIX и включал в себя систему автоматического анализа калибровочных источников, наблюдаемых на радиотелескопе (Верходанов, 1992, Верходанов, 1993a) и процедуры построения спектров по данным радиоастрономических наблюдений. Однако, с появлением большого числа разнообразных радиоастрофизических данных, особенно с развитием базы данных CATS (Verkhodanov et al., 1997a), появилась необходимость создания более глобальной и гибкой системы обработки континуальных спектров радиоисточников (и, вообще, различных спектральных распределений энергии в объектах). Новая система работы со спектрами была разработана в рамках проекта FADPS с возможностью подключения к системе вывода базы данных астрофизических каталогов CATS (Верходанов, 1997). В отличие от временных рядов, где наблюдатель имеет дело с равноотстоящими значениями и данные обрабатываются набором стандартных процедур (см. например, программу fgr), здесь мы имеем дело с неравноотстоящими измерениями, выводимыми в логарифмических шкалах.

Система обработки спектров состоит из нескольких программ, позволяющих работать с данными как в интерактивной графической моде, так и ``вслепую'', что, в свою очередь, позволяет переходить к потоковой обработке. Центральной утилитой системы является программа spg (SPectral Graphics), разработанная в среде X Window OS UNIX. Утилита spg позволяет в системе многоуровневого меню и последовательной визуализацией всех операций над спектрами выполнять следующие действия:

На Рис.2.5 приводится небольшой фрагмент модульной схемы программы spg.
SPG Рис.2.4. Экран программы spg с меню и спектром радиоисточника. Рисунок опубликован в работе (Verkhodanov et al., 1997a).
SPG Scheme Рис.2.5. Фрагмент модульной схемы программы spg. Демонстрационный рисунок для данной диссертации.

В качестве основных стандартных функций аппроксимации спектров используются следующие:

  1. y = A + Bx,
  2. y = A + Bx + Cx2,
  3. y = A + Bx + C * exp (x),          (2.6)
  4. y = A + Bx + C * exp (-x),
где x=lg ν, y=lg S, ν - частота (МГц), S - плотность потока (Ян). Выбор аппроксимаций производится в меню программы (Рис. 2.5). Взвешивание точек происходит тоже различными способами: присвоением равных весов, расчетом весов по ошибкам плотностей потоков или редактированием бланков с таблицей частот, плотностей потоков и весов.

Реализованные процедуры вычисления радиосветимости и мощности радиоисточников используют формулы (Lang, 1999):
Luminosity: formula 2.7
для светимости, где Sν - плотность потока на частоте ν, D