[#] Солнечный сентябрь
vit01(mira, 1) — All
2020-09-26 16:57:40


Вот не могу писать про что-то одно, поэтому здесь будет мешанина, как всегда.


## По учёбе

Из предметов сейчас:

- Физическая кинетика (сложный, но интересный предмет, возимся с характеристическими и производящими функциями и с теорией вероятностей)
- Физика плазмы (доп. главы)
- Физика Солнца (+ лабораторные, где мы программируем на языке IDL, для которого есть астрономические библиотеки)
- Общие лабораторные работы по методам исследований в астрофизике
- Физика ближнего космоса (пока что повторение инфы с предыдущих курсов, но уже куча формулок, и мне это нравится)

Дополнительно с кафедры теорфиза я хожу на астрофизику и на теорию излучения, но там чисто как вольнослушатель и не всегда, потому что по расписанию с остальными парами они пересекаются. В любом случае, вся инфа доступна, и в виде литературы её можно осваивать самому.

Кроме этого, у нас планируется практика на телескопах. Нас свозят на несколько телескопов, а кое-куда даже на пару дней с ночёвкой. По мере прохождения практики буду присылать сюда подборки фотографий, это наверняка будет красиво и прикольно. Самый настоящий солнечный сентябрь =)

[celestia-s-sun.jpg]( https://www.deviantart.com/mysticalpha/art/Celestia-s-Sun-16-10-510690495 )

## Прогресс по статье

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

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/RiAPBBsQa2jG7BOQb2dg

А можно ещё побольше увеличить и нарисовать контуры по яркостной температуре.

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/7P4b96E12t63vphc1t4i

Радиотелескоп работает абсолютно по-другому, нежели фотокамера. Он составляет своё изображение не тупо в виде "пикселей", а в виде кусочков синусоид. В итоге сырое изображение до обработки является огромным месивом из (как правило) крестообразных ярких пучков. После обработки (алгоритм CLEAN) побочные максимумы дифракционной картины отсекаются, а главный максимум остаётся. В итоге изображение составляется уже из размытых пятен, где в центре самый яркий пиксель, а ближе к краям - менее яркие. Я хотел отрендерить образец "пятна" для радиогелиографа Нобеяма, но было лень, поэтому не стал =) Просто представьте себе кусочек распределения Гаусса в голове, окей?

Так вот, отвлёкся. Поскольку изображение составляется из пятен-гауссиан, то сравнивать размер светящегося источника имеет смысл именно с этим пятном, а не тупо в пикселях считать. В итоге я взял площадь радиоисточника на полувысоте от максимума и сравнил с такой же площадью пятна телескопа на полувысоте. Получилось, что в течение дня размер активной области меняется как-то так:

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/vAuA1J1e0mzgybiFPu1D

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

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

А вот гистограмма по относительным размерам радиоисточника и пятна. Рассматривались значения площади источника, делённой на площадь пятна.

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/z9A7IoqzEmiNx4OkWwN5

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

## Крутая диаграммочка для курсача

Когда возникла необходимость отчитываться перед кафедрой о своей научной работе на русском языке, мне потребовалась диаграмма, где примерно изображались этапы работы по исследованию. Что делает простой человек, когда ему надо нарисовать диаграмму? Правильно, заходит в свой любимый офисный пакет, например, LibreOffice или Microsoft Office. Кто-то более продвинутый запускает векторный графический редактор вроде Inkscape и делает там. Однако, они все совершают одну ошибку - данные программные пакеты плохи для диаграмм, потому что мышкой невозможно идеально позиционировать элементы относительно друг друга. К тому же, если вдруг что-то захотелось поменять, то очень долго будет переделывать.

