Естественные науки

Алгоритм нахождения солнца (азимута достаточно) по местоположению наблюдателя (широта, долгота) и по времени

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

В общем если сгодятся примерные расчёты, то можно склонение считать по простому синусу от дня года (стартуя с дня весеннего равноденствия, и с амплитудой 23.4 градуса), а уравнение времени - просто аппроксимировать полиномом подходящей степени. Затем полученный пояс аналемм закрутить вокруг наблюдателя в соответствии с его широтой и долготой, ну и часовой пояс учесть - кратно 15-градусному повороту. Всё это есть в моём скрипте, который использовался для видоса про ход солнца: https://www.youtube.com/watch?v=dMoLUIpsE7s

Ну а тут можно посмотреть как этот скрипт работает в московских аналеммах на фоне памятника Гагарину: http://pikabu.ru/story/analemmyi_na_fone_pamyatnika_gagarinu_4794113

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

Если нужны более точные расчёты, тогда надо точку зенита солнца считать по более навороченным формулам, в которые я и сам не вдавался - тупо скопировал из какой-то либы и использовал в своей прожке Day-night.
ВИ
Владислав Иванов
66 653
Лучший ответ
)I(Ahaxmet{Off} Hypsyjitah спасибо всем, код готовый я уже смог запилить на cpp, залил на arm контроллер.. работает хорошо, высчитываю с точностью до 1000-ых, сам проект делается для оптимизации поиска солнца у солнечных панелей.
)I(Ahaxmet{Off} Hypsyjitah за общую инфу отдельное спасибо, понадобиться при презентации проекта
Нереально.
Shayda Berdanova
Shayda Berdanova
74 751
)I(Ahaxmet{Off} Hypsyjitah лол, я такое делал уже, только либо с кастомными либами питоновскими, либо со сложными непонятными готовыми скриптами (но они работали)) ...сейчас просто хочу сам такое написать от начала до конца с пониманием
Вот прям щаз лень, но совет смогу. Открываешь исходный текст онлайн калькулятора и тыришь оттуда формулку. Она тривиальная
Саъди Рахмонов
Саъди Рахмонов
74 018
)I(Ahaxmet{Off} Hypsyjitah пробовал)) но из-за большого кол-ва информации в коде путался и в конченом итоге ничего не выходило
https://ru.wikipedia.org/wiki/Естественные_науки_геодезия_азимут -азимут-это угол, между направлением на север и на какой-либо предмет.
Sergey Vasilyevich
Sergey Vasilyevich
64 384
Только азимут, значит.
Тебе нужны долгота, UTC (время и день года).
https://ru.wikipedia.org/wiki/Уравнение_времени
Вроде, этого достаточно.

Алгоритм сам пиши, вроде, он простой, но мне лениво.
Светлана Старостина А лучше сверяй стыренный с тем, что прочитаешь в Вике, вдруг сойдется.
Тогда и "понимание" придет.
Светлана Старостина Ну и широта тоже нужна.
Небо вокруг Полярной вращается, не вокруг зенита. И угол между Солнцем и Полярной меняется в течение года.
Ю&
Юрий <Yrik>
5 520
старая программа расчета направления на спутники, находящиеся на ГСО - Satellite Antenna Alignment - тебе в помощь! ))) там есть и ориентирование по солнышку!
учебник по астрономии 11 класса возьми, можно электронный учебник, в разделе "Практическая астрономия", параграф называется примерно "Измерение времени. Определение географической широты и долготы", а то тут формулы нормально писать не получается
EE
Erbolat Erejep
602
Только азимут, значит.
Тебе нужны долгота, UTC (время и день года).
https://ru.wikipedia.org/wiki/Уравнение_времени
Вроде, этого достаточно.
азимут
учебник по астрономии 11 класса возьми, можно электронный учебник, в разделе "Практическая астрономия", параграф называется примерно "Измерение времени. Определение географической широты и долготы", а то тут формулы нормально писать не получается
Student Institut
Student Institut
87

Похожие вопросы