|
@@ -1,68 +1,18 @@
|
|
|
-В этой папке лежит исходный код скриптов
|
|
|
+# sources
|
|
|
|
|
|
-### `compton_filter.py`
|
|
|
-код для фильтрации данных комптоновских измерений из slowdb и переноса их в базу данных калибровок
|
|
|
+Репозиторий с исходным кодом различных скриптов, используемых в пайплайне усреднения комптоновских энергий,
|
|
|
+а также некоторой документацией.
|
|
|
|
|
|
-#### Подробности
|
|
|
-Беру данные из slowdb, соответствующие измерению комптоновских энергий (`g_id==43`), очищаю (`dt > 0`), вычисляю времена начала и окончания измерения.
|
|
|
-Дополнительно убираю перекрывающиеся измерения (оставляю только самые новые).
|
|
|
-Записываю оставшиеся строки в базу данных калибровок в **Compton_run**
|
|
|
+## Общее описание пайплайна
|
|
|
+Пайплайн организован следующим образом:
|
|
|
+на `cron` поставлен запуск каждые 6 часов скрипта [`compton_runs_script.sh`](./src/scripts/compton_runs_script.sh),
|
|
|
+который:
|
|
|
+1. проводит фильтрацию измерений комптоновских энергий с помощью [`compton_filter.py`](./src/avg/compton_filter.py)
|
|
|
+2. усредняет измерения и записывает результаты в базу данных калибровок и в репозиторий [**tables**](https://cmd.inp.nsk.su/~compton/gogs/compton/tables), используя [`compton_combiner.py`](./src/avg/compton_combiner.py)
|
|
|
|
|
|
-#### Пример использования
|
|
|
+Для хранения информации в данном проекте и отображения состояния гит-репозиториев используется простой гит-сервер [Gogs](https://gogs.io), который доступен по ссылке [cmd.inp.nsk.su/~compton](https://cmd.inp.nsk.su/~compton)
|
|
|
|
|
|
-`python compton_filter.py --season cmd3_2021_2 --config database.ini --update`
|
|
|
+Графики с усреднениями для каждой энергетической точки и некоторая информация по сезонам отображается на [cmd.inp.nsk.su/~compton/pictures](https://cmd.inp.nsk.su/~compton/pictures)
|
|
|
|
|
|
-* обозначает отфильтровать таблицу **cmd3\_2021\_2** из slowdb и обновить новыми
|
|
|
-значениями (если есть) базу данных калибровок
|
|
|
-* **database.ini** файл содержит параметры аутентификации для slowdb и бд калибровок, пример
|
|
|
-```
|
|
|
-[postgresql]
|
|
|
-host=xxx
|
|
|
-database=xxx
|
|
|
-user=xxx
|
|
|
-password=xxx
|
|
|
+Более подробную информацию о предназначении конкретных файлов можно получить в `README.md` в соответствующих файлам директориях.
|
|
|
|
|
|
-[clbrDB]
|
|
|
-host=xxx
|
|
|
-database=xxx
|
|
|
-user=xxx
|
|
|
-password=xxx
|
|
|
-```
|
|
|
-
|
|
|
-* требуется `python3` и библиотека `psycopg2==2.9.1` для работы
|
|
|
-
|
|
|
-### `compton_combiner.py`
|
|
|
-код для объединения данных заходов и измерений комптоновской энергии из бд калибровок + вычисление усреднённых значений в точках по энергии
|
|
|
-
|
|
|
-#### Подробности
|
|
|
-Вычитываю раны из базы данных заходов и комптоновские измерения из базы данных калибровок.
|
|
|
-Суммирую светимость по заходам, соответствующим каждому комптоновскому измерению. Суммарные светимости, набранные в каждом комптоновском измерении становятся весами этих измерений.
|
|
|
-С помощью лайклихуда усредняю комптоновские измерения с учётом весов, соответствующих светимостям.
|
|
|
-
|
|
|
-#### Пример использования
|
|
|
-
|
|
|
-`python compton_combiner.py -s NNBAR2021 -c database.ini --csv --clbrdb --pics_folder ./pics`
|
|
|
-
|
|
|
-* означает вычислить средние энергии для сезона **NNBAR2021**, использовать конфиг файл с данными аутентификации **database.ini**, сохранить полученные результаты в csv таблицу, обновить данные в базе данных калибровок, сохранить картинки по точкам в директории **./pics**
|
|
|
-* в дополнение к предыдущему, **database.ini** должен содержать аутентификацию для базы данных заходов, пример
|
|
|
-```
|
|
|
-[cmdruns]
|
|
|
-host=xxx
|
|
|
-database=xxx
|
|
|
-user=xxx
|
|
|
-password=xxx
|
|
|
-```
|
|
|
-
|
|
|
-### `compton_checker.py`
|
|
|
-Служебный скрипт для проверки корректности записанных усреднений в базе данных калибровок
|
|
|
-
|
|
|
-### `elabelizer.py`
|
|
|
-Скрипт для сопоставления `elabel` и усреднённых энергий
|
|
|
-
|
|
|
-#### Пример использования
|
|
|
-1. Зайти на cc-8
|
|
|
-`ssh username@slXXcmd -p 1022`
|
|
|
-2. Настроить окружение
|
|
|
-`source /sl/cmd3/cc8-64/Cmd3Off/tune.cmd3_runs_scripts.sh`
|
|
|
-3. Запустить скрипт
|
|
|
-`python3 elabelizer.py`
|