Но я поступил поумнее и воспользовался специальным языком программирования для диаграмм, который называется [GraphViz Dot]( https://graphviz.org/documentation/ ). С ним не пришлось никуда тыкать мышкой, а на выходе очень быстро появилась красивенькая схема со стрелочками и ровно расположенными блоками. Оформление - одно удовольствие.

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/IMXXpPhzPf5GEE1Yxk0a

Исходник на языке Dot:

digraph C {
    graph[rankdir=LR]
    node[shape=box, fontname="Fira Mono", fontsize=11, fixedsize=true, width=4];
    
    stages[shape=plaintext, label="Этапы работы", fontsize=14]
    data[shape=plaintext, label="Данные", fontsize=14]
    
    scan1[label="Автоматическая фильтрация"]
    result1[label="Предварительные кандидаты в гирорезонанс", color="wheat", style=filled]
    
    manual[label="Визуальный анализ"]
    result2[label="Готовые кандидаты в гирорезонанс", color="lightgreen", style=filled]

    stat[label="Статистический анализ"]

    scan1 -> result1;
    result1 -> manual;
    manual -> result2;
    result2 -> stat;
    
    {rank=same stages scan1 result1 manual result2 stat}
    
    imgs1[label="Радиоизображения (40 мин)\nКорреляционные кривые", width=3, height=0.5]
    imgs2[label="Радиоизображения (5 мин)\nКорреляционные кривые\nМагнитограммы\nРентгеновский поток", width=3, height=1]
    
    scan1 -> imgs1;
    imgs1 -> scan1;
    
    manual -> imgs2;
    imgs2 -> manual;
   
   stages -> scan1 [color="white", arrowhead=none];
   data -> imgs1 [color="white", arrowhead=none];
    {rank=same data imgs1}
}

Также, огромная благодарность создателям инструмента [Jupyter Dot Kernel]( https://github.com/laixintao/jupyter-dot-kernel ), потому что именно благодаря ему стало так просто и удобно оформлять подобные диаграммы прямо через Jupyter Notebook/JupyterLab. А вот мой научный руководитель для оформления диаграмм использует язык [PlantUML]( https://plantuml.com/ ). Этот язык очень похож на Dot и по сути выполняет такие же задачи, но имеет какие-то свои фишки. Возможно, кого-то заинтересует. А ещё есть шикарный [Mermaid.js]( https://mermaid-js.github.io/ ), который я внедрил бы кое-куда у себя.

## По работе над собой

Как было написано в предыдущем посте, решил начать инвестировать (время и деньги) в улучшение своего внешнего вида. Пара друзей мне с этим согласились помочь. Они потихоньку подбирают мне гардероб, который я так же потихоньку скупаю на свои скромные сбережения, помогли со средствами для ухода за кожей, дальше надо будет сделать хорошую причёску, копить деньги на аксессуары (надеюсь, что накоплю на что-нибудь умное и полезное, а не просто чтобы производить впечатление). Как только изменения в стиле дойдут до определённой точки, придётся ещё идти наращивать мышцы.

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

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

## Физфак и матфак

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

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

## Делимся расписаниями

Не так давно мы с одним товарищем по переписке решили провести эксперимент по взаимной синхронизации своих расписаний, написанных в org-mode. Так как товарищ не понимает по-русски, я перевёл файл с расписанием на английский и теперь пользуюсь org-mode почти полностью на английском.

Выводы:

- Старайтесь придерживаться какого-то одного часового пояса, потому что org-mode не умеет автоматически подстраивать файл с чужими часовыми поясами под местное время. У нас, кстати, так не вышло, потому что мой партнёр пользуется UTC, а я - местным временем
- Если у вас большие расписания, либо взаимной синхронизацией пользуются несколько человек, то содержимое org-agenda разрастается. Поэтому лучше выбрать отображение календаря (Agenda) по 1 дню или по 1 неделе. Лично мне всегда было удобнее отображать 2-недельное расписание, но не в этом случае
- Пришлось разделить всё на несколько org-файлов: жизненные цели, расписание по учёбе, краткосрочные планы + дневник, заметки. Раньше я пользовался на постоянной основе только первыми двумя

## Cron в Python'e, но зачем?

Недавно выяснил, что есть одна прекрасная Python-библиотека под названием [Schedule]( https://pypi.org/project/schedule/ ), которая позволяет реализовать планировщик по типу Cron, но только для запуска внутренней функции. Можно задать периодичность выполнения какой-то внутренней процедуры, оставить скрипт включённым, и процедура сработает в нужное время. Полезно для создания мониторинг-ботов, работающих в реальном времени.

Лично я рекомендую использовать его в связке с библиотекой [Timeloop]( https://pypi.org/project/timeloop/ ), которая запускает отдельный поток и ставит функцию на регулярное срабатывание. Будете писать какого-нибудь телеграм-бота с longpoll-процессингом - скажете спасибо.

И пример, куда же без него:

import schedule
from timeloop import Timeloop

schedule.every().day.at("21:00").do(wakeup_notify, "Одно уведомление")
schedule.every().sunday.at("9:00").do(wakeup_notify, "Другое уведомление")

tl = Timeloop()
@tl.job(interval=datetime.timedelta(seconds=60))
def process_timings():
    schedule.run_pending()

tl.start(block=False)

while True:
    bot.polling() # бесконечный цикл вашего бота

## Рекомендации по софту, неплохо бы закинуть

Иногда люблю советовать здесь в блоге интересный софт. В этот раз порекомендую программу для симуляции задачи N тел - [Симулятор физики частиц]( https://f-droid.org/packages/com.tss.android ). А порекламирую я её, потому что она появилась в F-Droid и имеет интересную графику. В данной программе можно создать звёздную систему, в центре которой будет звезда или чёрная дыра определённой массы и другие тела, которые (изначально) вращаются вокруг неё. А дальше можно посмотреть эволюцию системы и даже повлиять на неё в реальном времени, добавляя лишние тела и гравитацию.

https://ii-net.tk/ii/ii-point.php?q=/f/f/alicorn.blog/X92LvKkYsB0pu4gJj4iB

Ещё среди приложений для физиков-любителей в F-Droid есть программа [phyphox]( https://f-droid.org/packages/de.rwth_aachen.phyphox ), которая позволяет получать доступ к датчикам смартфона вроде магнитометра или гироскопа и снимать с них сырые данные для последующего изучения и проведения опытов. Думаю, для многих она будет даже более интересна, чем предыдущая, потому что о наличии некоторых интересных датчиков в своих смартфонах многие люди даже не догадываются.

## Продолжение следует

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

Этот пост в блоге: https://blog.alicorn.tk/posts/sunny-september.html

[#] Re: Солнечный сентябрь
boscholeg(ping,5) — vit01
2020-09-28 10:48:06


Про дурку и жертв тяжкой учебы я неоднократно слышал в приложении к Химфаку МГУ. Думаю, что подобное возможно в любом серьезном ВУЗЕ и истоии про такое есть там. Бывают студенты балбесы и лодыри, а бывают наоборот трудоголики без тормозов. Вторые часто слетают с нарезки. Тут важно, чтобы близкие приглядывали и друзья товарищи тоже не закрывали глаза на это.

[#] Re: Солнечный сентябрь
vit01(mira, 1) — boscholeg
2020-09-30 16:27:58


boscholeg> Бывают студенты балбесы и лодыри, а бывают наоборот трудоголики без тормозов. Вторые часто слетают с нарезки.

Из трудоголиков только 1 человека знаю. Остальные "полетели" по личным причинам, с учёбой не связанными совсем

+++ Отправлено через IDEC Mobile
+++ GNU/Linux, Android, physics, MLP:FIM