Skip to main content

Синтез радиоизображений с помощью пакета srh_synth

Установка пакета srh_synth на свой компьютер

ПО для синтеза радиоизображений СРГ написано на языке программирования Python 3, поэтому прежде чем его использовать, вам необходимо установить интерпретатор этого языка.

Установка Python 3 в Linux

В большинстве популярных дистрибутивов Linux Интерпретор Python 3 обычно установлен по умолчанию. Проверить установлен ли Python на вашей машине можно, запустив следующую команду в терминале:

python --version

или

python3 --version

Если Python установлен, то вы команда выведет версию установленного Интерпретатора. Мы рекомендуем использовать Python 3.10 или более свежую версию. Если же в вашей системе Python 3 не установлен, то установите его с помощью менеджера пакетов вашего дистрибутива. Например, в Ubuntu для этого нужно в терминале выполнить следующую команду.

sudo apt install python3

Установка Python 3 в Windows

Интерпретатор языка Python не входит в состав операционной системы Windows, поэтому его предётся устанавливать отдельно. Это можно сделать двумя способами.

  1. Установить "чистый" интерпретатор Python запустив инсталятор, скачанный с официального сайта Python .
  2. Установить Python в составе менеджера пакетов Anaconda и Miniconda. В первом случае вместе с интерпретаром языка будут также установлен большой набор пакетов предназначенных для научных вычислений и визуализации данных. В случае же Miniconda будет установлен только интерпретатор языка Python и менеджер пакетов conda.

Создание виртуального окружения

Мы рекомендуем установливать ПО для синтеза радиоизображений в отдельном виртуальном окружении (virtual environment), чтобы избужать конфликта зависимостей. В случае, если вы планируете использовать Python только для синтеза радиоизображений, этот шаг можно пропустить.

TO BE DONE

Установка пакета srh_synth

Пакетsrh_synth в текущей версии использует часть функций универсального пакета srhimages и устанавливается вместе с ним командой:

pip install -U "srhimages[anfinogentov] @ git+https://git.iszf.irk.ru/fedenev/srhimages"

Альтернативно можно установить пакет srhimages с полным набором опций.

pip install -U "srhimages[anfinogentov] @ git+https://git.iszf.irk.ru/fedenev/srhimages"

Тогда вместе с пакетом srh_synth будет доступен также и код для синтеза изображений srhdata, разрабатываемый Марией Глоба. Если вы используете виртуальное окружение, то перед запуском команд установки его нужно активировать.

Синтез радиоизображений

Синтез радиоизображений состоит из двух этапов:

  1. Калибровка коэффициентов усиления антенн
  2. Синтез изображений

Калибровка коэффицентов усиления антенн

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

Калибровка данных СРГ выполняется с поммощью функции srh_calib

calibrations = srh_calib(start_time, stop_time=None, frequency = 'all', n_proc=16,  cadence=300., int_time=30., 
           parallel=True, post_process=True, raw_dir=None):

Параметры:

  • start_time - начало интервала времени для калибровки, например '2024-05-14 00:30'
  • stop_time - конец интервала времени для калибровки, например '2024-05-14 03:00'
  • frequency - список частот, которые надо откалибровать, например [3200, 4000]. Значение по умолчанию 'all' -- калибровать все частоты
  • n_proc - Количество параллельно обрабатываемых калибровок. По умолчанию 16. Если это число больше числа имеющихся в систме процессорных ядер, то этот параметр уменьшается до числа ядер в системе.
  • cadence- скважность калибровок в секундах. По умолчанию калибруются данные с интервалом в 300 с. Менять не рекомендуется.
  • int_time - Время накопления в секцндах для каждого калибровочного изображения. По умолчанию 30 с. Менять не рекомендуется
  • parallel - запускать калибровки параллельно в дочерних процессах. По цмолчанию True.В случае установки в False, калибровки будут выполняться последовательно в основном процессе.
  • post_process - постобработка калибровок с целью устранения 'дрожания' и 'уезжания' изображений. Кроме того выравнивается амплитуда коэффициентов усиления антенн
  • raw_dir - директория в которой код программа будет искать сырые данные СРГ и куда их будет скачивать при необходимости. Рекомендуется для всех своих задач использовать одну и ту же директорию на достаточно емком диске.

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

Синтез радиозображений

После выполнения калибровки можно приступать непосредственно к построению изображений.

srh_synth(start_time, stop_time=None, frequency = [-1], out_dir = ".", naxis = 512, cdelt = 5.,
 save_psf = False, no_channel_dirs = False, n_proc=16, cadence=3.3, round_beam=False,
high_resolution=False, save_RL=False, int_time=3.3,  compressed=True, parallel=True,
 calibrations =None, raw_dir=None):

Параметры:

  • start_time - начало интервала времени для калибровки, например '2024-05-14 00:30'
  • stop_time - конец интервала времени для калибровки, например '2024-05-14 03:00'
  • int_time - время интегрирования для каждого изображения в секундах. По умолчанию изображения строится из одной наблюдательной записи (скана).
  • cadence - скважность (временное разрешение) синтезируемых изображений. По умолчанию изображения строятся с максимально возможной скважностью.
  • frequency - список частот, на которых надо построить изображения, например [3200, 4000]. Значение по умолчанию 'all' -- строить изображения на всех частотах. Данные на выбранных частотах должны быть предварительно откалиброваны функцией srh_calib
  • out_dir - путить к каталогу, куда будут записаны построенные изображения. Если в данном каталоге уже имеются файлы изображений, они будут перезаписаны при совпадении имён. По умолчанию изображения записываются в текущий каталог
  • raw_dir - директория в которой код программа будет искать сырые данные СРГ и куда их будет скачивать при необходимости. Рекомендуется для всех своих задач использовать одну и ту же директорию на достаточно емком диске.
  • calibrations - калибровочные данный полученные функцией srh_calib.
  • naxis - размер изображения в пикселях (по умолчанию 512)
  • cdelt - размер одного пикселя в секундах дуги (по умолчанию 5.)
  • save_RL- сохранять изображения в правой (R) и левой (L) круговой поляризации. По умолчанию False - сохраняется интенсивность (I) и поляризация (V).
  • no_channel_dirs - не создавать подкаталоги для каждого частотного канала. По умолчанию False - подкаталоги создаются
  • save_psf - сохранять диаграмму нааправленности для каждого изображения в отдельный FITS файл
  • n_proc - Количество параллельно синтезируемых изображений. По умолчанию 16. Если это число больше числа имеющихся в систме процессорных ядер, то этот параметр уменьшается до числа ядер в системе.
  • round_beam - использовать симметричную кргулую "чистую" диаграмму направленности при "чистке" изображений. Данная опция экспериментальная. По умолчанию False. Применения этой опции приводит к уменьшению пространственного разрешения изображения.
  • high_resolution - Искусственно увеличить пространственое разрешения изображения за счёт уменьшения размера "чистой" диаграммы направленности. Данная опция эксперментальная. Ей использование имеет смысл только для заведомо компактных источников. А интерпретация полученных изображений возможна только с оговорками.
  • compressed - сохранять изображения в сжатом формате FITS. По умолчанию True.
  • parallel - запускать синтез изображений параллельно в дочерних процессах. По цмолчанию True.В случае установки в False, изображения будут строится последовательно в основном процессе.