Gnuastro — официальный пакет GNU, содержащий различные программы и библиотеки функций для манипуляции и анализа астрономических данных. Все программы предоставляют единый интерфейс командной строки, аналогичный GNU Coreutils.
Спасибо 4 мужчинам и 4 женщинам, непосредственно внёсшим вклад в исходные коды Gnuastro, а также 20 людям, подававшим идеи.
Нововведения
Новые программы
astscript-fits-view
: скрипт, который принимает любое количество FITS-файлов, и открывает их визуализацию либо через SAO DS9 (для двумерных изображения и трёхмерных кубов), либо через TOPCAT (для таблиц). Для совместимых со стандартами freedesktop.org окружений также поставляется .desktop-файл, что позволяет открывать FITS-файлы просто по клику.- Набор скриптов для простой оценки и вычитания расширенных функций рассеяния точки (ФРТ) в очень модульном и легко масштабируемом виде. Основаны на методе, описанном Раулем Инфанте-Саинсом и др. в 2020 г.:
astscript-psf-select-stars
: находит на изображении все звёзды, пригодные для построения расширенной ФРТ. Если изображение содержит WCS, скрипт также автоматически опрашивает Gaia для поиска подходящих звёзд;astscript-psf-stamp
: вырезает область заданной ширины вокруг определённой звезды из бо́льшего изображения, опционально с субпиксельной центровкой и маскировкой остальных источников света;astscript-psf-scale-factor
: по заданной модели ФРТ и координатам центра звезды на изображении рассчитывает коэффициент масштабирования, на который нужно умножить ФРТ для её масштабирования до этой звезды;astscript-psf-unite
: объединяет компоненты ФРТ в один. Из-за насыщения и нелинейности, для хорошей оценки расширенной ФРТ важно собирать части из разных диапазонов звёздных величин;astscript-psf-subtract
: по заданной модели ФРТ и координатам центра звезды на изображении, делает субпиксельное перепозиционирование ФРТ, масштабирует её до звезды и вычитает из изображения.
Книга
- Новое руководство по выделению расширенной ФРТ из существующих научных данных, и по её вычитанию. Написано при участии Рауля Инфанте-Саинса и Сепиде́ Эскандарлу.
- В 3-е руководство («Определение крупных расширенных целей») добавлен раздел «Коэффициент асимметрии в зависимости от сигнала, и его измерение».
- В документацию по Arithmetic добавлен раздел «Преимущества и подводные камни целочисленных типов».
Все программы
- Колонки, связанные с координатами, теперь во всех программах принимают не только градусы, но и шестидесятиричные значения. Так что, например, в программах Crop и Query опции
--center=113.8729761,31.9027152
и--center=07h35m29.51,31d54m9.77
теперь эквивалентны. Также улучшены: опция--polygon
у Table и Crop, опция--coord
у Match и опция--crval
у MakeProfiles. - Колонки FITS-таблиц теперь считываются параллельно, если значение
--numthreads
не выставлено в1
и библиотека CFITSIO собрана с--enable-reentrant
.
Arithmetic
Добавлены операторы:
add-dimension-fast
: добавляет набор данных вдоль «быстрейшего» измерения первого набора данных (в FITS-изображениях, «быстрым» считается горизонтальное измерение). Например, если у вас есть N одномерных набор данных из M элементов, этот оператор позволяет построить двумерное FITS-изображение из N пикселей по горизонтали и M пикселей по вертикали;repeat
: кладёт копию указанного набора данных на стек операторов указанное количество раз.
Crop
--widthinpix
: в WCS-режиме, значение--width
будет интерпретировано в пикселях.
Fits
- Если в HDU есть ключевое слово
CHECKSUM
, и вызваны любые ключевые слова модификации ключевых слов — Fits автоматически обновит ключевую сумму после всех изменений.
Table
- Опции, принимающие строки (
--colmetadata
,--equal
и--notequal
), теперь принимают запятую внутри строки. Для отличения запятой от разделителя значений нужно предварять её символом\
. Например,--equal=AB,cd\,ef
выберет все строки, где колонкаAB
имеет значениеcd,ef
. --catrowfile
: файл, из которого нужно конкатенировать (добавить) строки в основную входную таблицу. Эту опцию можно использовать несколько раз, объединяя строки из любого количества таблиц в единую выходную таблицу. Эта операция выполняется после конкатенации колонок, но перед любыми операциями по выборке строк.--catrowhdu
: HDU FITS-файлов, переданных в--catrowfile
.--noblankend
: убрать пустые строки из заданных колонок выходной таблицы, например, добавленных с помощью арифметики колонок или из других таблиц (это новое имя старой опции--noblank
, новое её поведение описано ниже). Как и новую опцию--noblank
, её можно вызывать много раз, таким образом,--noblankend=1 --noblankend=2
эквивалентно--noblankend=1,2
.- Новый оператор для арифметики колонок —
date-to-millisec
: конвертирует форматированную строку даты в 64-разрядное число миллисекунд с начала эпохи Unix.
Match
- Добавлен и включён по умолчанию поиск дубликатов с помощью KD-дерева. Для ещё большего ускорения можно сохранить дерево в файл.
--kdtree
: задаёт использующийся алгоритм:internal
(по умолчанию),build
(постройка KD-дерева),FILE.fits
(имя файла KD-дерева для импорта), илиdisable
(включает старый алгоритм на основе сортировки).--kdtreehdu
: HDU внешнего файла KD-дерева.
Library
gal_fits_key_exists_fptr
: проверяет, содержится ли заданное ключевое слово в уже открытом файловом дескрипторе FITS.
Изменения
Arithmetic
add-dimension
переименована вadd-dimension-slow
.
Segment
--onlyclumps
переименована в--noobjects
, из-за нежелательного предположения, что вывод будет содержать только HDU ‘CLUMPS’ — хотя как HDU в нём также присутствуют входное изображение (без уровня Sky) и изображение стандартного отклонения Sky. Для получения действительно чистого HDU ‘CLUMPS’ нужно также указывать опцию--rawoutput
.
Match
- По умолчанию (без опции
--quiet
) Match теперь выводит имена входов и временные метки важных шагов в stdout.
Table
- Логика опции
--noblank
весьма подобна другим опциям выборки рядов по значению (например,--range
,--polygon
или--equal
). Однако предыдущее поведение — применять её на последнем шаге Table, непосредственно перед выводом (то есть к выходной таблице, потенциально с изменённым набором и именами колонок), в отличие от прочих подобных опций, применяющихся ко входной таблице. Это неудобно и неинтуитивно, поэтому теперь она тоже применяется ко входной таблице, а также может применяться много раз. Опция со старым поведением переименована в--noblankend
. - Оператор
date-to-sec
теперь возвращает только количество секунд, всегда знаковое и 64-разрядное — а не значение с плавающей точкой при наличии долей секунды во входном значении, как раньше.
Library
gal_fits_tab_read
: теперь принимает количество потоков для чтения.gal_table_read
: аналогично (релевантно только для FITS-таблиц).gal_blank_initialize
: также работает со строчными данными — но инициализация только части крупного блока элементов поддерживается только для численных типов данных.
Исправлено 22 бага
>>> Скачать: LZip (подпись), GZip (подпись)
>>> Зависимости
>>> Список программ
>>> Руководство
>>> Подробности