Синтез радиоизображений с помощью пакета 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, поэтому его предётся устанавливать отдельно. Это можно сделать двумя способами.
- Установить "чистый" интерпретатор Python запустив инсталятор, скачанный с официального сайта Python .
- Установить 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
, разрабатываемый Марией Глоба.
Если вы используете виртуальное окружение, то перед запуском команд установки его нужно активировать.
Синтез радиоизображений
Синтез радиоизображений состоит из двух этапов:
- Калибровка коэффициентов усиления антенн
- Синтез изображений
Калибровка коэффицентов усиления антенн
Калибровка выполняется для заданного интервала времени. Приэтом калибруются не все изображения, а токлько некоторые. По умолчанию калибруются изображения с интервалом 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, изображения будут строится последовательно в основном процессе.